• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Практика внедрения Scrum
 

Практика внедрения Scrum

on

  • 4,725 views

Презентация Бибичева Андрея об опыте внедрения Scrum в компании CustIS, прочитанная на конференции РИТ-2008.

Презентация Бибичева Андрея об опыте внедрения Scrum в компании CustIS, прочитанная на конференции РИТ-2008.
Текст статьи - http://www.slideshare.net/biBIGine/scrum-2029854

Statistics

Views

Total Views
4,725
Views on SlideShare
4,711
Embed Views
14

Actions

Likes
5
Downloads
138
Comments
0

3 Embeds 14

http://www.slideshare.net 11
https://twimg0-a.akamaihd.net 2
https://si0.twimg.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

Практика внедрения Scrum Практика внедрения Scrum Presentation Transcript

  • Практика внедрения SCRUM: трудности и пути их преодоления 15.04.2008 Бибичев Андрей
  • Зачем это рассказывать? 2  Дифирамбов и восторгов про Scrum ― и так очень много  Критики тоже хватает  А вот описания реального опыта, да еще и «отечественного» ― очень мало
  • Примерный план 3  Три кита Scrum  коммуникации / самоорганизация / жесткий time-boxing  Среда внедрения  пара слов про Компанию и проектные команды  Принятие решения о переходе на Scrum  выбор методологии / как всех убедить / пропаганда  Перевод первых команд  выбор тренера / выбор команды / подбор параметров / внедрение  Опыт работы по методологии Scrum  Проблемы с: taskboard / Scrum-митингами / ретроспективами / демонстрациями / соблюдением time-boxing-а // Nokia-тест  Перевод последующих команд, заключение
  • 4 Пара слов про Scrum Общая схема Терминология Три «фишки» Литература
  • О термине 5  Scrum – термин из Регби  «схватка», которая назначается для возобновления игры (аналог «вбрасывания» в хоккее)  команды выстраиваются друг напротив друга по три линии, а мяч вбрасывается в центр
  • Как тикает Scrum-механизм 6 Daily Scrum Meeting Демонстрация Ретроспектива Ведет Product Owner Sprint Planning (PO + команда)
  • Терминология 7 XP Scrum User stories Product backlog, Sprint backlog Planning game Sprint planning, Planning poker Iteration Sprint Standup Meeting Daily Scrum Meeting Представитель Product Owner заказчика в команде
  • Терминология: Scrum-мастер, 8 Product Owner, Scrum Lord  Поросята (pigs) – активные участники в решении задач (разработчики, бизнес-архитекторы, DBA, тестировщики), образуют команду  в команде не предполагается специальных ролей за исключением вспомогательной: Scrum Master (организация meeting-ов, устранение помех) – всегда по совместительству!  Цыплята (chickens) – те, кто вовлечены в процесс, но не выполняют проектных заданий (выносятся за пределы команды):  Product Owner – замена Project Manager-а, отвечает за продукт, не программист  Scrum Lord – тот, кто учит команду Scrum-у, следит за соблюдением правил
  • Терминология: 9 taskboard, burndown chart остаток что делаем что выполнено график «сгорания» работ sprint backlog сегодня за sprint (точки ставятся после каждого scrum meeting-а) Если всё сделано досрочно, то новые задачи берутся отсюда
  • Терминология: 10 Product Backlog ID Name Imp Es t How to demo Notes 1 Депозит 30 5 Залогиниться, открыть Требуются UML- карточку депозита, диаграммы положить $10, открыть последовательности карточку баланса и проведения операции. проверить, что остаток Про шифрование пока увеличился на $10 не беспокоиться 2 Просмотр 10 8 Залогиниться, кликнуть Использовать истории на «Транзакции». постраничный собственных Выполнить дипозит, вывод больших вернуться к транзакций таблиц. Дизайн – по транзакциям и аналогии со проверить, что выполненная операция справочником показывается пользователей
  • Терминология: 11 Sprint Planning, Planning Poker  При оценке трудоемкости используется дискретная шкала (см. картинку)  Каждый участник команды независимо дает оценку трудоемкости задачи  Разногласия обсуждают, процедуру повторяют (пока все не сойдутся на приблизительно одной цифре)  «0» – эта «задача» уже решена  «?» – нет никаких идей (вообще)  «чашка кофе» – требуется перерыв
  • Терминология: 12 Actual Velocity, Focus Factor  Скорость разработки (Actual Velocity) – количество реализованных Story Points за Sprint  Focus factor – отношение скорости разработки к потраченным чел.-дням  Как правило, Focus factor оценивается исходя из опыта предыдущего Sprint-а
  • Три ключевых фишки Scrum: №1 13  Эффективные коммуникации  Устные – самые эффективные  Достигается за счет общего участия в Daily Scrum Meeting-ах, планировании, ретроспективе, демонстрации  Обеспечивает хорошее и качественное распространение информации  Повышает вовлеченность членов команды
  • Три ключевых фишки Scrum: №2 14  Самоорганизующаяся команда  Помогает «не убить» самомотивацию  Обеспечивает автоматическую подстройку под обстоятельства  Подталкивает членов команды к кросс-функциональности  Разгружает управляющее звено от принятия лишних решений
  • Три ключевых фишки Scrum: №3 15  Жесткий time-boxing  Заключается в следующем:  дата окончания итерации жестко фиксируется и не переносится t  объем работ на итерацию тоже Ограниченный фиксируется и должен снизу объем соблюдаться работ  время daily scrum meeting-ов жестко фиксируется в рамках итерации  Отход от этого – это форс-мажор (бывает, но не должно быть чаще, чем Фиксированные начало и окончание раз в 4-5 итераций)  Обеспечивает предсказуемый, управляемый и абсолютно прозрачный ход проекта
  • Литература 16  Доступна бесплатно в электронном виде:  http://www.infoq.com/minibooks/ scrum-xp-from-the-trenches  Стала для нас своего рода библией Scrum и сильно помогла
  • 17 О среде внедрения О компании О командах
  • www.custis.ru 18  Создание приложений enterprise-уровня на заказ  полный цикл, начиная от предпроектного обследования, заканчивая внедрением и спопровождением  большинство проектов имеют достаточно долгую историю развития (самые долгожители: уже почти 10 лет)  В данный момент:  90 человек (всего в Компании) / 9 проектных команд  от 3 до 12 человек каждая / в среднем – 6 человек в команде  Заказчики:  ТС «Спортмастер» / Центральный аппарат Банка России / ЕРКЦ г. Саратова и др. городов / Собинбанк / Депаратамент образования Москвы / …
  • Scrum-команды 19 Дата Команда Состав Технологии перехода 12 чел. DBMS Oracle, Oracle Portal, Fus ion- начало Java (JSF + Hibernate + Swing • 2 аналитика Dokofr сентября 2007 + …), C++, … • 2 инженера 6 чел. D B MS O racle, P L/ Q L, S конец M4, .Net, D elphi R adey • 1 аналитик сентября 2007 • 1 инженер .Net (1.1 – 3.5), AS P .Net, LINQ, конец 5 чел. TechEvol D B MS O racle, MyS QL сентября 2007 • все разработчики 7 чел. D B MS O racle, P L/ Q L, M4, S конец X ML, .Net TN-S hop • 1 аналитик октября 2007 • 3 инженера 5 чел. D B MS O racle, P L/ Q L, M4, S начало X ML, .Net TN-MDM • 1 аналитик марта 2008 • 1 инженер
  • 20 Принятие решения… Что выбрать? Начальство против! А народ?!
  • Что выбрать 21  eXtreme Programming (XP)  Scrum  Feature Driven Development (FDD)  OpenUP  …  Scrum, дополненный практиками из XP
  • Семейство Agile-методологий 22 Уровень процессов Еще есть: • ASD Управление проектами SCRUM Взаимодейств. FDD • Crystal Clear команд, • DSDM Индикация • Lean прогресса Управление • AUP проектом Самоорг. команда, Требования, Daily Meetings, Итерации, Дизайн по месту Unit-тесты Стандарт кодирования, Code review Кодирование XP Жесткость процессов Анархия Водопад
  • Как убедить начальство 23 Больше всего напрягала самоорганизация:  активные vs. пассивные  индивидуальные планы развития  орг. структура внутри проекта  персональная ответственность  система компенсации  Сильно помогли «Scrum and XP from the trenches» и наличие тренера/консультанта
  • А народ Scrum – это круто! 24 о б ерия нер ит ему ый т н ел дов ре е! е ьш зн – к н енн лез ол о ла ма п ьн ш пр есь В иг ач Вот тока не надо заливать… Внутренний семинар, разговоры за «рюмкой чая», совместное изучение «Scrum and XP from the trenches»
  • 25 Перевод первых команд Выбор тренера Кого 1-ого «под нож»? Подбор параметров Как переходить?!
  • АГА! Я подсёк Выбор тренера клиента! 26  искали 2 месяца  выбора почти нет  зато то, что есть, весьма высокого уровня! УРА! Мы нашли  Считаем, что нам повезло! тренера!
  • Выбор пионеров Я – Scrum. 27 Я тебя спасу! много ярких лидеров «слабые» всё гладко много проблем За что?! У меня всё было Ок!
  • Подбор параметров 28 Большинство команд начинали с:  длина итерации – две недели (10 раб. дней)  единица оценки трудоемкости – идеальные человеко- часы (или человеко-дни для крупных задач)  способ оценки трудоемкости – Planning Poker  Focus-factor – 0.5  Scrum-мастер – самовыдвиженец  время начала Scrum-митинга – в 12:00 или 15:00  Сейчас все команды используют 2-х недельные итерации, а Focus-factor разниться от 0.4 до 0.65
  • Как внедрять 29  Главное – быстро! Консультации с лидерами Итерация №0 Итерация №1 и руководством команды (2 недели) (2 недели) (примерно 1 неделя) ! ! ! ! ! ! ! Планирование Демо Планирование Ретро Тренинг (весь день для всей команды) ! – присутствие тренера
  • 30 Опыт использования Scrum Сложности с Taskboard Scrum-митингами Ретроспективой Демонстрацией Time-boxing-ом Nokia-тест
  • Одна команда, несколько 31 проектов/модулей Ложные предрассудки: 2. несколько проектов/модулей для одной Scrum-команды – это плохо 3. смешивать в одной итерации работы по разным проектам/модулям – нельзя  Всё отлично работает (переключаться даже интересно!)  главное – чтобы Product Owner был один!  Но есть проблемы с достижением кросс- функциональности в командах, где раньше была специализация по проектам/модулям  попробуйте сделать несколько «моно-продуктовых» итераций
  • Taskboard 32  Оценка трудоемкости мешает при выполнении задачи  пишите оценку трудоемкости с другой стороны стикера  Стикеры отклеиваются и падают  используйте магниты или пробковые доски Сделать то-то… 20 sp
  • - На Scrum-митинг Scrum-митинги становись! - Что делал вчера?! 33  На Scrum-митинге присутствуют не все (опоздания)  выбор времени митинга  не используйте штрафы  Scrum-митинг превращается в отчет перед Scrum-мастером  разъяснительная работа  со временем проходит  Scrum-митинг затягивается, переходит в обсуждения  «карандашик»  песочные часы
  • Ретроспектива 34 Важная практика: 2. точка подстройки процесса! 3. снятие напряженностей и недомолвок  Либо вообще про нее забывают (по началу)  пригласить опытного ведущего  Либо вырождается в формальность (со временем)  менять ведущих  расширять круг тем  читать умные книжки
  • Демонстрация 35  Тяжело обеспечить присутствие заказчика на демо  проще подстроиться  раз в пару итераций ездить на площадку к заказчику  Демонстрация затягивается из-за тех. проблем  тупо готовиться   Делали-делали, а сделали не то  писать how-to-demo  зарисовывать vision
  • Time-boxing 36 Что делать, если у команды не хватает самомотивации для соблюдения жесткого time-boxing-а:  чем выше активный интерес к проекту «со стороны», тем выше (само)мотивация внутри команды:  на митингах  на демо  иногда на Scrum-митингах  Не штрафовать!  Полезно немного не успевать («прессинг»)
  • Критерии: Scrum / не-Scrum ? 37  Процесс достаточно гибкий и Я – скрипач адаптивный али нет?  Адаптация и кастомизация в процессе работы по Scrum зачастую уводят слишком далеко от канонической трактовки…  Каковы критерии, что это всё еще Scrum?  Какие принципы являются ключевыми? Т.е. что нельзя нарушать?
  • Nokia-тест 38  QCon London 2006: Jeff Sutherland «Scrum and not-Scrum»  http://www.infoq.com/interviews/jeff-sutherland-scrum-rules  Nokia использует Scrum  Nokia консультирует Jeff  В результате родился «тест»
  • Nokia-тест: итеративность 39  У вас итерации фиксированы, т.е. начинаются в определенное время и заканчиваются в назначенное время?  Длина итерации не превышает 6 недель?  В конце итерации вы имеете работающее ПО?  Вам не нужна детальная спецификация для того, чтобы начать итерацию?  Важно иметь работающее ПО в конце итерации: вы проводите тестирование во время процесса разработки?  Если все ответы – «ДА», то это итеративный процесс в полном смысле этого слова
  • Nokia-тест: Scrum-ность 40  У вас есть Product Owner, т.е. есть кто-то, кто представляет заказчика и работает с вами?  Если у вас есть Product Owner, ведет ли он Product Backlog, т.е. список «фич», которые нужно запрограммировать? Приоритезирован ли он по важности для заказчика? Есть ли оценка трудоемкости по каждому пункту?  Строите ли вы график сгорания работ (burndown chart) во время итерации, чтобы видеть, сколько работы осталось, и успеваете ли вы к концу итерации?  Во время итерации команда работает по принципу самоорганизации, т.е. менеджеры не вмешиваются в работу команды по ходу итерации?  Если и здесь все «ДА», то это Scrum
  • 41 Заключение Перевод последующих команд Пробуйте!  Контакты
  • Перевод последующих команд 42  Помогайте страждущим  Не давите на скептиков  а то начнут «самопалить»  сами придут
  • Не бойтесь попробовать! 43  Scrum может быть хорошим дополнением к вашим навыкам, приемам, know-how, практикам  Разгружает management  Обеспечивается прозрачность  Повышает вовлеченность и интерес к работе большинству программистов очень нравится!
  • Рады будем пообщаться! 44  Приходите в гости!  Давайте обмениваться опытом!  Сами с интересом бы посмотрели как оно у других Бибичев Андрей andrew@custis.ru www.custis.ru