Инструменты, с которыми вы работаете, оказывают большое влияние на то, что вы можете достичь, и чем более изощренные инструменты, тем лучше — особенно в программном обеспечении. Моя компания, Beagle Research, только что завершила исследование по использованию стратегии DevOps на платформе Salesforce Lightning, спонсируемой поставщиком решений DevOps Copado.
DevOps — это стратегия для создания, изменения и развертывания корпоративного программного обеспечения, которое можно использовать с методологией Scrum или Agile, а также с другими. DevOps не просто концентрируется на коде и кодировании, но и рассматривает культуру и инфраструктуру в ее самом широком проявлении.
Даже если вы никогда не создавали системы, вы можете предположить, что планирование, разработка, оценка, тестирование и развертывание программного обеспечения являются важными вехами, и они часто распространяются на технические отделы ИТ, такие как разработка и эксплуатация, отсюда и название .
Сравнение стратегий корпоративного программного обеспечения может быть затруднительным. Например, использование локального аппаратного и программного стека было обычным явлением на протяжении десятилетий, но с развитием облачных вычислений пользователи обнаружили, что они могут избавиться от необходимости заботиться о значительной части своих сред разработки, оставляя все это поставщику облачных услуг. .
Как вы сравниваете накладные расходы и затраты между облачной и локальной средой? Как это влияет на скорость выхода на рынок, надежность, безопасность? Чтобы контролировать некоторые переменные и позволить нам сравнивать яблоки с яблоками, мы решили исследовать только компании, разрабатывающие и обслуживающие системы с использованием Salesforce Lightning и стратегии DevOps.
Содержание статьи
Ценность для большинства
Размер компаний варьировался от менее 100 сотрудников до более 10000. Были аналогичные показатели для количества пользователей Salesforce и количества разработчиков, а также количества производственных организаций. Две трети, или 67 процентов, заявили, что работают от двух до семи производственных организаций. Большинство респондентов были руководителями высшего звена (48 процентов) или высшим руководством (40 процентов).
Мы обнаружили, что DevOps приносит пользу большинству своих пользователей, хотя у крупных организаций возникают более серьезные проблемы — подробнее об этом в данный момент. Семнадцать процентов заявили, что от использования стратегии DevOps выиграли более 5 миллионов долларов США.
Эти люди хорошо понимают, что гибкость программного обеспечения способствует гибкости бизнеса. Впечатляет, что 54 процента сказали, что их время для внесения изменений в их организации Salesforce составляло от одного дня до одной недели. Сравните это с более традиционным процессом, который обычно занимает недели или месяцы.
Мы также определили элитную группу, которая работает еще быстрее — 21% сказали, что их время для внесения изменений было меньше суток, а 8% заявили, что это заняло менее часа. Взятые вместе, 83 процента могут вносить изменения в неделю или меньше.
В других недавних исследованиях, в которых я принимал участие, доставка работающего, протестированного и развертываемого кода была намного медленнее. Очевидно, что если бизнес зависит от его способности быстро вносить изменения в соответствии с меняющимися требованиями рынка, это именно то место, где вы хотите быть.
С другой стороны
Как и следовало ожидать, преимущества стратегии DevOps не были распределены равномерно среди всех пользователей. В целом, малые предприятия с небольшими группами разработчиков в целом добились большего успеха в создании программ DevOps и в превосходстве в них.
Наиболее успешными компаниями, использующими DevOps, были те, которые использовали хорошо интегрированный набор инструментов для перехода от разработки и развертывания. Многие организации, особенно небольшие, использовали комбинацию собственных разработанных и открытых инструментов управления. В лучшем случае, разнообразие инструментов подсказывало мне, что некоторые лучшие практики все еще разрабатываются.
Даже при использовании Salesforce Lightning и подхода DevOps у вас все еще могут быть проблемы. Почти каждый имел опыт развертывания релиза в производственной организации и снижения качества обслуживания.
Множество респондентов — 43 процента — сказали, что проблема возникала до 15 процентов времени. Однако подавляющее большинство — 86 процентов — заявили, что ухудшение качества обслуживания происходило менее чем в половине случаев.
Это важный снимок состояния отрасли. Скорость доставки немного превышает стабильность релизов, что указывает на необходимость согласования двух показателей.
Некоторые соображения передового опыта
Подавляющее большинство — 60 процентов — заявили, что у каждого разработчика в бизнесе была частная среда разработки.
Кроме того, 77 процентов сказали, что они использовали контроль версий для хранения кода и настроек Salesforce на основе кликов.
Большинство из них синхронизировали свои среды разработки с последними изменениями от других команд: 41% делали это по требованию или не чаще одного раза в день, а 42% заявляли, что они делали это между раз в день и один раз в неделю.
Семьдесят пять процентов сказали, что изменения, внесенные в контроль версий, вызвали автоматические тесты.
Восемьдесят семь процентов выразили уверенность, что после прохождения автоматических тестов программное обеспечение будет готово к выпуску. Тем не менее, метаанализ данных убедительно свидетельствует о том, что чем больше уверенность команды в своих тестах, тем выше частота их неудачных изменений.
Скептики, которые были нейтральны в этом вопросе, имели на 40 процентов меньшую частоту отказов, чем те, кто выразил уверенность в своих тестах.
Хорошо быть скептиком.
Некоторый анализ
Привлекательность цифрового разрушения, в частности, заключается в способности изменить бизнес-процесс, чтобы воспользоваться преимуществами меняющихся рыночных условий. Многие предприятия уже имеют такой опыт.
Большие данные и аналитика говорят нам о том, что требует внимания, но тогда нам все еще нужно изменить поведение наших систем. Гибкое программное обеспечение способствует гибкости бизнеса, и это хорошо, но эта скорость и гибкость должны быть сбалансированы безопасностью и тем, что я могу назвать только «пуленепробиваемостью» нового или измененного кода.
Предприятия, наиболее способные пожинать плоды DevOps, как правило, меньше, хотя у крупных предприятий есть свои точки хвастовства. В то время как крупные компании уже видят преимущества от стратегии DevOps, они имеют наибольший потенциал, чтобы делать больше. Что их сдерживает?
В любой организации размер порождает сложность, которая вызывает трения в бизнесе. У нас нет всех данных, чтобы сказать это однозначно, но кажется, что у больших организаций есть больше стен, чтобы сломаться.
Мне кажется, инструменты разработки довольно хороши. Недостаточно предприятий имеют хорошо интегрированные пакеты управления, чтобы справиться со сложностью, и это также похоже на то, что культура формирует дымоходы, что приводит к менее звездной производительности.
Если это так, то еще предстоит проделать определенную культурную работу по улучшению коммуникации внутри и между группами разработчиков и бизнесом. Инструменты DevOps могут быть большой частью этой помощи, но, как и в случае с психиатром, пытающимся заменить лампочку, лампочка все еще должна захотеть поменяться.
Мнения, выраженные в этой статье, принадлежат автору и не обязательно отражают точку зрения новостной сети ECT.