Скорость вывода новых ИТ-решений на рынок — один из главных критериев успешного импортозамещения. В том числе поэтому в ИТ-среде большое распространение получил DevOps-подход — он в буквальном смысле помогает поставить разработку на поток. ИТ-конвейер представляет собой набор инструментов и методологию, которые ускоряют процесс и снижают расход ресурсов. В данной статье мы расскажем о преимуществах ИТ-фабрики.
Когда бизнесу необходим ИТ-конвейер
В настоящее время достаточно сложно представить себе ИТ-разработку без автоматических средств для сборки кода, проверки его качества или анализа на уязвимости. Сегодня такие инструменты входят в минимальный необходимый набор для выпуска ПО. Особенно актуальны они, когда в компании сотни и тысячи разработчиков работают одновременно над различными проектами. Такой подход позволяет снизить показатель time-to-market, сократить стоимость разработки и повысить качество программного продукта и, как следствие, — добиться более высоких финансовых результатов.
Конвейер разработки будет особенно полезен в тех случаях, когда:
- осуществляется параллельная разработка нескольких продуктов, в том числе сложных высоконагруженных систем;
- в компании действуют повышенные требования к кибербезопасности, или она находится в зоне особого регулирования;
- разработка сопряжена с частыми релизами и большим количеством изменений;
- у бизнеса есть высокая потребность в стандартизации производства ПО.
В зависимости от сложности операционных процессов и уровня развития компании набор инструментов, входящих в конвейер разработки, может меняться. В крупных компаниях со сложными процессами и высокими стандартами безопасности требования к разрабатываемому ПО более жесткие, поэтому инструментов понадобится больше. Для малого и среднего бизнеса конфигурация конвейера может быть проще и содержать базовые модули, такие как хранение и версионирование (контроль версий) кода, инструменты оркестрации и сборки, а также проверки качества кода.
Чтобы выбрать элементы конвейера, необходимо предварительно провести аудит существующих процессов, уже используемых сервисов и целей, которые бизнес рассчитывает достигнуть.
Что дает внедрение ИТ-конвейера
Измерение эффективности новых инструментов зависит от уровня зрелости компании и процессов в ней, а также культуры разработки и качества используемых средств. Однако есть мировые бенчмарки:
- Amazon после перехода на микросервисную архитектуру и DevOps-практики смог проводить изменения в продуктах каждые 11,7 с.
- Netflix активно использует DevOps и автоматизацию для обеспечения высокой надежности и масштабируемости своей платформы. Это позволило компании быстро адаптироваться к изменяющимся требованиям рынка и обеспечивать высокое качество обслуживания.
Ключевые преимущества, которые получает бизнес при внедрении ИТ-конвейера:
- уменьшается время на сборку и тестирование;
- развертывание происходит быстрее;
- сокращаются время простоя и частота отказов.
Если сравнить компании до внедрения конвейера разработки и после — при условии, что процессы претерпели изменения, люди прошли обучение и приобрели навыки работы в новых условиях и с новыми инструментами, — результаты впечатляют. Однако крайне важно определить цель внедрения и критерии в понятных для бизнеса метриках.
Какие инструменты включает конвейер
Поскольку конвейер подразумевает внедрение целого набора практик и инструментов, выделить важные или второстепенные элементы невозможно. Например, без методологии сложно достичь максимально возможного эффекта. Однако, если сфокусироваться исключительно на инженерных инструментах, можно выделить следующие модули конвейера:
- система контроля версий;
- инструменты непрерывной интеграции и доставки;
- сервисы контейнеризации и оркестрации;
- различные инструменты для поиска уязвимостей: динамический и статический анализаторы, инструменты проверки лицензий;
- инструменты тестирования;
- управление конфигурациями;
- управление зависимостями и репозиториями.
Их использование позволяет автоматизировать различные этапы разработки: от написания кода до его развертывания в промышленной среде. Это значительно повышает эффективность и качество работы всей ИТ-команды.
При этом важно учитывать: чем сложнее конвейер, тем дороже он обходится компании. Поэтому при выборе платформы для производства ПО стоит отталкиваться от запросов бизнеса и производства и рационально подходить к затратам. Не стоит гнаться за максимальной функциональностью конвейера: важнее не количество инструментов, а то, насколько они удовлетворяют требованиям бизнесам, например, по показателям производительности.
Повышает ли конвейер безопасность разработки и продукта
Большое внимание бизнес уделяет вопросу безопасности. Как показывает исследование Russia DevOps Report 2023, проведенное платформой «Сфера», 36% российских компаний отмечают увеличение количества киберрисков как с точки зрения ужесточения регуляторных требований, так и при усилении хакерских атак. Более всего киберугрозами озабочены небольшие и средние команды разработки с числом участников до 1000 человек, — среди них каждая вторая указывает на рост «показателя страха». Эксперты видят решение проблемы в автоматизации поиска уязвимостей и внедрении инструментов, выявляющих их на всех этапах разработки и развертывания ПО, на более ранних этапах.
Конвейер предоставляет команде различные ИБ-инструменты: статический и динамический анализаторы, системы проверки лицензий и open-source-компонентов. Они автоматически ищут уязвимости в написанном коде и используемых библиотеках. Это снижает риски проникновения продукта с «дырами» в безопасности в промышленную эксплуатацию: если решение не соответствует всем необходимым критериям, модули конвейера просто не дадут его собрать и отправить в продакшн при условии, что подобные практики и настройки пайплайнов имеют место в компании.
На пороге зрелости
Российские конвейеры эволюционируют: в ближайшие годы в процессах сборки и проверки кода для повышения производительности инструментов чаще будет использоваться искусственный интеллект. Тем не менее, ключевой задачей компаний-разработчиков останется наращивание функциональности.
В целом отечественную ИТ-индустрию ждет рост числа вендоров, которые предоставляют зрелые конвейеры — уже сейчас мы это наблюдаем. В результате у ИТ-специалистов появится широкий выбор инструментов разного уровня и возможность автоматизации большей части своей работы.