Uploaded by donik.ganiev05

SCRUM

advertisement
Методология SCRUM
Методология гибкой разработки
программного обеспечения
Гибкая методология разработки (Agile)



Минимизация рисков, путем сведения
разработки к коротким циклам –
итерациям
Итерация – программный продукт в
миниатюре
Программный проект в конце итерации
Waterfall vs. Agile
The Agile Manifesto




Individuals and interactions over
processes and tools
Working software over comprehensive
documentation
Customer collaboration over contract
negotiation
Responding to change over following a plan
That is, while there is value in the items on the right,
we value the items on the left more.
Основа SCRUM




Методология гибкой разработки
Основа – итеративная разработка
Правила, по которым планируется и
управляется список требования к продукту
Итерация = планирование + фиксация +
реализация + анализ
SCRUM - концепция





Каркас, включающий набор практик и
предопределенных ролей
Самоорганизующаяся команда
Постоянное определение приоритетных
задач
Обратная связь по результатам итерации
Девиз SCRUM — «анализируй
и адаптируй»
SCRUM – иллюстрация
SCRUM роли



Product Owner – человек, отвечающий за
разработку продукта
Scrum Master – человек, отвечающий за
взаимодействие менеджмента и команды
Scrum Team – самоорганизующаяся и
самоуправляемая
Product Owner - обязанности







Отвечает за формирование product vision
Управляет ожиданиями заказчиков и всех
заинтересованных лиц
Координирует и приоритизирует Product backlog
Предоставляет понятные и тестируемые
требования команде
Взаимодействует с командой и заказчиком
Отвечает за приемку кода в конце каждой
итерации
Product Owner ставит задачи команде, но он не
вправе ставить задачи конкретному члену
проектной команды в течении спринта.
Scrum Master - обязанности






Создает атмосферу доверия,
Участвует в митингах в качестве фасилитатора
Устраняет препятствия
Делает проблемы и открытые вопросы видимыми
Отвечает за соблюдение практик и процесса в
команде
Скрам Мастер ведет Daily Scrum Meeting и
отслеживает прогресс команды при помощи
Sprint Backlog, отмечая статус всех задач в
спринте.
Scrum Team - обязанности








Отвечает за оценку элементов баклога
Принимает решение по дизайну и реализации
Разрабатывает софт и предоставляет его
заказчику
Отслеживает собственный прогресс (вместе со
Scrum Master)
Отвечает за результат перед Product Owner
Типичные размер команды - 7 плюс минус 2
Нет заранее определенных и поделенных ролей
Должна находиться в одном месте
Артефакты


Product Backlog - это
приоритезированный список имеющихся
на данный момент бизнес-требований и
технических требований к системе.
Sprint Backlog содержит
функциональность, выбранную Product
Owner из Product Backlog
Product backlog
Item Summaries
Total days
Sprint 1
Import verification dialog
Import status table
Import on server: write status to the database
Client: request to get current import progress
Server: request to get current import progress
Po-files encoding
Replace encodings combobox with utf8 checkbox
Remove encoding information from po-file
Other features
Remove no longer used strings from the product
Add log file
Http request to get po-file
Sprint 2
Show line ending symbols
In not editable fields (text in "Translate/Preview")
In editable fields (translation, text in "Manage products")
Deluxe import verification dialog
Server: request to get added/removed texts
Client: dialog to view added/remover texts
Investigate and optimize import
Make WebTranstool work faster (investigating)
Write export to old Transool format
Import faliure notice
Make WebTranstool work faster (implementation)
Orig. Est. Resp.
Hours of work remaining until completion
99
1 2
96 42
3
5
3
3
3
5
3
3
0
0
0
0
3
1
3
1
0
0
2
21
13
2
21
13
0
0
0
1
1
1
0
5
5
5
0
5
5
13
13
3
?
?
3 4 5
3 ## ##
5 5
5 5
13 13
13 13
0
0
0
0
?
?
3
?
?
?
?
Sprint backlog
Item Summaries
Начальная оценка
работы
Orig. Est. Act. Diff Resp. Status
Total hours
Import verification dialog
Import status table
Import on server: write status to the database
Client: request to get current import progress
Server: request to get current import progress
Roll back import on user request
Client: import progress and import result dialog
Send import event id to client
Users language restrictions
Add "powerful" field to the User table
Not powerul users - only their native language
Sort texts like they're sorted in the po-file
Add "order" field to Original_Text_Product table
Update "order" field when importing po-file
Sort texts by "order" when sending to client
Write script to update database
Po-files encoding
Replace encodings cb with utf8 checkbox
Remove encoding information from po-file
Оценка оставшейся
работы на текущее
число
Время, затраченное
на задачу
58
3
5
3
3
21
5
2
2
2
1
3
1
3
3
1
51
0
2
4
1
1
21
6
1
0
3
0
0
0
1
6
1
0
3
1
7
0
1
1
2
2
0
-1
1
0
-1
2
0
1
2
-5
2
0
0
0
Hours of work remaining until
18 19 22 23 24 25
58 49 43 33 21
NK
NK
AG
NK
NK
AG
EK
Done
3 0 0 0 0
Testing
5 3 5 2 1
Done
3 2 0 0 0
Done
3 2 0 0 0
In progress 21 21 21 16 10
Testing
5 3 3 3 2
Done
2 0 0 0 0
AG
AG
Done
Done
2
2
2
2
2
2
2
2
0
0
NK
EK
NK
AG
Done
Testing
Done
In progress
1
3
1
3
0
2
5
3
0
1
2
3
0
1
0
3
0
1
0
3
3
1
3
1
3
1
3
1
3
1
NK
Sprint burndown
Спринт (Sprint)





Итерация в Scrum (2-4 недели)
Результат спринта – готовый продукт
(build)
Короткие спринты обеспечивают быстрый
feedback
Каждый спринт – маленький «водопад»
Список задач на спринт фиксирован
Жизненный цикл Спринта (1/2)

Планирование спринта
 Первое планирование
Участники: команда, Product Owner, Scrum Master,
пользователи, менеджмент
Цель: Определить цель спринта (Sprint Goal) и Sprint Backlog
- функциональность, которая будет разработана в течение
следующего спринта для достижения цели спринта.
 Второе планирование
Участники: Scrum Master, команда
Цель: определить, как именно будет разрабатываться
определенная функциональность для того, чтобы достичь
цели спринта. Для каждого элемента Sprint Backlog
определяется список задач и оценивается их
продолжительность.
Жизненный цикл спринта (2/2)


Остановка спринта (Sprint Abnormal
Termination) – исключительная ситуация
Daily Scrum Meeting




Что сделано вчера?
Что будет сделано сегодня?
С какими проблемами столкнулся?
Демо и ревью спринта – демонстрация
продукта и анализ достигнутых
результатов
Download