Upload
sqalab
View
449
Download
0
Embed Size (px)
DESCRIPTION
Доклад на SQA Days-9, Казань, 22-23 апреля 2011
Citation preview
KANBAN – инструмент повышения качества разработки
Дмитрий Лобасев ScrumTrek
Дмитрий Лобасев • ScrumTrek
• Agile Coach
• До этого • Менеджер проектов, Архитектор процессов, Тимлид, Разработчик
ПОТОК РАБОТ
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1 2 A
A A A
A A A
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2 A
A A A
A A A
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2 3 4
A A A
A A A
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2
3
4 A A A
A A A
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2
3
4 5 6
A A A
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2
3
4
5
6
A A A
ОГРАНИЧЕНИЕ ОДНОВРЕМЕННО ВЫПОЛНЯЮЩЕЙСЯ РАБОТЫ (WORK IN PROGRESS)
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1 2 3
4 5 6 7
8 A 10 11
PO
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2 3 4 5 6 7
8 A 10 11
PO
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2 3 4 5 6 7
8 A 10 11
PO
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2
3
4
5 6 7
8 A 10 11
PO
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1 2 3
4
5
6
7 8 A 10 11
PO
?
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
3
2
4
7 8 A 10 11
PO ? 5
6
1
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
3
2
4 7 8 A 10 11
5
6
PO
1
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
3
2 4 7 8 A 10 11
5
6
PO
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
3
2 4 7 8 A 10 11
5
6
1 PO
СОВМЕСТНАЯ РАБОТА: СНИЖАЕМ WORK IN PROGRESS
Work In Progress
>> N ~ 2N ~ N < N
(N = размер команды)
Ничего не меняется Визуализация
имеющегося процесса
Эффективная командная работа
Минимизируем потери
Разработка Аналитика Тестирование
4 5 4 В прогрессе Готово
Ждем ответа заказчика
Заказчик не предоставил интерфейс к системе
Баг мешает продолжить тестирование
Ждем сервер Нужный
специалист занят Ждем ответа от сисадминов
Разработка
3 В прогрессе
3
4
7
– Нет блокированных задач
– Проблемы решаются командой быстро
WIP ~ N
Разработка
3 В прогрессе
3
4
7
– Командная работа – Обмен знаниями – Нет узких мест
– Выше качество!
WIP <N
Совместная работа команды
• PO помогает команде в приемке • Тестировщик помогает аналитику • Программист помогает собрать требования • Аналитик и тестировщик помогают программисту
ДОПОЛНИТЕЛЬНЫЕ СТАДИИ ПРОЦЕССА
Последовательность стадий
Очередь Анализ Разработка Тестирование Деплой
Очередь Приемочные критерии Разработка Тестирование Деплой
Обычная разработка
Разработка через приемочное тестирование
Разработка с тремя фазами тестирования
Очередь Приемочные критерии Разработка Перекрестное
тестирование Тестирование Деплой
DEFINITION OF DONE
Аналитика Очередь Разработка Приемка
2 3 2 В прогрессе Готово
• Определен сценарий демонстрации и приемочные тесты
• Указан заказчик • Проведено ревью
программистом
В прогрессе Готово В прогрессе Готово
• Тесты на основные методы написаны и проходят
• Код прошел ревью
• Документация создана и прошла ревью
• Заказчик принял • Готово к деплою
Критерии готовности
РАБОТА ПО ПРИОРИТЕТАМ
Поиск по вакансиям
Jira:10241
Заказчик: Пупкин В.
Анализ: 11/03/11 Разработка: 18/03/11 Тест: 22/03/11
Срок: 24/03/11 Приоритет:
Баклог Разработка Очередь Тестирование Готово!
2 3 2 В прогрессе Готово
1
2
3
4
5
6
7
A A A
BUG
PO А-‐а-‐а-‐а!!!
Анализ
6
BUG – Баг из «СРОЧНО!» – Приоритетные – Риск нарушения сроков
– Остальные в порядке очередности поступления
ПРИОРИТЕТ Разработка
!
ДЕКОМПОЗИЦИЯ НА ЗАДАЧИ И РАБОТА С ОШИБКАМИ
Аналитика Очередь Разработка Тестирование 2 3 2
В прогрессе Готово В прогрессе Готово В прогрессе Готово
2
Аналитика Очередь Разработка Тестирование 2 3 2
В прогрессе Готово В прогрессе Готово В прогрессе Готово
2
Аналитика Очередь Разработка Тестирование 2 3 2
В прогрессе Готово В прогрессе Готово В прогрессе Готово
2
Аналитика Очередь Разработка Тестирование 2 3 2
В прогрессе Готово В прогрессе Готово В прогрессе Готово
2
BUG
BUG
Аналитика Очередь Разработка Тестирование 2 3 2
В прогрессе Готово В прогрессе Готово В прогрессе Готово
2
BUG BUG
ПУЛЬС ПРОЕКТА: КАДЕНЦИИ
Каденции Итерации week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8
Sprint 1
Plan & commit Review (release?)
Каденции week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8
Planning cadence (2w)
Sprint 2
Retrospective
Release cadence (1w)
Retrospec�ves (4w)
События week 1 week 2 week 3 week 4 week 5 week 6 week 7 week 8
Planning (on demand)
Release (on demand)
Retrospec�ves (on demand)
By Henrik Kniberg
Стендап
• Общий стендап – Справа налево по доске – Что вам мешает? – Чем вы можете помешать?
• Стендапы в группах
PO
2009-‐08-‐29
orem ipsum dolor sit amet, nse ctetur adi pis cing elit nisl
2009-‐09-‐01
orem ipsum dolor sit amet, co nse ctetur adi pis cing elit nisl
2009-‐09-‐02
orem ipsum dolor sit
amet, nse ctetur adi
pis elit nisl
Analysis Development Acceptance Prod Next
Definison of Done: • Customer accepted • Ready for produc�on
Ongoing Done
Definison of Done: • Code clean & checked in on trunk • Integrated & regression tested • Running on UAT environment
Ongoing Done Ongoing Done
Definison of Done: • Goal is clear • First tasks defined • Story split (if necessary)
2 3 3 2
Feature / story
= completed
= blocked
= who is doing this right now
2009-‐08-‐20 2009-‐09-‐30
(descrip�on)
• Panicfeatures (should be swarmed and kept moving. Interrupt other work and break WIP limits as necessary)
• Priority features • Hard deadline features
(only if deadline is at risk) • Oldest features
2009-‐09-‐03 ipsum dolor sit amet, co nse ctetur adi pis cing elit nisl
2009-‐09-‐02
orem ipsum dolor sit amet, co nse
2009-‐08-‐27
orem ipsum dolor sit
amet, ctetur adi pis
cing elit nisl
2009-‐08-‐27
orem ipsum dolor sit amet, adi pis cing elit nisl
2009-‐08-‐20
orem olor sit amet, co nse ctetur adi pis cing elit nisl
2009-‐08-‐30
orem ipsum dolor sit amet, co adi pis cing elit nisl
2009-‐09-‐08
2009-‐08-‐20
orem ipsum dolor sit
amet, co nse ctetur
adi pis cing elit nisl
2009-‐08-‐25
2009-‐08-‐22 orem ipsum dolor sit amet, co
2009-‐08-‐25
orem ipsum dolor sit ctetur adi pis cing elit nisl
Task / defect Hard deadline (if applicable) Date when added to
board
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
(descrip�on)
(descrip�on)
(descrip�on) Why
(descrip�on) Who is analyzing / tes�ng right now
= priority
= panic
What to pull first
xxxx kjd dj d xxx
Пример канбан Henrik Kniberg www.crisp.se/kanban/example
version 1.2 2009-‐11-‐16
(descrip�on)
orem ipsum dolor sit amet, co nse ctetur
2009-‐08-‐26 orem adi pis cing elit nisl
orem ipsum dolor sit amet, co nse ctetur
=task =defect
Cumula�ve Flow
• www.agilemanagement.net/Ar�cles/Papers/BorConManagingwithCumulat.html
КАНБАН – КАЧЕСТВО, ВСТРОЕННОЕ В ПРОЦЕСС
ВОПРОСЫ?