Ваша заявка получена!
Наш менеджер вскоре свяжется с Вами!

Напишите письмо
команде Rubedite

Я бы хотел поговорить о...
Размер файла слишком большой
Главная Блог Все что вам нужно знать о Scrum за 6 минут

Все что вам нужно знать о Scrum за 6 минут

Что такое гибкая методология разработки (Agile)?

Гибкая методология – система, разработанная в ответ на проблему позднего выпуска и превышения бюджета при разработке программного обеспечения. Пожалуй, самая известная поучительная история случилась с Microsoft: Windows 95 выпустили поздно. Windows 2000 выпустили поздно. Windows Vista тоже был выпущен с серьёзным опозданием. Все эти проекты использовали традиционную каскадную систему управления разработкой (метод «водопада»), которую разделяют на несколько этапов:


  • Планирование
  • Дизайн
  • Разработка
  • Тестирование
  • Выпуск

У каскадного метода долгая и выдающаяся история, но он плохо подходит для информационной эры, в которой программы очень быстро устаревают и должны постоянно развиваться. Сейчас, Microsoft активно пользуются Agile-методами. Причина этому – Agile перевернул все предыдущие подходы с ног на голову (или хотя бы на бок).

image1.png

(источник: pinterest.ru)

График: Каскадная модель против методологии Agile 

Гибкая методология поощряет постепенное наращивание программы, а не полный выпуск её в конце разработки. Этот рисунок демонстрирует главную разницу между каскадной моделью и методологией Agile. Именно этот постепенный стиль разработки привёл к тому, что сейчас Agile-методами пользуется большинство проектов разработки программного обеспечения – каскадный метод сейчас использует менее 10% проектов индустрии.

На Agile можно смотреть, как на ведущую философию разработки проекта, а на Scrum – как на систему правил и элементов, которой ежедневно пользуются на практике.


Как работает Scrum?

По методологии Scrum, каждый проект разбивается на небольшие кусочки, которые организовываются по приоритету и выполняются в краткие рывки под названием «спринты». Scrum («схватка») и спринт? Всё верно – это основано на игре в регби.

Одна из причин популярности системы Scrum – методы, которыми она справляется с переменами и комплексными проектами. Рабочий процесс системы устроен, как его организовываем мы сами, когда у нас много работы и мало времени:

1. Журнал пожеланий 

Напишите список всех необходимых к реализации пунктов функциональности программы. В Scrum эти пункты часто называют «пользовательские истории» – они описывают пользователя программы, на которого нацелена функциональность, что они хотят сделать и зачем.

2. Оценка историй

Всем пользовательским историям присваивают оценку, в зависимости от ожидаемой сложности. Часто оценивают по шкале размеров футболок (S, M, L, XL), квадратам двойки (1, 2, 4, 8), или по ряду Фибоначчи (1, 2, 3, 5, 8, и т.д.). В Rubedite мы предпочитаем ряд Фибоначчи – мы даже написали краткую статью по поводу того, почему он полезен для разработки программного обеспечения.

3. Чистка беклога

После этого истории в журнале сортируются по приоритету клиентом или владельцем продукта в зависимости от важности для бизнеса. Истории, находящиеся сверху в журнале, необходимо конкретно определить, чтобы начать их реализовывать. Низкоприоритетные истории в нижней части журнала сейчас менее важно разрабатывать.

4. Спринты

Когда истории в журнале подготовлены, команда Scrum может определить, какую подгруппу историй они могут реализовать за небольшой период времени. Эти истории выделяют в спринт, на который команда обращает всё своё внимание на его продолжительность.

Большинство Scrum мастеров рекомендуют спринты длиной в одну-две недели. Мы обычно организовываем спринты длиной в две недели, частично из-за расходов, связанных с новым релизом. Двухнедельное расписание в два раза уменьшает время разработки и выпуска проекта. Если же в проекте существует хорошо развитое автоматическое тестирование и выпуск, то релизы можно проводить чаще без значительных расходов.

Продолжительность спринта может отличаться. Наиболее предпочтительная продолжительность зависит от ряда факторов, в том числе от опыта вашего scrum-мастера, требований клиента и численности команды. Вот некоторые рекомендации, которые помогут вам принять взвешенное решение относительно длительности спринта:

  • Не забывайте, что основное преимущество Scrum – быстрое получение обратной связи для улучшения продукта и процесса работы. Краткие спринты помогают быстрее получить обратную связь.
  • Высокопродуктивные команды часто лучше работают под давлением. Краткие спринты предоставляют это давление.
  • Результат каждого спринта – независимый, готовый к выпуску продукт. Если вы работаете в новой команде или работаете с большими целями, это может занять более 2х недель.
  • В конце спринта, у вас должна быть готова новая версия продукта. После этого, следующие по важности истории соединяют в новый спринт и процесс повторяется.

(источник: pixabay.com)


Почему Scrum настолько популярен?

1. Итеративная разработка

Scrum использует разработанный Эриком Рисом подход «минимального жизнеспособного продукта» - начинаем с созданием простого продукта, к которому постепенно добавляем функционал. В Scrum встроено ожидание того, что требования проекта поменяются – следовательно, в этом случае он гибкий. Эту систему можно поставить в контраст традиционным системам управления, которые боятся потенциальных расходов, связанных с переменами.

2. Многодисциплинарность

Scrum развивает многодисциплинарную культуру, в которой часто пересекаются роли членов проекта (поэтому он настолько популярен среди маленьких компаний и стартапов). Этот подход эффективен для уменьшения индивидуального эгоизма, и помогает людям лучше понять ценность чужих ролей.

3. Возможность изменения требований к продукту

Agile “приветствует перемену требований даже в поздней стадии разработки”. Такие идеи встроены в манифест Agile. Обратная связь клиентов после каждого спринта идеальна как для клиентов, которые могут наблюдать за процессом эволюции программы и говорить своё мнение, так и для разработчиков, которым предоставляется возможность реализовывать инновации без значительной траты времени или бюджета.

4. Повышение частоты и качества коммуникаций 

При итеративной разработке существует возможность учесть мнение клиентов во время процесса. При каскадной модели, недостаточная связь с клиентом может стать видной лишь при последней стадии тестирования продукта. В гибкой методологии разработки, проблемы можно заметить гораздо раньше при проверке отдельного спринта. Постоянное сотрудничество всех сторон – одна из причин, по которой Scrum рекомендован для дистанционных или децентрализованных команд, в которых коммуникабельность – важная часть процесса.

5. Прозрачность и ответственность

Agile построен на прозрачности и открытости, и Scrum следует этой идее, держа все цели и переговоры видимыми для всех. Прозрачность необходима для правильной работы спринтов, но также она помогает улучшить производительность членов команды. По опросу рабочих журналом Harvard Business Review 2013г., 70% сказали, что они больше всего заинтересованы в рабочих пространствах, которые развивают прозрачность.