О гибких методологиях управления, объединенных общим словом agile, заговорили в начале 2010-х годов. Что примечательно, они характеризовались не просто как инновационные решения, но как решения, которые уже доказали свою эффективность на практике. Тем не менее, к 2017 году в бизнес-среде сформировались достаточно противоречивые мнения об этих методиках.
В данной статье мы кратко расскажем об agile и ее составляющих, а также попробуем найти ответ на вопрос – всегда ли ее применение оправдано.
Общие принципы
Итак, под agile-методами понимается набор практик, которые отвечают нескольким главным принципам:
- ориентация на результат деятельности (продукт);
- постоянное формирование требований и уточнений;
- самостоятельность специалистов.
Для организации работы компании в соответствии с данными положениями, был разработан agile-манифест. Он представляет собой 12 правил, самые важные из которых – следующие:
- В центре внимания – интересы заказчика и возможности продукта.
- Наиболее эффективные решения предлагают самоорганизующиеся рабочие группы.
- Документация должна быть формальностью, не препятствующей постоянному совершенствованию.
- Стейкходеры разных уровней должны находиться в постоянном взаимодействии и прочее.
Если говорить проще, компания стремится создать продукт, как можно более точно соответствующий ожиданиям заказчика, при этом сотрудники готовы в любой момент переделать все до основания.
Методика разработки scrum
Как мы сказали, agile – это методология, то есть некий общий подход к решению вопросов. В рамках нее существует несколько методов, наиболее популярная из которых – scrum. Этим английским словом обозначается схватка в регби, когда результат матча напрямую зависит от отлаженного взаимодействия игроков.
У методики scrum также есть свои принципы, однако большее внимание стоит уделить структуре и процессам. Во-первых, она предполагает особое распределение ролей.
- Владелец продукта. Это либо сам заказчик, либо представляющее его лицо. На нем лежит ответственность за формирование общего видения продукта, требований к нему и оценку результата.
- Скрам-мастер. Представитель команды разработки, который также должен принимать в ней активное участие. Он координирует и стимулирует группу, следит за соблюдением требований и решает возникающие проблемы.
- Команда. К ней предъявляется ряд требований:
- небольшой размер (до 10 человек);
- кросс-функциональность (нет разделения на «отделы» по специальностям);
- профессионализм;
- заинтересованность в результате (команда должна иметь мотивацию работать качественно);
- расположение в непосредственной близости (те, кто работает над одной задачей, должны находиться в одном помещении).
На первом этапе scrum-разработки формируется бэклог – перечень функциональных характеристик продукта в соответствии с видением, представленным владельцем. Далее работа разбивается на спринты – отрезки времени, которые чередуются с итерациями. На каждой из встреч участники рассказывают, каковы результаты последнего спринта, какие задачи решить не удалось и как это можно исправить.
Итоги внедрения agile
Гибкие методы пришли из IT-проектов, но там не задержались. Сегодня agile применяется в сфере пассажирских перевозок, банковских услуг и даже в работе органов государственной власти.
Однако, пока кто-то успешно применяет инновационные методики, другие компании становятся их жертвами. К чему может привести agile?
- Вопреки ожиданиям, собранные вместе сотрудники могут начать бездельничать.
- Установление общего, не индивидуального графика приводит к неизбежным отставаниям по срокам.
- Выдвинутое на первый план мнение заказчика может «ударить» по функциональности продукта.
- Работникам просто непривычно и некомфортно работать в постоянных обсуждениях.
И, наконец, финальный вопрос – почему опыт внедрения не всегда положителен? Есть мнение, что решающим фактором является масштаб бизнеса, и в среде малых компаний agile приживается более успешно. Но куда, в таком случае, подевать примеры Сбербанка, Uber и Google?
С нашей точки зрения, наиболее значимым является этап организации команды.
- Гибкому управлению подчиняется команда профессионалов – специалистов высокого уровня, которые хорошо разбираются в своей работе.
- Участники scrum-команды должны быть мотивированы. Мотивация – те причины, которые заставят стремиться к результату не только мастера или владельца продукта, но и каждого разработчика.