Профессия DevOps
До DevOps программное обеспечение традиционно разрабатывалось командой инженеров, а затем передавалось в отдельную IT-группу, которая занималась управлением выпусками. Поскольку это были две отдельные группы внутри организации, эти переходы требовали времени и не всегда были такими плавными, как могли бы.
Объединив обе команды под одной крышей и координируя усилия на протяжении всего процесса, организации DevOps могут выпускать программное обеспечение быстрее, что особенно важно в средах непрерывной интеграции и непрерывного развертывания, одновременно извлекая выгоду из более раннего и более частого сотрудничества между разработкой программного обеспечения и IT-операциями.
Более важная, чем фактическая организационная структура, DevOps основана на наборе принципов, которые обеспечивают эффективный и действенный переход от кодирования к выпуску готового продукта для клиентов. Цель состоит в том, чтобы максимизировать пропускную способность и расширить ценность гибких методологий за пределы этапа разработки продукта.
Почему был создан DevOps?
DevOps – это естественное продолжение духа Agile – более короткие и быстрые циклы разработки, которые используют обратную связь для влияния на будущее развитие. Эти принципы требуют новых функций и изменений, чтобы быстро выйти на рынок в качестве средства ускорения цикла обратной связи. Отдельная организация, работающая над упаковкой и выпуском программного обеспечения с использованием собственных политик и процедур, замедляет этот процесс, поэтому объединение усилий сокращает время между завершением проекта и передачей его в руки заказчика.
Каковы преимущества DevOps?
Ускорение вывода на рынок продуктов – главный плюс DevOps, но тесное сотрудничество между разработчиками и операциями имеет и другие преимущества.
Слияние двух различных организаций создает более синергетическую среду с улучшенными коммуникациями. Это приводит к более инновационному решению проблем и меньшему количеству проблем, возникающих на более поздних этапах процесса, чем при отсутствии видимости и диалога между этими сторонами.
Эта гибридная организация также четко владеет процессом непрерывной разработки и выпуска программного обеспечения, что может привести к дополнительным улучшениям и повышению эффективности, поскольку не возникает вопросов, кто несет ответственность за различные вопросы. А с целью повышения эффективности улучшается не только качество, но и автоматизация модульного тестирования, упаковки, выпуска программного обеспечения, а также сбора и анализа отзывов клиентов.
Принципы DevOps
DevOps – это глобальное мышление с учетом конечного результата. Он убирает все, что напоминает менталитет «брось через стену, это чужая проблема». Организация объединена вокруг общей цели и разделяет ответственность за быстрое предоставление качественной продукции, поэтому больший упор делается на влияние на клиента и успех, а не на выполнение индивидуальной работы в вакууме.
Вовлечение персонала по тестированию и эксплуатации на более раннем этапе процесса (в некоторых кругах это называется «Shift Left») может значительно сократить количество проблем, которые могут вызвать простои или иным образом негативно повлиять на производительность. Включая этот опыт, пока программное обеспечение все еще находится в разработке, потенциально проблемные элементы могут быть обнаружены и устранены до того, как они достигнут QA или производственной среды, где средства правовой защиты могут потребовать больше времени для внедрения.
Автоматизация является ключом к любому эффективному процессу, но DevOps выводит это на новый уровень, максимально автоматизируя, чтобы обеспечить быстрые и плавные выпуски для конечных пользователей. От самой разработки программного обеспечения до тестирования, упаковки и выпуска – автоматизация улучшает качество и сокращает время, затрачиваемое на повторяющиеся задачи.
Метрики, измерения и отзывы о продукте иногда могут быть второстепенными в традиционной организации, занимающейся разработкой продуктов, но с DevOps инструменты появляются гораздо раньше и используются в процессе тестирования. Сюрпризы и подводные камни обнаруживаются раньше, в то время как команды могут быть уверены, что их крючки для сбора, агрегирования и анализа данных готовы и работают задолго до того, как продукт попадет в руки покупателя.
Команды DevOps также ценят IТ-образные наборы навыков; они хотят, чтобы сотрудники обладали широким пониманием всего процесса, а также глубокими знаниями в определенной области. Понимание потребностей и обязанностей тех, кто находится выше и ниже по потоку в вашей собственной области, создает лучшее сотрудничество и более творческое решение проблем, чем разрозненный подход.
Всего комментариев: 0