Единое применение двух методик
Давайте сразу проясним: разные компании используют разные подходы к реализации своїх идей и продвижению готового продукта. В этом им помогают давно работающие методики, такие как Agile или новоиспеченный DevOps.
Конечно, в общих чертах, все они нацелены на повышение качества управления ит компанией, но мало кто вникает в детали. Считается, что Agile помогает организовать работу в команде, а DevOps – внедряет непрерывный процесс в разработку ПО.
Однако, можно переставить местами эти определения и это будет тоже верно. Итак, мы попытаемся объяснить, как две одновременно идентичные и отличающиеся друг от друга методики могут быть задействованы в управление ИТ услугами.
Материал будет представлен в двух частях.
Начнем с простого. А именно, с основных проблем, с которыми сталкиваются менеджеры, пытаясь внедрить обе методики:
- Agile последователи привыкли сокращать количество процессов, когда в DevOps все выстраивается именно за счет них.
- DevOps помогает эффективно использовать инструкции/инструменты для автоматизации процессов. Но Agile методика подразумевает исключение подобных инструкций.
- DevOps – это последовательное и системное решение проблемы. Agile – это прогресс за счет креатива команды.
- Если коллектив собран из людей, которых можно разбить на две группы последователей различных методик, то их внедрение очень затрудняется.
Как и в любом процессе, для эффективного менеджмента ит проектов необходим лидер. Он может направлять работу в нужное русло, извлекая все самые сильные стороны своей команды, пытаясь нивелировать недостатки.
Вот несколько проблем управления коллективом, с которыми сталкивается лидер в связи с внедрением двух методик:
- Вражда между группами из-за недопонимания и отсутствия веры в пользу той или иной методики.
- Если в коллективе уже есть люди, которые долгое время работали по одной методике, то им будет крайне тяжело сосуществовать.
- Внедрение DevOps подразумевает масштабные изменения в процессе работы и налаживание жесткого контроля, из-за чего у коллектива может появиться страх перед нововведениями. С помощью Agile все делается постепенно.
- Для многих разработчиков DevOps – это лишь временная необходимость, которая является лишь переходным этапом к полной автоматизации. Так появился термин NoOps, который ошибочно принимается за конечную цель.
Помимо урегулирования конфликтов внутри коллектива лидеру придется иметь дело с производственными процессами, которые далеко не всегда могут существовать один с другим.
Так, полная автоматизация невозможна в определенных вещах, поэтому сами процессы тоже нуждаются во внимании. Если же проигнорировать хотя бы один из них, то велика вероятность появления следующих проблем:
- Низкое качество продукта из-за неправильной организации процессов, таких как ручного тестирования.
- Отсутствие конечного результата из-за слишком большого количества комплексных процессов.
- Отсутствие наглядного применения того или иного процесса на практике из-за их сложности.
- Частые изменения состава в коллективе из-за непонятных процессов менеджмента.
- Комплексные процессы могут скрывать в себе еще несколько не очевидных процессов, которые проявят себя лишь после внедрения и усложнят работу.
Как одновременно использовать Scrum и DevOps
Идеал в построении корпоративного управления ИТ каждого менеджера – это налаживание бесперебойной работы всех процессов, их беспрепятственное взаимодействие, а также мотивированный коллектив с пониманием всех ценностей компании.
На самом деле, таких результатов добиваются уже многие малые ИТ-компании, которые внедряют Scrum методику. Выделенные команды по этому направлению разрабатывают ПО, вторая команда занимается эксплуатацией, а последняя следит за безопасностью и качеством продукта. Все занимаются своим делом. Такие разные по специализации команды значительно ускоряют разработку.
Однако, определенных сотрудников можно задействовать в работе и в других отделах. Все зависит от их кросс-функциональности и способности к адаптации. Если соблюдать правильный баланс, то можно достичь следующих результатов:
- Сокращение задач, перебрасываемых между группами.
- Развитие определенных ценностей в группе за счет нового и высоко авторитетного специалиста, что повышает эффективность и качество работы.
- Повышение уровня автоматизации в процессах тестирования, интеграции и подготовки продукта.
DevOps и Scrum можно использовать, если исправить некоторые ошибки
В первую очередь, речь идет о тех. поддержке, которая зачастую не может справиться с непрерывным потоком обращений как со стороны клиентов, так и со стороны своей команды. Последователи Agile методики чаще сталкиваются с этой проблемой, чем остальные.
Главная цель – перейти на систему самообслуживания. Это не только улучшает управления ИТ компанией, но и повышает уровень гибкости команды. Но перейти к такому этапу достаточно сложно, если в компании работает сложное приложение с налаженными годами взаимосвязями. Поэтому, все нужно делать постепенно.
Итак, чтобы улучшить взаимодействие, нужно учесть следующие аспекты:
- Наделите команду соответствующими полномочиями для самостоятельного и полноценного релиза.
- Автоматизируйте процесс, отказываясь от зависимостей извне. Речь идет о том же процессе самообслуживания.
- Не заставляйте свою команду обращаться за нужными им вещами, проходя через очередь (тех.поддержка) или определенное время отклика.
- Постепенно разбивайте сложные приложения на модули, чтобы упростить процессы разработки и тестирования готового продукта.
Автоматизация процессов
Основная идея DevOps заключается именно во внедрении автоматизации во все процессы разработки ПО. Это помогает наладить непрерывную поставку конечного продукта, избавиться от ошибок, появляющихся в результате воздействия человеческого фактора, а также улучшить качество работы в целом.
Для начала, нужно проанализировать имеющиеся процессы в компании. Эффективное управление ИТ услугами подразумевает избавление от ненужных задач. В этом могут помочь следующие идеи:
- Переходите от сложных процессов к простым
- Анализируйте процесс, двигаясь к его середине с разных этапов: с начала и с конца.
- Внедряйте новые автоматизированные процессы постепенно, чтобы анализировать их эффективность и вовремя устранять ошибки.
Как задействовать профессионалов в процесс разработки
Профессионалы не только могут делиться опытом с коллегами или управлять малыми группами, но и гарантируют высокое качество конечного продукта.
Лидер должен поощрять работу таких специалистов и помогать им улучшать качество работы. Сделать это можно с помощью нескольких шагов:
Внедряйте практику наставничества, чтобы воспитывать культуру ценностей в команде.
Делайте акцент именно на командах, не выделяя конкретных личностей. Это помогает стимулировать эффективное взаимодействие. Поощрять нужно исключительно за весомые заслуги. Поощрение за факт наличия занятости – это не лучшая практика.
Воспитывайте ценности в коллективе, ставя их в один ряд с важностью достижения конечного результата.
Профессиональный менеджер с 11-и летним опытом управления ИТ проектами поможет поднять эффективность работы сотрудников применяя современные методики управления.
About The Author
Виктор