Автор статьи: Дмитрий Курдюмов

Участвовал в Аджайл-трансформациях в крупнейших компаниях в России (Альфа банк, МТС, Х5 retail group)

DevOps представляет собой методологию разработки программного обеспечения, которая объединяет разработки (Development) и операции (Operations) для повышения взаимодействия между командами. Основная цель DevOps заключается в сокращении времени цикла разработки, увеличении частоты релизов и улучшении качества продукта. Это достигается за счет автоматизации процессов, непрерывной интеграции, доставки и мониторинга.

В данной статье мы рассмотрим инструменты и философию DevOps из Scaled Agile Framework. Это фреймворк масштабирования Agile в компании, который объясняет как объединить большое количество команд и построить с одной стороны предсказуемую разработку, а с другой стороны сохранить гибкость.

Принципы CALMR

Одной из основ DevOps в SAFe являются принципы CALMR:

  1. Culture (Культура): Формирование культуры сотрудничества и обмена знаниями между командами. Важно создавать среду, где члены команды доверяют друг другу, активно обмениваются знаниями и опытом, а также работают совместно для достижения общих целей.

  2. Automation (Автоматизация): Автоматизация процессов, таких как тестирование, развертывание и мониторинг, для сокращения ручной работы и уменьшения числа ошибок. Это позволяет ускорить процесс доставки, повысить его надежность и обеспечить постоянную готовность к изменениям.

  3. Lean Flow (Бережливый поток): Оптимизация процессов для минимизации задержек и увеличения скорости поставки. Включает управление потоком задач и устранение узких мест, что позволяет доставлять ценность пользователю как можно быстрее.

  4. Measurement (Измерение): Постоянное измерение и анализ данных для улучшения процессов. Включает мониторинг ключевых показателей эффективности (KPI) и использование данных для принятия обоснованных решений.

  5. Recovery (Восстановление): Быстрое восстановление и реагирование на инциденты. Включает разработку планов восстановления, регулярное проведение тестов и обеспечение готовности к восстановлению после сбоев.

Основные Домены Практик DevOps

DevOps включает несколько ключевых доменов практик, которые способствуют эффективной разработке и доставке программного обеспечения.

Рис. 1. Домены практик DevOps в SAFe
Рис. 1. Домены практик DevOps в SAFe

Continuous Exploration (Непрерывное Исследование)

Continuous Exploration (CE) включает в себя процесс постоянного изучения потребностей клиентов и разработку новых идей. Это помогает организациям быстро адаптироваться к изменениям на рынке и удовлетворять потребности пользователей.

  1. Гипотезы и Исследования: Определение и проверка гипотез о потребностях клиентов.

  2. Архитектура и Синтез: Разработка архитектурных решений и синтез идей для создания новых функций.

Continuous Integration (Непрерывная Интеграция)

Continuous Integration (CI) включает в себя процесс постоянной интеграции кода и автоматизации тестирования. Это позволяет командам быстро находить и устранять ошибки, обеспечивая высокое качество продукта.

  1. Разработка и Сборка: Постоянная интеграция кода и автоматизация сборки.

  2. Тестирование и Валидация: Автоматизация тестирования для обеспечения качества кода.

Continuous Deployment (Непрерывное Развертывание)

Continuous Deployment (CD) включает в себя автоматизацию развертывания и мониторинг работы приложения. Это позволяет командам быстро и надежно развертывать изменения в продакшн.

  1. Развертывание и Мониторинг: Автоматизация развертывания и мониторинг работы приложения.

Release on Demand (Релиз по Требованию)

Release on Demand (RoD) включает в себя процесс стабилизации и измерения производительности системы, а также быструю реакцию на изменения и выпуск обновлений по мере необходимости.

  1. Стабилизация и Измерение: Постоянное измерение производительности и стабильности системы.

  2. Релиз и Реагирование: Быстрая реакция на изменения и выпуск обновлений.

SAFe DevOps Health Radar

SAFe DevOps Health Radar — это инструмент для оценки зрелости DevOps в вашей компании. Он помогает определить текущий уровень зрелости и эффективности DevOps практик в организации. Радар включает четыре ключевых области:

  • Continuous Exploration (Непрерывное исследование): Оценка способности команды генерировать и развивать новые идеи.

  • Continuous Integration (Непрерывная интеграция): Оценка эффективности процессов интеграции и тестирования.

  • Continuous Deployment (Непрерывное развертывание): Оценка способности команды автоматизировать и управлять развертыванием.

  • Release on Demand (Релиз по требованию): Оценка способности команды быстро и безопасно выпускать обновления по мере необходимости.

Радар позволяет командам самооценить свои процессы по пятибалльной шкале, что помогает выявить слабые места и наметить пути для улучшения.

Рис. 2. Радар оценки зрелости DevOps из SAFe
Рис. 2. Радар оценки зрелости DevOps из SAFe

Зрелость DevOps в Компании

Оценка зрелости DevOps в компании важна для понимания текущего состояния процессов и определения направлений для улучшения. Важно учитывать следующие аспекты:

  1. Культура и Командное Взаимодействие: Насколько команды готовы к сотрудничеству и обмену знаниями. Команды должны иметь общее понимание целей и быть готовыми к открытому взаимодействию.

  2. Автоматизация и Инструменты: Уровень автоматизации процессов и используемые инструменты. Высокий уровень автоматизации позволяет сократить время выполнения задач и снизить риск ошибок.

  3. Процессы и Практики: Насколько хорошо отлажены и стандартизированы процессы. Стандартизированные процессы обеспечивают предсказуемость и стабильность работы.

  4. Мониторинг и Анализ: Наличие систем мониторинга и анализа данных для принятия решений. Мониторинг позволяет оперативно выявлять и устранять проблемы, а анализ данных помогает улучшать процессы.

Заключение

DevOps — это не просто набор практик, а философия и подход к разработке программного обеспечения, направленный на повышение эффективности и качества. Использование принципов CALMR, внедрение практик из основных доменов DevOps и оценка зрелости с помощью инструментов, таких как SAFe DevOps Health Radar, помогут вашей компании достигнуть новых высот в разработке и доставке программного обеспечения.

Если понравилась статья — подписывайтесь на мой телеграм канал, чтобы узнать больше о построении гибких процессов разработки продукта.

Также приходите на бесплатные открытые уроки, которые пройдут в преддверии старта курса "Product Manager IT‑проектов":

  • 11 июня, «Как составить продуктовую стратегию?». Разберем шаги и инструменты, необходимые для эффективного создания стратегии, которая будет успешно вести продукт к его целям и удовлетворять потребности пользователей. Запись по ссылке

  • 19 июня, «Как генерировать продуктовые гипотезы и что это такое?». Изучим методики формулировки и первичной проверки гипотез; рассмотрим примеры простых гипотез и способы получения обратной связи. Запись по ссылке

Комментарии (2)


  1. petejones83
    12.06.2024 04:06
    +1

    Как измерить эффективность DevOps в компании

    Так как измерить-то?


    1. agileguru
      12.06.2024 04:06

      «Радар позволяет командам самооценить свои процессы по пятибалльной шкале, что помогает выявить слабые места и наметить пути для улучшения.»

      Посмотрите SAFe DevOps радар.