Close

История DevOps

Как команды по разработке и эксплуатации объединились для решения проблем в отрасли.

Фотография: Иэн Бьюкэнэн
Иэн Бьюкэнэн

Главный разработчик решений


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

Объединение разработчиков и ИТ-команд


Движение DevOps начало формироваться в 2007–2008 годах, когда сообщества специалистов по ИТ-операциям и разработчиков программного обеспечения заговорили о серьезнейших проблемах в отрасли.

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

У разработчиков и специалистов по ИТ-операциям были разные и зачастую конкурирующие цели, собственные руководители подразделений и ключевые показатели производительности, по которым оценивалась их работа. Их рабочие места часто находились на разных этажах и даже в разных зданиях. Эти разобщенные команды волновали только их собственные интересы, что приводило к сверхурочной работе, сорванным релизам и недовольству клиентов. Но, как говорится, все можно изменить. Поэтому два сообщества объединились и начали переговоры. Возглавили их Патрик Дюбуа, Джин Ким и Джон Уиллис.

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

Логотип: организация работы команды
Связанные материалы

Развитие культуры DevOps

Логотип: награда
Связанные материалы

Подробнее о преимуществах DevOps

Вы используете методики agile для планирования и разработки, но по-прежнему сталкиваетесь с проблемами при выпуске кода? Возможно, вы кое-что слышали о DevOps и его почти волшебном действии на команды. По данным опроса, проведенного компанией Atlassian¹ среди 500 специалистов по DevOps, почти все (99 %) команды DevOps уверены в успехе своего кода, передаваемого в рабочую среду.

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

За рамками Agile


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

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

Непрерывная интеграция и поставка являются краеугольным камнем методики DevOps, основанным на автоматизации слияния и развертывания кода. При традиционных методах разработки инженеры должны вручную обновлять изменения в базе кода и выполнять дополнительные ручные проверки, чтобы гарантировать качество кода и его готовность к поставке в рабочую среду. Развертывания планируются с задержками на несколько недель или месяцев, чтобы исключить вероятность возникновения багов или инцидентов. С помощью методов DevOps эти задержки можно устранить путем автоматизации функций слияния, тестирования и развертывания. Эффективные команды используют CI/CD, чтобы увеличить частоту развертывания с одного раза в несколько месяцев до нескольких раз в день. Подробнее о CI/CD.

Репозитории Git и рабочие процессы позволяют внедрить автоматизацию и контроль версий, лежащие в основе методов DevOps. Система Git является распределенной, поэтому операции вроде commit, blame, diff, merge и log выполняются быстрее. Git также поддерживает ветвление, слияние и переписывание истории репозитория. Эти функции открывают возможности для эффективных рабочих процессов и инструментов. Подробнее о Git.

Управление ИТ-услугами — это процесс управления комплексной поставкой ИТ-услуг клиентам среди ИТ-команд. Он охватывает все процессы и действия по проектированию, созданию, поставке и поддержке ИТ-услуг. Основной принцип ITSM заключается в том, что ИТ следует предоставлять как услугу, выходящую за рамки базовой ИТ-поддержки. Команды ITSM заведуют всеми видами технических средств на рабочих местах, от ноутбуков и серверов до критически важных приложений. Подробнее об ITSM.

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

Состояние DevOps


Организации и команды продолжают внедрять методы и инструменты DevOps. По результатам опроса 500 специалистов по DevOps, проведенного компанией Atlassian, 50 % организаций используют DevOps более трех лет.

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

Ian Buchanan
Ian Buchanan

Иэн Бьюкенен занимает должность главного разработчика решений для DevOps в компании Atlassian; сфера его интересов — развивающееся сообщество DevOps и совершенствование непрерывной интеграции и непрерывной поставки с помощью Jira, Bitbucket и Bamboo. У Иэна большой опыт разработки на Java и .NET, но гораздо больше он известен как специалист по применению agile-методик и бережливого подхода в крупных корпорациях.

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


Поделитесь этой статьей
Следующая тема

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

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

Рисунок: DevOps

Сообщество DevOps

Рисунок: DevOps

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

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

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

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

Thank you for signing up