DevOps (Development Operations) — методика программной разработки, подразумевающая тесное взаимодействие разработчиков (developers, создание продукта) со специалистами сервисных IT-подразделений (operations, эксплуатация продукта). Чаще всего девопс-команды работают в режиме Continuous Integration, Continuous Delivery и Continuous Deployment (CI/CD) — непрерывная интеграция, доставка и развёртывание. Прикладные программы, используемые в такой работе, должны обладать возможностью развертывания, изменяемостью, тестируемостью, возможностью мониторинга.
Основные (но не всегда обязательные) этапы разработки:
- code — написание и анализ кода, контроль версий и слияний кода;
- build — непрерывная интеграция и сборка;
- test — непрерывное тестирование, дача обратной связи;
- пакет — предварительная инсталляция, формирование репозитория артефактов;
- release — официальное утверждение релиза, автоматизация выпуска, управление изменениями;
- конфигурация — управление инфраструктурой как инструментом кода;
- мониторинг — анализ производительности приложений, отслеживание UX.
Преимущества:
- ускоренный выход продукта на рынок;
- уменьшение количества выпусков неудачных обновлений, рост качества релизов;
- оперативные исправления;
- оперативное восстановление (в случае сбоя новых версий или иного отключения системы).