— Зависимость от самоорганизации команды — для эффективной работы требуется высокий уровень самодисциплины и самоорганизации всех участников команды, что не всегда легко достижимо.
— Необходимость активного участия владельца продукта — эффективность фреймворка падает, если владелец продукта не уделяет достаточно времени исполнению своей роли.
— Сложность масштабирования — несмотря на существование фреймворков, таких как SAFe, Scrum сложно использовать в больших компаниях или проектах.
— Планирование Спринта — команда выбирает задачи из Бэклога Продукта для включения в Спринт, определяет цель спринта, планирует работу.
— Ежедневные Scrum встречи — короткое собрание участников команды для обсуждения текущего прогресса и планирования работы на следующий день.
— Обзор Спринта — встреча для демонстрации достигнутых за спринт результатов всем заинтересованным сторонам с целью получить обратную связь.
— Ретроспектива Спринта — мероприятие, на котором проводят анализ работы команды в течение спринта, для выявления возможностей улучшения процесса и решения проблем.
6.2.8. Kanban
Kanban — это гибкая методология управления проектами, основанная на эффективном и прозрачном контроле потоков работы. Для этого в основе методологии используют Kanban — доску, как визуализацию стадий реализации задач. Kanban делает упор на оптимизации производительности команды, когда не требуются радикальные изменения в процессах.
— Визуализация работы — с помощью Kanban — доски легко отследить фазы разработки по каждой задаче и понять прогресс команды.
— Ограничение параллельной работы — методология устанавливает ограничения на количество задач, которые могут выполнять члены команды одновременно в каждой фазе процесса, что предотвращает перегрузку и ускоряет выполнение работы.
— Гибкость — позволяется вносить изменения в процессе разработки.
— Непрерывное улучшение — регулярный анализ и оценка потока работы позволяет его улучшить.
— Улучшение прозрачности — любой участник команды легко видит статусы всех задач и понимает общее состояние проекта.
— Более быстрая доставка — ограничение количества задач в работе помогает сократить время разработки и быстрее доставлять результаты.
— Гибкость в планировании — задачи можно легко переприоритезировть в соответствии с изменяющимися требованиями.
— Уменьшение потерь — методология сфокусирована на сокращении любых потерь. Как следствие продукт непрерывно поставляют пользователю и минимизируют время любых простоев в команде.
— Зависимость от самодисциплины команды — методология эффективна только если четко соблюдають ее правила, что зависит исключительно от дисциплины участников команды.
— Может потребоваться время на адаптацию — работа в этой методологии предполагает бесконечный поток задач, что отличается от подходов, использующих итерации при разработке продукта.
— Не всегда идеально подходит для сложных проектов — в случае, когда между задачами есть большое количество зависимостей, методология может оказаться недостаточно структурированной.
— Определение рабочего процесса — команда определяет колонки для своей доски Kanban, отражающие этапы рабочего процесса.
— Настройка WIP — лимитов — для каждой фазы рабочего процесса устанавливают ограничения на количество задач, которые могут быть в ней одновременно.
— Работа с доской Kanban — задачи добавляют на доску в виде карточек и перемещают между колонками в соответствии с их выполнением.
— Мониторинг и оптимизация — команда регулярно анализирует поток работы и производительность процесса, оптимизируя его для достижения лучших результатов.
6.2.9. Lean Software Development
Lean Software Development — это методология, в которой делают акцент на максимизации ценности для клиента при минимизации затрат, любых активностей, не добавляющих ценности продукту, улучшении потока работы и поощрении инноваций. Методология предназначена для создания высококачественного программного обеспечения с максимальной эффективностью при сокращении отходов и повышении удовлетворенности клиента.
— Устранение отходов — идентификация и удаление всего, что не добавляет ценности продукту. Например избыточные функции, ненужные встречи, сложные процессы.
— Увеличение скорости и эффективности — непрерывное улучшение процессов для снижения затрат и ускорения разработки.
— Раннее решение проблем — поощряется раннее выявление проблем для их решения и предотвращения повторения.
— Гибкость и адаптация к изменениям — поощряются изменения требований для того, чтобы повысить ценность для клиента.
— Решения, основанные на знаниях — решения принимают, основываясь не на предпочтениях или предположениях, а на глубоком понимании задачи и контекста.