Найти тему
evilUnion

Методы управления проектами в IT. Waterfall или SCRUM?

Оглавление

Существуют два наиболее популярных подхода в разработке: Waterfall и SCRUM. В чем разница и почему их два?

Это отрывок из курса – "
База IT для бизнеса за час"

Waterfall — каскадная модель

Это самый простой, популярный и устаревший подход в разработке. Он хорошо подходит для простых проектов и совсем не подходит для сложных. У него есть всего одно достоинство: вы сразу знаете, сколько будет стоить проект. Недостаток этого подхода заключается в том, что проект, скорее всего, потребует значительных доработок в будущем.

Чаще всего компании, используя такой метод, сталкиваются именно с этим недостатком — заказанный проект не работает так, как им нужно. Связано это с тем, что очень тяжело описать необходимые потребности и невозможно учесть все тонкости, даже если вы до тошноты запишете каждый вдох.

Cо стороны разработчика всегда сложно оценить, сколько займет разработка и какие трудности могут возникнуть в процессе. Также в процессе знакомства с результатами может появиться понимание того, что задумка должна была быть другой.

В ней существует следующий порядок:

  1. Определение требований
  2. Проектирование
  3. Конструирование (также «реализация», либо «кодирование»)
  4. Воплощение
  5. Тестирование и отладка (также «верификация»)
  6. Инсталляция
  7. Поддержка

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

SCRUM

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

История пользователя (User Story)

Все потребности клиента записываются через истории. История имеет следующую структуру:

«Будучи пользователем <тип пользователя>, я хочу сделать <действие>, чтобы получить <результат>».

Такая структура удобна тем, что понятна как разработчикам, так и заказчикам. Все истории превращаются в задачи, которые потом разрабатываются командой.

Пример истории

«Будучи пользователем <Менеджер по продажам>, я хочу <выгрузить всех покупателей из магазина>, чтобы получить <excel-файл с их ФИО, телефоном и email>»

Спринт

Спринт — это небольшой отрезок времени, за который должны быть разработаны несколько историй. Он может длиться от 1 до 4 недель. В конце каждого спринта происходит демонстрация результата спринта заказчику. Таким образом заказчик может корректировать полученные результаты и изменять какие-то фрагменты по частям. Весь проект по методике SCRUM разделен на спринты.

Основные ритуалы

Планирования спринта

На этом совещании происходит выбор и оценка историй проекта. Каждую историю оценивают в абстрактной валюте. Обычно это пойнты, но может быть что угодно — собачки, котики или попугайчики. Разработчики голосуют карточками в закрытой форме, на сленге это мероприятие «покер». Полученная оценка записывается к истории. После реализации этой истории можно будет оценить производительность команды или разработчика. Это очень важная информация для будущего спринта, которая позволяет лучше планировать следующие действия.

Демо-день

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

Дейли, или Стендап

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

Ретроспектива

Цель ретроспективного совещания — выработка предложений по совершенствованию процесса. Участники проекта анонимно описывают на карточках проблемы и хорошие стороны работы над проектом. После все карточки открываются и обсуждаются.

Более подробную информацию можно найти тут: