Методология Agile/Scrum базируется на наборе принципов, позволяющих реализовывать проекты в жёстко фиксированные и небольшие по времени этапы, называемые спринтами (sprints).
Суть Agile/Scrum-подхода, который применяется при разработке и внедрении программных продуктов, можно коротко обозначить так:
- В рамках объема проекта формируется список всех требований (Product Backlog), которые нужно сделать. Все требования описаны по единому шаблону и отсортированы по приоритетам
- Разработка ведется короткими циклами (спринтами), продолжительностью от 1-й до 4-х недель. Для каждого спринта четко определяется список задач (Sprint Backlog), которые обязательно должны быть выполнены к концу спринта
- В процессе выполнения задач спринта команда проводит регулярные встречи для уточнения статуса выполнения задач и разработки необходимых корректировок, что отвечает главному принципу Agile - гибкости подхода. Изменения в проекте приветствуются и быстро включаются в работу
- По завершению каждого спринта команда обязана провести демонстрацию полученного результат (Sprint Review). Ценность Scrum-подхода для Заказчика во многом состоит в том, что результат работ будет продемонстрирован в любом случае. Это позволит снять неопределенность в требованиях и проверить, как с программным продуктом будут работать реальные пользователи в бизнесе
- После демонстрации полученного результата команда выполняет внутреннее обсуждение для обмена опытом, определения способов повышения эффективности
- Команда разработки сотрудничает с Заказчиком в ходе всего проекта. В конце каждого спринта Заказчик получает программный продукт (или его часть), который можно использовать в бизнесе