3.86M
Category: programmingprogramming

Scrum. Agile

1.

Управление программными
проектами
Scrum & Agile: Философия гибкой разработки

2.

Agenda (План лекции)
● Проблемы традиционных подходов: "Водопад"
● Предшественники Agile: XP, DSDM, FDD
● Манифест Agile и 12 принципов
● Scrum как фреймворк для воплощения Agile
● Три столпа, роли и суть Scrum

3.

Waterfall vs Agile

4.

Проблема "Водопада" (Waterfall)
● Жесткая последовательность этапов
● Требования "заморожены" в начале проекта
● Результат виден только в конце
● Главный риск: Потрачены время и деньги, а продукт не
актуален

5.

Исторический контекст: 1990-е годы - поиск новых путей
● Мир и технологии меняются слишком быстро
● "Водопад" не успевает за изменениями
● Появляются "легкие" (lightweight) методики

6.

Предшественники Agile: XP
Extreme Programming (XP)
● Акцент на технические практики:

Парное программирование

Непрерывная интеграция

Разработка через тестирование (TDD)

Частые релизы

7.

Предшественники Agile: DSDM & FDD
● DSDM (Dynamic Systems Development Method):

Фокус на бизнес-потребности

Непрерывное участие пользователя

Фиксированные сроки и бюджет, гибкость в функциональности
● FDD (Feature-Driven Development):

Фокус на функциональность (Features)

Короткие циклы проектирования и реализации

Структура для больших команд

8.

Рождение Agile
● Встреча 17 гуру
разработки
● Цель: найти общее
в "легких"
методиках
● Результат:
Манифест гибкой
разработки ПО

9.

Что важнее для успеха проекта?
● Вопрос 1:

А: Процессы и инструменты

Б: Люди и взаимодействие
● Вопрос 2:

А: Следование контракту

Б: Сотрудничество с заказчиком

10.

Четыре ценности Agile Manifesto
1. Люди и взаимодействие > процессов и инструментов
2. Работающий продукт > исчерпывающей документации
3. Сотрудничество с заказчиком > согласования условий
контракта
4. Готовность к изменениям > следования плану
Правое важно, но левое важнее.

11.

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

12.

Ключевые принципы Agile
● Непосредственное общение — самый эффективный способ
обмена информацией.
● Лучшие архитектуры и проекты рождаются в
самоорганизующихся командах.
Резюме: Agile — это философия ("ЧТО делать?").

13.

Как съесть слона?
Как спланировать разработку большого приложения?
1. На что разбить работу?
2. Как часто показывать результат заказчику?
3. Что должно входить в каждую "часть"?

14.

Scrum — это каркас
Scrum — это "КАК" делать в рамках Agile.
● Определение: Фреймворк для решения сложных адаптивных
задач и создания продуктов максимальной ценности.
● Аналогия:

Agile — философия здорового питания

Scrum — конкретная диета (например, "средиземноморская")

15.

Три столпа Scrum
1. Прозрачность: Все видят
процесс и понимают его
одинаково.
2. Инспекция: Регулярная
проверка прогресса и
артефактов.
3. Адаптация: Быстрая
корректировка процесса при
отклонениях.

16.

Роли в Scrum
● Владелец Продукта (Product Owner):

Представляет интересы заказчика.

Отвечает на вопрос "ЧТО делать?".

Формирует список требований.
● Scrum-мастер (Scrum Master):

Лидер-служитель.

Следит за процессом, устраняет препятствия.
● Команда разработки (Development Team):

Самоорганизующаяся, перекрестно-функциональная (продуктовая).

Отвечает на вопрос "КАК сделать?".

17.

Итеративная природа Scrum: Спринты
Спринт — фиксированный
по времени цикл (1-4
недели).
В начале спринта
команда берет задачи
из бэклога.
В конце спринта —
готовый, потенциально
готовый к выпуску
инкремент продукта.

18.

Резюме
Проблема: "Водопад" негибок.
Решение: Философия Agile (ценности и принципы).
Инструмент: Фреймворк Scrum (столпы, роли, спринты).
Результат: Возможность адаптироваться к изменениям и быстро
поставлять ценность.

19.

Домашнее задание
1. Создать диаграмму Ганта (см. прошлую лекцию) для Use
Cases, которые были созданы на прошлой практической
работе.
2. Прикрепить к эпику разработки, который создали на прошлой
практической работе в своем проекте taiga.
3. Прикрепить к дз в журнале ссылку на проект.

20.

Пример диаграммы Ганта
English     Русский Rules