DevOps представляет собой акроним от англ. development и operations — разработка и операции — и является методологией активного взаимодействия специалистов по разработке (программистов) со специалистами по информационно-технологическому обслуживанию (техническая поддержка, системные администраторы).
Ключевой идеей DevOps является взаимная интеграция рабочих процессов вышеописанных специалистов для повышения качества выпускаемого продукта. Обычно это программное обеспечение и/или услуги технической поддержки.
DevOps — сравнительно новая методология. Она возникла как ответ на потребность организаций-разработчиков ПО в быстром выпуске версий программных продуктов. Выход был найден в командной работе сотрудников, занимающихся разработкой, операциями и тестированием.
Инструменты DevOps
Поскольку DevOps является методологией, он не устанавливает универсального набора инструментов. Вместо этого мы имеем дело со стадиями, которые отражают ключевые аспекты разработки и доставки программного обеспечения. Каждой стадии соответствуют свои инструменты, выбор которых остаётся за DevOps-инженером.
Обычно выделяют следующие стадии:
- Написание кода. На этой стадии применяются инструменты контроля версий, анализа и слияния кода;
- Сборка. Инструменты непрерывной интеграции и проверки статуса сборки;
- Тестирование. Инструменты непрерывного тестирования;
- Упаковка. Инструменты упаковки и хранения ПО (репозитории);
- Релиз. Инструменты управления изменениями в программном обеспечении и автоматизации его выпуска;
- Настройка. Инструменты конфигурации и управления инфраструктурой;
- Мониторинг. Инструменты измерения производительности приложений и взаимодействия с пользователями;
- Доставка программного продукта. Инструменты доставки;
- Интеграция.
Преимущества использования DevOps
- Сокращение времени выпуска продукта/услуги;
- Снижение числа ошибок в программных продуктах;
- Повышение предсказуемости, эффективности и безопасности операционных процессов;
- Стандартизация среды разработки.
На текущий момент всё больше и больше организаций внедряют у себя практики DevOps. Большинство из них отмечают сокращение времени вывода продуктов на рынок, повышение удовлетворённости клиентов и улучшение качества продуктов. Несмотря на это, DevOps не следует рассматривать как панацею. Это полезный, но вспомогательный инструмент. Если продукт хорош — DevOps сделает его ещё лучше. Плохой продукт не станет «конфеткой» и после применения практик DevOps. Это можно сказать и о востребованности продукта. Можно сделать качественное ПО, можно оказывать качественную услугу, но не всегда это востребовано рынком. Если же фирма нашла свою нишу и делает хороший продукт или оказывает качественные услуги, тогда DevOps поможет упорядочить процессы внутри организации.
Статьи по теме: