Close

Принципы DevOps

Чтобы полностью реализовать потенциал DevOps, команды должны следовать основным принципам DevOps


DevOps — это не просто совместная работа команд по разработке и эксплуатации. Это не только инструменты и практики. DevOps — это образ мышления, а также изменения в культуре, при которых команда меняет стиль работы.

Знак бесконечности Atlassian DevOps

Культура DevOps сближает разработчиков с пользователями, помогает лучше понять их требования и нужды. Команды по эксплуатации участвуют в процессе разработки: они определяют требования к техническому обслуживанию и формулируют потребности клиентов. Это означает, что соблюдаются следующие основные принципы, которые позволяют командам DevOps быстрее поставлять приложения и услуги более высокого качества по сравнению с организациями, использующими традиционную модель разработки ПО.


Совместная работа

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

Участники команды DevOps несут ответственность за качество всех аспектов продукта. Это приводит к комплексной разработке, когда команды полностью отвечают за разработку как клиентской, так и серверной части продукта или возможности. Команды остаются владельцами проекта или возможности на протяжении всего жизненного цикла — от идеи до поставки. Такое активное участие и вовлеченность команды повышают качество результатов.

Автоматизация

В рамках DevOps необходимо максимально автоматизировать жизненный цикл разработки ПО. В этом случае у разработчиков остается больше времени на написание кода и разработку новых возможностей. Автоматизация является основным элементом конвейера CI/CD; она позволяет снизить влияние человеческого фактора и повысить производительность команды. Благодаря автоматизации процессов команды добиваются непрерывного совершенствования с помощью быстрых итераций, что позволяет быстро реагировать на отзывы клиентов.

Непрерывное совершенствование

Непрерывное совершенствование представляет собой основу методик agile, бережливого производства и модели «Ката совершенствования». Это практика, согласно которой основное внимание уделяется экспериментам и сокращению потерь, а также оптимизации скорости, затрат и удобства поставки. Непрерывное совершенствование также связано с непрерывной поставкой, что позволяет командам DevOps отправлять обновления на постоянной основе, повышая эффективность программных систем. Когда у команды налажен непрерывный конвейер новых релизов, ее участники постоянно отправляют изменения кода для устранения потерь, повышения эффективности разработки и поставки клиентам более качественного продукта.

Ориентация на клиента

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

Создание продуктов с учетом конечной цели

Этот принцип предполагает анализ потребностей клиентов и создание продуктов и услуг для решения реальных проблем. Команды не должны «творить в вакууме» или создавать ПО на основании своих предположений о том, как клиенты будут его использовать. Напротив, командам DevOps нужно иметь целостное представление о продукте, от его создания до внедрения.

Кавычка

DevOps — это задача не для одного человека. Это задача для всех сотрудников.

Кристоф Кэйпел
Старший менеджер по продукту Jira Service Management

Логотип Chef.io

Кто использует DevOps?

Chef — компания, разработавшая платформу Chef Automate для рабочих процессов DevOps. Десятки тысяч разработчиков используют решения Chef для тестирования, автоматизации и управления инфраструктурой. Эта австралийская компания с головным офисом в Сиэтле возглавляет эволюционное движение DevOps. Она выпустила такие продукты, как Chef, InSpec, Habitat и Chef Automate, предоставляющие новые возможности для разработки и выпуска программного обеспечения и приложений. Для проведения экспериментов и совершенствования собственных методов DevOps компания Chef выбрала платформу Atlassian.

История DevOps


Движение DevOps возникло примерно в 2007 году, когда сообщества ИТ-специалистов и разработчиков программного обеспечения заговорили о проблемах в традиционной модели разработки ПО. Методики agile широко применялись командами разработчиков, в том числе и для повышения эффективности совместной работы, однако разработчики, занятые написанием кода, зачастую действовали отдельно от команды по эксплуатации, которая занималась поддержкой кода в рабочей среде. Это снижало эффективность процессов и препятствовало совместной работе двух разобщенных команд.

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

Преимущества DevOps


Преимущества DevOps можно разделить на три категории: технические, культурные и преимущества для бизнеса. К техническим преимуществам относится снижение сложности, непрерывная поставка и ускоренное решение проблем. Специалисты по DevOps обычно развертывают более качественный код и делают это быстрее, чем традиционные разобщенные команды.

Говоря о культурных улучшениях, можно упомянуть более производительную и эффективную работу команд и повышение удовлетворенности клиентов. А выгода с точки зрения бизнеса проявляется в более тесном сотрудничестве и укреплении доверия между участниками команды. Это приводит к ускорению поставки и создает стабильные условия эксплуатации.

Культура DevOps


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

Разработчик DevOps


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

Инженер DevOps — это ИТ-специалист общего профиля с обширными знаниями в области повседневной разработки и эксплуатации ПО, управления облачной инфраструктурой, системного администрирования и автоматизации.

Постоянно работающие сервисы


Customers expect and demand always-on, always available services. DevOps is well suited to supporting “always-on” software, or software as a service. It reinforces the cycle of continuous deployment, feedback, and maintenance or incident response that teams need to keep always-on services, always on.


Следующая тема

Рекомендуемые статьи

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

Рисунок: DevOps

Сообщество DevOps

Рисунок: DevOps

Семинар по моделированию

Рисунок схемы

Начните работу бесплатно

Подпишитесь на информационную рассылку по DevOps

Thank you for signing up