Ответ
Agile — это философия и набор принципов гибкой разработки, описанных в Agile Manifesto. Scrum и Kanban — это конкретные фреймворки, реализующие Agile-подход, но с разной организацией работы.
Scrum — итеративный фреймворк с фиксированными временными интервалами (спринтами).
- Роли: Scrum Master, Product Owner, Development Team.
- Артефакты: Product Backlog, Sprint Backlog, Increment.
- События: Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective.
Kanban — фреймворк, фокусирующийся на визуализации потока работы и его непрерывном улучшении.
- Визуализация: Доска Kanban (столбцы To Do, In Progress, Done).
- Ограничение WIP: Устанавливается лимит задач на каждом этапе.
- Управление потоком: Измеряется время цикла (Cycle Time).
| Ключевые различия: | Критерий | Scrum | Kanban |
|---|---|---|---|
| Итерации | Фиксированные спринты | Непрерывный поток | |
| Роли | Чётко определены | Не требуются | |
| Изменения | Не приветствуются в ходе спринта | Могут вноситься в любое время | |
| Метрики | Скорость (Velocity) | Время цикла (Cycle Time) |
Пример комбинации (Scrumban): Использование доски Kanban внутри спринтов Scrum для лучшего контроля потока.
# Концептуальное представление
scrum_sprint = {
"duration": "2 недели",
"goal": "Реализовать авторизацию",
"backlog": ["Создать форму входа", "Настроить API токенов"]
}
kanban_board = {
"To Do (WIP=3)": ["Исправить баг #123"],
"In Progress (WIP=2)": ["Доработать дизайн"],
"Done": ["Написать документацию"]
}