SCRUM методология управления гибкой (Agile) разработкой ПО

Немного современного прожект менеджмента…

Если вы разрабатываете какой-либо программный проект, особенно многопользовательский, вы понимаете, насколько сложная задача — командное сопровождение и развитие работающего ПО. Без систематизации не обойтись.

Суть менеджмента проектов: Почему 9 беременных женщин не могут родить ребенка за 1 месяц?

Суть менеджмента проектов: Почему 9 беременных женщин не могут родить ребенка за 1 месяц?

Даже если вы не слышали про методику SCRUM или Agile, у вас точно есть список TODO, или список «хотелок пользователей«, список идей по развитию проекта. Такой список, ранжированный по приоритетам, является первой ступенью методологии SCRUM и подобных ей подходов быстрого и гибкого развития IT-проектов. Этот список в методологии называется «Бэклог проекта» (Project backlog) или «Пользовательские истории» (User stories).

И так, идеи по развитию проекта есть. А как же далее эффективно организовать разработку?  Брать по одной идее (фиче или багу) и реализовывать — это слишком прямолинейно и затратно. А если вы работаете с командой разработчиков, то рациональное управление командой становится сложной задачей. Чтобы проект развивался быстро и команда работала как единое целое, нужна систематизация управления проектом с использованием удобного и простого алгоритма и софта.

Сама по себе методология SCRUM — это описание действий членов команды, ведущее к быстрому итеративному достижению результата. Так сказать, роли и правила игроков, четко сформулированные, советую прочитать полную методологию SCRUM на Wikipedia. Это не займет много времени, но даст много идей по управлению персоналом и командой.

Сжатая суть методики SCRUMбесплатные онлайн-сервисы на мой вкус, активные на 2016 год):

  1. Собрать список идей пользователей — множество методов сбора feedback-а от пользователей. Пример — встраиваемый в сайт русский сервис Reformal.ru (пример списка пользовательских идей на основе моего проекта)
  2. Определить сложность реализации (в плановых часах) каждой задачи. Это можно делать командно и играючи: PlanningPoker.com (члены команды коллективно устанавливают сложность решения задач)
  3. Из текущих идей, выделить несколько самых перспективных, общее время реализации которых составит 2 недели (или 4 максимум). Этот получившийся блок выбранных доработок называется Спринт.
  4. Обсудить Спринт и начать его реализацию. Точно определить, какие должны быть результаты через 2 недели.
  5. Запустить Спринт. Проводить ежедневные утренние встречи (митинги) для определения текущего статуса, работы на день, препятствий к движению к цели. В митинге каждый член команды делится своим прогрессом. Ежедневные встречи являются ключем к самоорганизации команды, которая является самоцелью методики. Для удаленного общения «перед доской» удобно применять сервисы вроде: Scrumblr.ca  или инструменты совместного (collaborative) редактирования онлайн.
  6. После истечения срока, провести презентацию достигнутых результатов. Не взирая на недоработки, каждый член команды должен выполнить функционал и до конца оттестировать, продемонстрировать команде и руководителю.
  7. Закрыть выполненный Спринт, зафиксировать на будущее как проблемы и недоработки, так и хорошие решения.
  8. Подготовить следующую итерацию — новый Спринт, и так далее. В итоге приложение обновляется достаточно часто и стабильно.

Итоги: Много знакомых принципов, вроде утренних планерок, но методология в целом предлагает такие рамки и правила, проверенные временем, которые дают надежные и быстрые результаты. Самое главное такая систематизация помогают самоорганизовать продуктивную команду.

По пунктам 3-4 (определение идей и целей) важным замечанием является то, что каждая User story должна быть тщательно продумана: Какой должын быть результат после реализации фичи (это называется подробное описание тестов)? Если команда большая, то для тщательной проработки очередного Спринта, можно привлечь Аналитиков и Владельца проекта к проработке нового Спринта заранее, на этапе предыдущего Спринта.

Для организации всего процесса контроля команды по методологии SCRAM, есть несколько крупных готовых решений, в основном платных. Мне приглянулось вот это: ScrumDesk.com (бесплатно для 3-х человек). Более широкий список из 10 SCRAM сервисов.

Также, рекомендую популярное универсальное решение для коммуникации команды: Slack.com

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *