Бибичев Андрей2009 год, сентябрь
team.custis.ru
А какой у вас Agile:свежевыжатый или порошковый?
«А какой у вас Agile?», (с) 2009 2 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение
Ag
en
da
«А какой у вас Agile?», (с) 2009 3 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение
●
- Ты кто такой и откуда взялся? О чём ты, вообще?!
Хронология истоков
• Лето 2007:– решение о переходе на Scrum в компании
«Заказные ИнформСистемы» (CustIS)
• Сентябрь – октябрь 2007:– перевод первых команд на Scrum
• Апрель 2008:– доклад «Практика внедрения Scrum» на конференции РИТ-2008 вызвал
большой интерес
• После РИТ-а и по сей день:– большой поток вопросов и обсуждений– участие в различных конференциях (SECR, AgileDays, SEF, …)– регулярные встречи сообщества AgileRussia
• C лета 2008 и по сей день:– 90% команд в Компании работает по методологии Scrum– сейчас это 9 команд
– жизнь в них по факту разнится!!!«А какой у вас Agile?», (с) 2009 4 из 106
«А какой у вас Agile?», (с) 2009 5 из 106
http://www.google.com/profiles/biBIGone
«А какой у вас Agile?», (с) 2009 6 из 106
Практика внедренияScrum
«А какой у вас Agile?», (с) 2009 7 из 106
Agile Coach Camp3 апреля 2009 года
Москва
«А какой у вас Agile?», (с) 2009 8 из 106
Одно слово, но разные свойства…Пришел к выводу, что есть два мира Agile. Они существуют параллельно и называются одним словом. Но они существенно отличаются!
«А какой у вас Agile?», (с) 2009 9 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение
●
Одна итерация из жизникоманды «Порошок»
«А какой у вас Agile?», (с) 2009 10 из 106
Я. ЦентраProduct Owner (PO),Scrum Master (SM),Project Manager (PM)
Одна итерация из жизникоманды «Порошок»
«А какой у вас Agile?», (с) 2009 11 из 106
Серж ЛетSenior Developer(server-side logic)
М.С. ВордовAnalyst
МанкинTester Базиль И.О.
Senior Developer(GUI)
хоЛJunior Developer
Одна итерация из жизникоманды «Порошок»
«А какой у вас Agile?», (с) 2009 12 из 106
АльтерDBA
/* в отпуске */
П Л А Н И Р О В А Н И Е
1. Начнем планирование!
3. Прежде всего, пользователи
жалуются на долгий поиск накладных по
статусу, но DBA в отпуске, так что
придется отложить…
Центра2. Мы слушаем тебя,
Каа…
5. ^&%$%^#!!!Опять много не
успели сделать и пол-итерации
придется доделывать…
4. Как обычно, вначале надо
доделать то, что не успели в
предыдущую итерацию.
«А какой у вас Agile?», (с) 2009 14 из 106
1. Я ловлю непонятный баг в работе библиотеки wakeUp. Плюс мне не нравится
в ней кусок – я думаю написать свою реализацию!
Х-р-р-р-р
4. Сколько буду искать ошибку – не знаю… А перепишу быстро – за
пару дней.
2. Как мне это надоело -
«переписать». Опять всё время
потратит…
3. Сколько это займет
времени?
6. Я исправляю замечания по результатам тестирования. Потом Манкин еще будет смотреть – не знаю, чего
найдет…
5. Ok! Отводим
3 дня
7. И?!Как обычно, пару дней?
9. А я буду всю эту итерацию переписывать
наши use-case-ы в соответствии с замечаниями заказчика по оформлению.
8. Ну, не знаю… Это непредсказуемо….
«А какой у вас Agile?», (с) 2009 15 из 106
1. Так, нам нужно понять, какую задачу
дать хоЛ-у
2. У меня есть пара тупых формочек,
которые нужно сделать по аналогии
3. Хорошая идея! Сколько
это может занять?
4. Мне это раз плюнуть – за пол- дня сделаю. Ну,
плюс тестирование
5. Гы! Наверняка я там найду много
ошибок и они, как обычно, будут долго
исправляться
6. Мало смыслю в GUI. Но думаю, что по дню на формочку + день
тестировать
7. В среднем мы одну форму оцениваем в
один день
8. Ни разу не делал. Не
знаю… Минимум неделю буду въезжать…
Но, может, и две недели…
9. Поскольку делать хоЛ-у, берем 8 дней
Daily Scrum в первые дни
1. Базиль И.О., ты что делал и собираешься делать?
2. Полез исправлять замечания Манкина, наткнулся на код
хоЛа, сейчас его переписываю…
3. А что у тебя, Манкин?
4. Жду, пока Базиль И.О. исправит мои замечания, чтобы снова проверить. А больше пока
тестировать нечего!5. Базиль И.О., ты когда исправишь
замечания?6. Ну, не знаю, как пойдет… Еще меньше половины работы хоЛа
переделал7. А я сейчас делаю ту срочную
незапланированную задачку, которую ты мне вчера поручила сделать. Ну, ты в
курсе…8. Пока
разбираюсь9. Правлю доку
Я тут посмотрел твой код. Он не соответствует нашей
документации по архитектуре серверной части. Почему ты
используешь столь необдуманное кеширование?! Ведь всё будет
работать в кластере!
Да я как раз сейчас чуть менее чем
полностью переписал этот код.
Просто пока не коммитил, так как не всё причесал и еще
кое-что хотелось доправить.
По нашим стандартам надо было сразу делать согласно
спецификации! Я обязательно доложу об этом Центре…
Где-то в середине итерации
Daily Scrum в последние дни
1. Так, Серж Лет у нас снова заболел… Его задачи
«повисли», блин!
2. Всё никак не могу отладить свой код. Какие-то
непонятные ошибки лезут
3. Я свои формы доделал. Дальше двигаться не могу, так
как Серж Лет свою часть не сделал. Читаю про JavaFX
4. $^%$(%^#$А я весь в запаре! Вчера эти балбесы мне
не тот билд дали, в итоге я весь день тестировал неправильную версию.
Сейчас все тесты надо проходить заново! ААА!!! Опять до ночи сидеть!..
5. Ну, я продолжаю
править доку
Д Е М О Н С Т Р А Ц И ЯХ-р-р-р-р
1. Итак, то-то я уже видела и больше смотреть не будем.
2. А сё-то мне не интересно.
3. Давайте посмотрим вот это. Манкин, ты это
проверял?
4. Угу. Но только поверхностно. И уже
нашел 2 ошибки.
5. Ладно. Давай покажи что есть
Р Е Т Р О С П Е К Т И В А
1. Опять много не успели!
2. Ну, это я просто проболел…
3. Кстати, на тебя жалуется наш Inspector!
4. Да он смотрел не тот код! Я его давно переписал!
5. Какие у нас еще проблемы?
6. Мне приходится переписывать почти весь код за
хоЛом8. Ну, он у нас только начинает
работать. Пока учится…
7. Сам понаписал путанного кода, в
котором не разобраться, а
теперь наезжает…
Р Е Т Р О С П Е К Т И В А
10. На эту тему я уже общалась с начальством. Нам обещали
открыть вакансию Build-инженера
9. Опять мне отдали не тот билд и я тестировал не пойми что! А потом
периодически задерживали сборку и я простаивал
11. Да эту сборку можно полностью автоматизировать
за полдня. Интересно, они про Maven хоть знают?
11. Ну, а что у нас хорошего?
12. Кроме моей новой прически
13. Я сделал красивую документацию! Правда, она
местами уже немного устарела…
Одна итерация из жизникоманды «Свежак»
«А какой у вас Agile?», (с) 2009 22 из 106
Одна итерация из жизникоманды «Свежак»
«А какой у вас Agile?», (с) 2009 23 из 106
АндрейProduct Owner (PO)
Много трындит на конфах
ВасяScrum Master (SM)Педант, любит
создавать web-GUI
Одна итерация из жизникоманды «Свежак»
«А какой у вас Agile?», (с) 2009 24 из 106
ЮляЛюбит обучать и
общаться, но иногда и программирует
ЛёшаСпец по оптимизации
алгоритмов
ГлебФанат Apple, но пишет на C# в M$ VisualStudio…
В команде недавно
П Л А Н И Р О В А Н И Е
1. Давайте планировать. Расчеты дали ожидаемую скорость 119 ид. часов: 224 рабочих часа минус 24
часа на подготовку и поездку на SEF-09 Андрея, фокус-фактор – 0,6
2. Ок! Наша цель на данный спринт: переделать проверки прав в Plantime с императивного кода на
нашу новую декларативную систему описания, дабы проверить её перед тем, как использовать в других
проектах
3. А если не получится?
4. Значит будем переделывать систему прав в следующем спринте
П Л А Н И Р О В А Н И Е
5. Итак, наша цель: Права в Plantime!
6. Но вначале, как водится, важный баг, который надо исправить: долгий поиск документов по статусу.
7. А что там? Мы вроде тестировали и было всё
нормально
8. За это время, должно быть, объем их базы вырос на порядок, т.к. там явно
экспоненциальный рост объема операций из-за роста бизнеса. Нам даже пришлось срочно делать партиционирование основных таблиц.
П Л А Н И Р О В А Н И Е
9. К сожалению, сейчас наш конторский админ, который специализируется на СУБД в отпуске, но всё
равно надо разбираться. Проконсультироваться можно еще с Витей и Максом – они тоже круто секут в этой
теме
10. Давайте тогда оценивать. Нужно снять профиль, найти тормозящий запрос, посмотреть его план.
Может, там просто индексов не хватает.
11. Я этой функциональности в глаза не видел. Сложно оценить…
П Л А Н И Р О В А Н И Е
12. Ну, там всё просто 13. Ага, как обычно! 14. Да действительно просто! Сейчас я за 3 минуты
нарисую…
Основная логика сосредоточена в классе VerySimpleClass 15. Глеб, тебе
понятно?16. Ну… не до конца… Но оценить трудоемкость
попробую17. Если будешь делать ты, дергай меня – я тебе помогу
разобраться в коде и покажу, куда рыть
«А какой у вас Agile?», (с) 2009 29 из 106
П Л А Н И Р О В А Н И Е
1. Я там хорошо ориентируюсь, так что мне это быстро, но если будет делать кто-то еще, то да – может
потребоваться побольше времени.
2. Ну, я подумал, что где-то час на воспроизведение и поиск проблемы, еще пара на поиск решения, часик на
его реализацию, еще часик на тестирование.
3. Воспроизведение уже есть. Я смотрел
утром.
4. А проблемное место я тебе покажу за 5 минут –
там больше нечему тормозить!
П Л А Н И Р О В А Н И Е
5. Ну что, кидаем еще раз? Или уже и так договорились?
6. Давайте лучше кинем.
7. Ок! Итого 3 ид.часа
8. Так, дальше у нас более фундаментальные задачи. Прежде
всего, нужно …
П Л А Н И Р О В А Н И Е
9. Да, большая задача. Да еще тут надо хорошенько подумать, как это реализовать. Прикинуть
распределение ответственности по классам и их публичный API
10. Тогда надо разбивать на три подзадачи, как обычно в таких случаях: совместная дизайн-сессия,
реализация, проверка. И оценивать каждую по отдельности
11. Если никто не против, то давайте так и сделаем. Мне нравится такой
подход и он нас не подводил.12. Ну что, в дизайн-сессии 2-3
активных достаточно? Или будем обсуждать все вместе?13. А в wiki надо будет зафиксировать
результат обсуждения или хватит снимков досок?
П Л А Н И Р О В А Н И Е
Значения близкие. Возьмем, как в таких случаях водится, большее? Т.е. 8?
. . .
Давайте! Даже если здесь всё будет по оптимистичному сценарию, мы наверняка
заковыряемся где-то на другом таске
Это точно!В особенности там, где я осуществляю проверку
и code-review
«А какой у вас Agile?», (с) 2009 34 из 106
1. Я вчера таки разобрался, из-за чего тормозит поиск: там по статусу индекс локальный, а не глобальный. В итоге идет перебор всех партиций, а их уже много.
Вариантов исправления два: сделать индекс глобальным, или в поиске требовать ограничение на
дату документа (чтобы попадать в ограниченное число партиций).
Daily Scrum в первые дни
2. А может, всё же проконсультироваться с Витей или Максом?
3. Да я уже! Собственно, они мне и объяснили, что означает такой план запроса.
4. Давайте сразу после Scrum-а обсудим, что с этим можно сделать.
5. Да, давайте! Ну а сегодня я исправлю этот поиск по результатам обсуждения, а дальше возьму следующую по приоритетам задачу – например, проверку того, что
сделал Глеб.
Daily Scrum в первые дни
6. Это было бы полезно! Я как раз вчера реализовал фичу «A», но не уверен в паре моментов – хотелось бы
обсудить. Сегодня буду делать фичу «B», ну и исправлять замечания по «A», если будут.
7. Давай перед реализацией фичи «B» с тобой договоримся об API. А то мне придется сшиваться с ним
по ходу реализации «0x»
8. Конечно!
9. А я вчера готовился к конференции. Спасибо большое Васе за помощь в переводе абстракта на английский – он это делает значительно лучше GoogleTranslate! Сейчас
вам разошлю то, что получилось – вдруг у вас будут идеи/замечания/предложения. Сегодня уезжаю в
Минск…
Daily Scrum в первые дни
10. Я вчера начал делать фичу «0x». Еще помогал Андрюхе с абстрактом и читал с Лёхой про
партиционирование таблиц. Сегодня продолжу, буду «сшиваться» с кодом Глеба.
11. Я, как договаривались, выясняла у пользователей подробности по их request-ам. Сейчас пишу отчет в wiki.
Потом буду смотреть, что получилось с ускорением поиска. Если всё хорошо, пронесу хотфикс на боевой
сервер.
1. Я вернулся с конфы. Всё было очень позитивно! За обедом расскажу подробнее. Сегодня буду писать отчет для публикации в блоге Компании. Дальше подключусь к
вам.
Daily Scrum в середине
2. Я вчера доделал … и начал проверять фичу «C» за Глебом. Мелочи поправил сам (форматирование,
опечатки). Но у меня есть вопросы по коду и я нашел несколько ошибок. Сегодня хотелось бы вместе с Глебом
всё это обсудить и исправить.
3. Я вчера исправлял замечания Леши по фиче «B». Сегодня буду с Васей выправлять «С». Если получится,
возьму следующий таск.4. Можешь посмотреть, как я исправила описание функциональности в соответствии с последними
правками.
5. Блин, я уже почти доделал мега-фичу в нашем провайдере Qlin. Осталось полденька. Дальше что-
нибудь возьму по приоритету.
Daily Scrum в середине
6. Ты опять столь же оптимистичен, как вчера? Даже уже про следующий таск говоришь?
6. ???
7. Ну, вчера ты говорил примерно то же самое: «Осталось немного»
8. Подколол! Сегодня точно дожму!
. . .
На следующий день
1. Я вчера сидел допоздна. Но доделал! Все Unit-тесты проходят! Ничего другого не успел. Так что сейчас возьмусь за что-то очередное. Та-а-ак… А, ну вот
проверю за Васей фичу …2. А я вчера полдня исправлял вместе с Глебом ошибки.
Потом всё оставшееся время разбирался с глюком в библиотеке MegaXob – для чего скачал полную
спецификацию на формат файлов Ёxl. Нашел у них ошибку. Исправил. Теперь у нас все тесты проходят
корректно.3. Может, послать вендору твой патч, чтобы они в
основном стволе исправили?
4. Я как раз этим сейчас и занят!
Daily Scrum в последние дни
1. Меня вчера весь день дергали по орг. вопросам. Так что пришлось сегодня прийти пораньше, чтобы доделать
то, за что я взялся. А то как-то совсем выпал из спринта…
2. Сейчас готов подключиться к кому-то из вас и помочь доделать таск.
3. Мне нужна помощь! Я не успеваю дотестировать всю критическую функциональность Plantime после перевода
на новые права
4. Ok! Давай поделим тестовые сценарии между собой!
5. Я тоже через пару часов могу к этому подключиться – я почти исправил все замечания по коду, а больше
тасков нет!6. Ну, а мы с Лехой совместно дожимаем доделки в Qlin
На демо каждый показывает то, что он сделал.
Все пункты Backlog-а так или иначе демонстрируются в
соответствии с how-to-demo.
Замечания и предложения тут же обсуждаются и
фиксируются
Р Е Т Р О С П Е К Т И В А
1. Основной минус, что я так и не прочитал книжку «Agile Retrospective» Придется проводить
ретроспективу «по-старинке»2. Тогда у меня предложение: давайте на следующий
спринт повесим отдельный персональный таск для Васи: «прочитать» Ну, и выделим сколько-то
рабочего времени
3. Да, а какой у нас фактический фокус фактор
получился?4. С учетом незапланированной работы
– 0,68 5. Будем поднимать на следующий спринт
(планируемый был 0,6)?
Р Е Т Р О С П Е К Т И В А
6. Давайте пока не будем. Это первый спринт, когда так получилось. До этого стабильно немного не
успевали.
7. Если все так думают, то оставим 0,6
8. Давайте оставим. А на случай опережения повесим несколько
бонусных тасков!
9. Ok. Оставляем. Какие еще плюсы/минусы/идеи?
10. Давайте посмотрим идеи с предыдущего
спринта и обсудим то, что не удалось сделать.
«А какой у вас Agile?», (с) 2009 45 из 106
«А какой у вас Agile?», (с) 2009 46 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение
●
Нужно что-то вроде «лакмусовой
бумажки»
1. Кол-во горящих глаз
«А какой у вас Agile?», (с) 2009 47 из 106
команда
2 команда
Кол-во
Tотношения
Равн
од
уш
ное
Пр
охл
ад
ное
Рабочее
Заж
ига
ют
Кол-во
Tотношения
Пр
охл
ад
ное
Рабочее
Заж
ига
ют
Равн
од
уш
ное
2. Уровень коммуникаций
«А какой у вас Agile?», (с) 2009 48 из 106
Мало, электронные
Много, устные
Уровень
Вид
Эл
ектр
он
ны
е
Уст
ны
е п
о р
аб.
Нер
абочи
е
«Рж
ач»
Уровень
Вид
Уст
ны
е п
о р
аб.
Нер
абочи
е
«Рж
ач»
Эл
ектр
он
ны
е
ФОТОПАУЗА
{
«А какой у вас Agile?», (с) 2009 49 из 106
«А какой у вас Agile?», (с) 2009 50 из 106
«А какой у вас Agile?», (с) 2009 51 из 106
}
«А какой у вас Agile?», (с) 2009 52 из 106
3. Топология взаимодействий
Снежинка Каждыйс каждым
«А какой у вас Agile?», (с) 2009 53 из 106
Иерархия внутри проектной группы
3. Топология взаимодействий
«А какой у вас Agile?», (с) 2009 54 из 106
Снежинка Каждыйс каждым
С кем взаимодействует
Сотр-к
Я.
Цен
тр
а
Бази
ль И
.О.
М.С
. В
ор
дов
хоЛ
С кем взаимодействует
Сотр-к
Вася
Гл
еб
Леш
а
Ан
др
ей
4. Характер Burndown Chart-ов
«А какой у вас Agile?», (с) 2009 55 из 106
S.P.
День
S.P.
День
S.P.
День
S.P.
День
Чуть-чуть не успевают
Пошли проверки
Приоритетная мелочевкаДожали долги с пред.
Многое недоделано
Незапланированное
Борьба за результат
5. Вид Taskboard-а
«А какой у вас Agile?», (с) 2009 56 из 106
WIP команда
WIP ½команда
вразнобой по приоритетам
NEW NEWIN WORK IN WORKDONE DONE
6. Величина Focus Factor-а
«А какой у вас Agile?», (с) 2009 57 из 106
FF [0; 0,3] FF [0,5; 0,8]
Обсуждаетсяна планировании
Обсуждаетсяна планировании
Скрытая от планирования
часть
Скрытая от планирования
часть
70% 30%
ГЕОМЕТРИЧЕСКАЯПАУЗА
{
«А какой у вас Agile?», (с) 2009 58 из 106
«А какой у вас Agile?», (с) 2009 59 из 106
Теоретически, Focus Factorдолжен быть равен примерно
0,64
L
½L
Начальная точка Цель
2/
Кратчайший путь
Традиционный путь
«А какой у вас Agile?», (с) 2009 60 из 106
Теоретически, Focus Factorдолжен быть равен примерно
0,642/ Нужно вспахатьВспахали (лошадь
так разворачивалась )
a
S = a2S = ½a2
}
«А какой у вас Agile?», (с) 2009 61 из 106
7. Кросс-функциональность
«А какой у вас Agile?», (с) 2009 62 из 106
Может быть немного
горизонтальной специализации
Сильные и вертикальная, и горизонтальная специализация
Компонет X
Подсистема Y
Примочка Z
Програм-
мирование
Бизнес-логика
GUI
Db
Анализ
Системный
Бизнес
Тесирование
Как проверить кросс-функциональностьИсточник: http://blog.crisp.se/henrikkniberg/2009/02/27/1235769840000.html
«А какой у вас Agile?», (с) 2009 63 из 106
8. Распределение работы
«А какой у вас Agile?», (с) 2009 64 из 106
PUSH/* толкающее */
PULL/* тянущее */
МУЗЫКАЛЬНАЯПАУЗА
{
«А какой у вас Agile?», (с) 2009 65 из 106
«А какой у вас Agile?», (с) 2009 66 из 106
Наглядная история жизни
одного из проектов
}
«А какой у вас Agile?», (с) 2009 67 из 106
«А какой у вас Agile?», (с) 2009 68 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение
●
Возможен ли фазовый переход?
«А какой у вас Agile?», (с) 2009 69 из 106
Причины
Внешниеобстоятельств
а
Команда
Руководство
Наши «дураки и дороги»:
«А какой у вас Agile?», (с) 2009 70 из 106
I. Проектная группа
Команда
Забитое слово, но лучше нет…
КИНОПАУЗА
{
«А какой у вас Agile?», (с) 2009 71 из 106
«А какой у вас Agile?», (с) 2009 72 из 106
Сериал «The IT Crowd» (Компьютерщики)
1-ая серия, 15-17 минуты
}
«А какой у вас Agile?», (с) 2009 73 из 106
«Пять пороков команды»Патрик Ленсиони
«А какой у вас Agile?», (с) 2009 74 из 106
«А какой у вас Agile?», (с) 2009 75 из 106
Чувство неуязвимостиМнимая
гармония
Неясность / неоднозначностьЗаниженные
стандарты
Статус и эгоизм
Absence of Trust
Fear of Conflict
Lack of Commitment
Avoidance of
Accountability
Inattention to
Results
«А какой у вас Agile?», (с) 2009 76 из 106
Предложения по устранению этих пороков
/* не из книги */
1. Отбор и найм
«А какой у вас Agile?», (с) 2009 77 из 106
2. Система компенсации
«А какой у вас Agile?», (с) 2009 78 из 106
3. Строгое соблюдениеDefinition-of-Done (DoD)
+ Peer Code Review
«А какой у вас Agile?», (с) 2009 79 из 106
сборочныйсервер
коллега аналитикили PO
демо(1) автоматическиесборка + тесты
(2) Code Review(3) Сделано то, что нужно?Оно работает? Это удобно?
Feedback
Feedback
4. Устранение демотиваторов
«А какой у вас Agile?», (с) 2009 80 из 106
К сожалению, здесь зачастую без
«хирургии» не обойтись
5. Прививание / почкование
«А какой у вас Agile?», (с) 2009 81 из 106
«А какой у вас Agile?», (с) 2009 82 из 106
II. Менеджер/руководитель
Лидер
Признание и авторитетover
лампасы и погоны
ФИЛОСОФСКАЯПАУЗА
{
«А какой у вас Agile?», (с) 2009 83 из 106
«А какой у вас Agile?», (с) 2009 84 из 106
Относись к человеку как к цели,а не как к средству
Категорический императив Канта
http://ru.wikipedia.org/wiki/Кант,_Иммануил
}
«А какой у вас Agile?», (с) 2009 85 из 106
«А какой у вас Agile?», (с) 2009 86 из 106
Old-school => New-school
«А какой у вас Agile?», (с) 2009 87 из 106
Old-school => New-schoolРазделяй и
властвуйОбъединяй и
вдохновляй
Искусственная «мотивация»
Устранение демотиваторов
Персональные отношения,
«любимчики»
Воздействие на команду как
целое
«А какой у вас Agile?», (с) 2009 88 из 106
Old-school => New-schoolПоучения,
требованияЛичный пример
Ставка на карьеру
Ставка на самореализаци
ю
«Спихивание вниз»
Делегирование
Доверие + помощь
«А какой у вас Agile?», (с) 2009 89 из 106
Old-school => New-school
Микро-менеджмент
Фокус на внешние
обстоятельства
«А какой у вас Agile?», (с) 2009 90 из 106
Old-school => New-schoolФокус на
«начальственном» звене
Те, кто обеспечивает
основной вклад, тоже важны
КОМИКС-ПАУЗА
{
«А какой у вас Agile?», (с) 2009 91 из 106
«А какой у вас Agile?», (с) 2009 92 из 106
By Clark & Vizdos (с) 2006
implementingscrum.org
http://www.implementingscrum.com/2006/09/11/the-classic-story-of-the-pi
g-and-chicken/
«А какой у вас Agile?», (с) 2009 93 из 106
By Clark & Vizdos (с) 2006
implementingscrum.org
http://www.implementingscrum.com/2006/09/11/the-classic-story-of-the-pi
g-and-chicken/
«А какой у вас Agile?», (с) 2009 94 из 106
By Clark & Vizdos (с) 2006
implementingscrum.org
http://www.implementingscrum.com/2006/09/11/the-classic-story-of-the-pi
g-and-chicken/
}
«А какой у вас Agile?», (с) 2009 95 из 106
Henrik Kniberg, «The Manager’s Role in Scrum»
http://blog.crisp.se/henrikkniberg/2007/11/14/1195064820000.
html
«А какой у вас Agile?», (с) 2009 96 из 106
«А какой у вас Agile?», (с) 2009 97 из 106
III. Внешние обстоятельства
Объективные
Надо же было и здесь что-то
перечеркнуть
«А какой у вас Agile?», (с) 2009 98 из 106
1. Быстрое масштабировани
е бизнеса
2. Поддержкаlegacy-систем
3. Однотипное низко-
квалифицированное кодирование
(например, «формочкодельство»)
4. Корпоративна
я культура, специализация по отделам и
т.д.
«А какой у вас Agile?», (с) 2009 99 из 106
http://www.infoq.com/interviews/poppendieck-lean-2007
http://www.infoq.com/presentations/durnall-parkinson-thought
works-lean-it
По философии Leanв таких обстоятельствах:
Совместное планирование – это waste
Daily Scrum Meeting – это waste
Частые ретроспективы – это waste
Поте
ри
, не п
ри
носи
т п
ол
ьзы
дел
уП
оте
ри
, не п
ри
носи
т п
ол
ьзы
дел
уП
оте
ри
, не п
ри
носи
т п
ол
ьзы
дел
у
«А какой у вас Agile?», (с) 2009 100 из 106
При этом важно:
Отслеживать прохождение задачи (workflow) даже при пересечении
границ отделов
Lead Time -> min(минимизировать время полного цикла)
Ограничить количество начатой, но недоделанной работы
(WIP – Work In Progress)
«А какой у вас Agile?», (с) 2009 101 из 106
Т.е. в этих случаяхза основу процесса
лучше взять Kanban,а вовсе не Scrum
Henrik Kniberg, «Kanban vs Scrum»http://blog.crisp.se/henrikkniberg/2009/04/03/1238795520000.html
http://blog.crisp.se/henrikkniberg/2009/05/29/1243594140000.html
«А какой у вас Agile?», (с) 2009 102 из 106
«А какой у вас Agile?», (с) 2009 103 из 106
Background
Два жизнеописания
Характерные черты
Кто виновати что делать
Заключение●
«А какой у вас Agile?», (с) 2009 104 из 106
Источник: http://www.crisp.se/futureofagile/slides/henrikkniberg
«А какой у вас Agile?», (с) 2009 105 из 106
Кол-во предписанныхпрактик/ролей/артефактов
Кол-во действ-но полезныхпрактик/ролей/артефактов
RUP (120+)
XP (13)
Scrum (9)
Kanban (3)
Code-&-Fix (1)Do Whatever
Демонстрации
Vision, UML, …
Unit-тесты, CI,Refactoring, …
Если ничего не менять,
деградирует сюда
Уж лучше
Kanban!
Неустойчивое состояние! Устойчиво
е состояние!
Release notes, Test cases, …
«А какой у вас Agile?», (с) 2009 106 из 106
team.custis.ru
Вопросы? / Возражения?
Спасибо за внимание!
Данную презентацию
и много другого
интересного можно найти
по этому адресу
Связь с автором: