Написать нам
Категория: Кодирование
06.12.2019

Разница Между Scrum и Agile Методологии: Что Выбрать?

Scrum vs Agile являются гибкими методологиями, которые используются в управлении IT-проектами. Давайте же разберемся, какие понятия за каждым из них закреплены, какая между нами разница. Английская вресия статьи what is the difference between scrum and agile methodology.


Agile


Agile - философия основанная на ценностях и принципах, которые описаны в манифесте. Эта методология отличается гибкостью и полностью являются противоположностью тяжеловесной Waterfall. Agile имеет всего 4 ценности, суть которых заключается в следующем:



  1. Прямое общение людей важнее инструментов.

  2. Продукт, который реально функционирует важнее детальной спецификации.

  3. Прямое общение с клиентами важнее утряски условий контракта.

  4. Следовать изначальному плану бессмысленно, необходимо всем быть готовым к изменению хода событий и требований.


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


Scrum


Давайте же теперь подробно рассмотрим что есть в методологии Scrum. Под каждый проект, который будет идти по Scrum подбирается набор специалистов из разных областей (7-9 человек), к которой добавляются еще две роли: владелец продукта (PO) и Scrum-мастер. PO звено между командой и клиентом и оперирует Product Backlog-м, в котором Stories, Bugs, Task, расположенные по приоритету (highest, high, medium, low) и в целом наблюдает за ходом развития проекта. Scrum-мастер призван помогать организовать сам процесс разработки: назначает и проводит митинги, решает ежедневные проблемы, мотивирует команду и следит за тем, чтобы принципы Scrum соблюдались.


Первым и основным пунктом в процессах можно назвать то, что весь процесс делиться на равные промежутки времени – спринты, длительностью в среднем от 1 до 3 недель. Продолжительность итерации зависит от команды и сложности спринта. Перед началом спринта выносятся задачи на предстоящий спринт (Sprint Planning Meeting) на котором формируется backlog спринта, а по завершению спринта – анализируются результаты (Sprint Review). Спринты часто сравнивают между собой, с целью повышения эффективности работы (Retrospective).


Также во время спринта происходит еще один процесс - Daily Meeting, на котором команда обсуждает что сделала, что планирует делать и какие помехи могут их ожидать. Эффективность в Scrum измеряется временем за которое карточка из To do перешла в Done. Чем меньше тем лучше, если больше - то необходимо реагировать и принимать действия по оптимизации работы. Scrum хорошо подходит для управления самоорганизующейся команды разработчиков. Используя данную методологию воспитывается самостоятельность, ответственность. У каждого есть своя роль и свой пул работы.


Visual board


Для наглядности в гибких методологиях (Agile-фреймоврках) большую роль играют доски: настенные и онлайн. Пример доски джира в управлении проектами ниже. Оба типа дают возможность легко воспринимать информацию всем членам команды в целом, что крайне важно при отсутствии менеджера проекта который и вовсе не предусмотрен в данной философии). Существует несколько фреймворков, относящихся к классу Agile, которые помогают применить философию/теорию на практике. Фреймворк — набор правил, следование которым поможет настроить работу над проектом по принципам и ценностям Agile:



  1. XP

  2. DSDM

  3. FDD

  4. LEAN

  5. KANBAN

  6. SCRUM


Они бывают разной степени детальности. Ранее мы писали разницу между Kanban vs Scrum. Если говорить про Kanban, у него есть всего 6 правил, а в Scrum описаны роли, процессы и артефакты. А вот что общего у них всех – это метрика, а именно рабочий продукт. Также все фреймворки подразумевают под собой итеративный процесс веб разработки, где завершение каждой итерации это обновление требований от Заказчика и их реализацию посредством самоорганизующейся команды, в состав которой входят back-end и front-end разработчики, тестировщики, дизайнеры, верстальщики и другие.


Написать нам
Имя*:
Email*:
Сообщение: