Практика работы с крупными
проектами: от Scrum с XP к Kanban
Александр Бындю
IndyCode
www.byndyu.ru
3-я конференция .NET разработчиков
25 сентября 2011
Slide 2
Slide 2 text
Обо мне
1. Технический директор компании IndyCode
http://www.indycode.ru
2. Консультант по вопросам разработки
приложений и организации работы IT
компаний
3. Технический блог http://blog.byndyu.ru
4. Организую конференции .NET-разработчиков
http://www.dotnetconf.ru
5. Веду группу в Google Group по проблемам
разработки приложений http://
groups.google.com/dotnetconf
Slide 3
Slide 3 text
4 года назад было…
Code&fix
Slide 4
Slide 4 text
Code&fix
1. Занимались расширением, изменять
не можем
2. Меняем одну часть системы, другая
ломается, лучше ничего не трогать ☺
3. Море технических долгов
4. Проще всё переписать!
Slide 5
Slide 5 text
Цели заказчика
1.Заработать больше денег
2. Сделать для этого необходимый
минимум работы
3. Получить положительную обратную
связь от клиентов
Трудно достижимы
Slide 6
Slide 6 text
Наши цели
1.Заработать больше денег
2. Сделать для этого необходимый
минимум работы
3. Получить положительную обратную
связь от клиентов
Трудно достижимы
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
Agile в IndyCode
Slide 9
Slide 9 text
eXtreme Programming (XP)
Slide 10
Slide 10 text
Scrum
Slide 11
Slide 11 text
Kanban
http://www.agiledashboard.ru
Slide 12
Slide 12 text
Как «продавать»
такой подход
заказчику?
Slide 13
Slide 13 text
1. Whole team
2. Coding standard
3. TDD
4. Collective ownership
5. Customer tests
6. Pair programming
7. Refactoring
8. Planning game
9. Continuous
integration
10. Simple design
11. Sustainable pace
12. Small releases
1. Scrum Master
2. Product Owner
3. Team
4. Sprint planning
meeting
5. Daily Scrum
6. Sprint review
7. Product backlog
8. Sprint backlog
9. Burndown chart
1. Visualize the
workflow
2. Limit WIP
3. Measure and
optimize lead time
XP (12) Scrum (9) Kanban (3)
Мы внедрили всё!
Slide 14
Slide 14 text
Шаг №1
инженерные практики + управление
1. Whole team
2. Coding standard
3. TDD
4. Collective ownership
5. Customer tests
6. Pair programming
7. Refactoring
8. Planning game
9. Continuous
integration
10. Simple design
11. Sustainable pace
12. Small releases
1. Scrum Master
2. Product Owner
3. Team
4. Sprint planning
meeting
5. Daily Scrum
6. Sprint review
7. Product backlog
8. Sprint backlog
9. Burndown chart
1. Visualize the
workflow
2. Limit WIP
3. Measure and
optimize lead time
XP (12) Scrum (9) Kanban (3)
Slide 15
Slide 15 text
1. Whole team
2. Coding standard
3. TDD
4. Collective ownership
5. Customer tests
6. Pair programming
7. Refactoring
8. Planning game
9. Continuous
integration
10. Simple design
11. Sustainable pace
12. Small releases
1. Scrum Master
2. Product Owner
3. Team
4. Sprint planning
meeting
5. Daily Scrum
6. Sprint review
7. Product backlog
8. Sprint backlog
9. Burndown chart
1. Visualize the
workflow
2. Limit WIP
3. Measure and
optimize lead time
XP (12) Scrum (9) Kanban (3)
Шаг №2
инженерные практики + управление
Slide 16
Slide 16 text
Длинный проект
Эволюция методологий
Slide 17
Slide 17 text
Методологии описывают
рекомендации без конкретных цифр.
Экспериментируем!
Slide 18
Slide 18 text
Методологии - это инструменты
Настраиваем под себя
Вносим
изменения
Наблюдаем
результат
Извлекаем
урок
Slide 19
Slide 19 text
1. Whole team
2. Coding standard
3. TDD
4. Collective ownership
5. Customer tests
6. Pair programming
7. Refactoring
8. Planning game
9. Continuous
integration
10. Simple design
11. Sustainable pace
12. Small releases
1. Scrum Master
2. Product Owner
3. Team
4. Sprint planning
meeting
5. Daily Scrum
6. Sprint review
7. Product backlog
8. Sprint backlog
9. Burndown chart
1. Visualize the
workflow
2. Limit WIP
3. Measure and
optimize lead time
XP (12) Scrum (9) Kanban (3)
Шаг №3
экспериментируем
Slide 20
Slide 20 text
Разгоняем колесо
Первые 2-3 итерации
1. Вся команда: разработчики,
тестировщики, менеджеры
2. Жесткий XP
3. Жесткий Scrum
Slide 21
Slide 21 text
Едем по инерции
Середина
Что убрать или добавить для текущего процесса?
1. Стендапы каждый день обязательно
2. Формальное планирование можно
убрать
3. Burndown chart не рисуем
4. Ретроспектива при необходимости
5. …
Slide 22
Slide 22 text
А в конце обычно…
Скрамбан XP
Slide 23
Slide 23 text
Как «продавать»
такой подход
заказчику?
Slide 24
Slide 24 text
Заказчику всё равно
Agile у вас или нет
Главное максимально
достигнуть всех целей
Исключение, когда заказчик требует Agile
Slide 25
Slide 25 text
Рецепт от IndyCode
1. Code&fix?
2. Оцениваем свои шансы в Agile
3. Внедряем постепенно
4. Экспериментируем!
5. Заказчик достигает своих целей
Slide 26
Slide 26 text
Двигаемся вместе
Есть beerconf для
программистов
А для Project Manager’ов и
директоров?
Slide 27
Slide 27 text
Спасибо за внимание
Александр Бындю
IndyCode
[email protected]
www.byndyu.ru