Канбан. Альтернативный путь в Agile - [11]
Снижайте количество незавершенных задач и делайте частые релизы
В 2004 году я работал с двумя командами в Motorola. Обе они разрабатывали сетевую часть бэкэнд-приложения для мобильных телефонов. Одна команда работала над сервером для «скачивания по воздуху» (over-the-air, OTA) рингтонов, игр и других приложений и данных. Вторая разрабатывала сервер для управления устройствами «по воздуху» (OTA DM). Обе команды руководствовались методологией Feature Driven Development (FDD). Обе были примерно одного размера – человек восемь разработчиков, один архитектор, до пяти тестировщиков и менеджер проекта. Работая совместно с маркетологами, команды сами проводили анализ и проектирование. Обеим командам помогали отдельные команды проектирования пользовательского взаимодействия (UX) и разработки пользовательской документации (технические писатели).
Незавершенные задания (WIP), время выполнения и ошибки
На рис. 3.1 демонстрируется кумулятивная диаграмма потока для команды, занимавшейся закачкой ОТА. Кумулятивная диаграмма потока – это зонированный график, который отражает объем работы в определенном состоянии. Состояния, показанные на диаграмме, – это бэклог, то есть объем работы, который заведен в учетную систему, но очередь до него еще не дошла. «Начатое» – это когда требования к функционалу обсуждались с разработчиками; «спроектированное» – то есть для функции разработана ML-диаграмма последовательности; «разработанное» – то есть функционал разработан в соответствии с диаграммой последовательности; «завершенное» – то есть все модульные тестирования пройдены, код прошел рецензирование и был принят ведущими разработчиками и передан на тестирование.
.
Рис. 3.1. Кумулятивная диаграмма потока (КДП) команды закачек OTA (осень 2003 – зима 2004 гг.)
Первая линия на диаграмме показывает количество функций в масштабе проекта. Этот объем был разделен владельцами бизнеса на две части. Вторая линия показывает количество начатых функций. Третья линия – число спроектированных, четвертая – разработанных, а пятая – количество завершенных и готовых к тестированию функций.
Вертикальная разница между второй и пятой линиями в любой выбранный день показывает количество незавершенных задач, а горизонтальная дистанция между второй и пятой линиями показывает среднее время выполнения с момента начала работы над функцией до дня ее сдачи. Важно заметить, что горизонтальное расстояние – это среднее, а не конкретное время выполнения для конкретной функции. Кумулятивная диаграмма потока не показывает конкретных функций. Пятьдесят пятая начатая функция может быть тридцатой законченной. Никакой связи между линией на оси у и конкретной функцией из бэклога нет.
Команде сервера закачек ОТА не хватало либо дисциплины, либо мотивации для использования метода FDD. Они не работали совместно, как требует FDD, а выдавали большие порции функций на откуп индивидуальным разработчикам. Обычно на одного разработчика у них в любое время приходилось до десяти функций. А команда по разработке OTA DM следовала методам, изложенным в учебнике. Они хорошо работали в сотрудничестве и разрабатывали модульные тесты для 100 % своих функций. И самое важное – они трудились над небольшим количеством функций одновременно, обычно это было 5–10 функций в работе для всей команды в любой момент.
Целевым ориентиром для функции в FDD является 1,6–2,0 функционального очка кода.
У команды по разработке сервера закачек OTA, находившейся в Сиэтле, среднее время выполнения составляло примерно три месяца на функцию от начала работы до сдачи ее для интеграционного теста команде из Шампейна (рис. 3.1).
У команды по разработке OTA DM среднее время выполнения колебалось от 5 до 10 дней, что показано на рис. 3.2. Разница в исходном качестве, измеряемом в количестве ошибок в системном или интеграционном тесте, превысила 30 раз. Команда по разработке OTA DM продемонстрировала изначальное качество на уровне лидеров индустрии – две или три ошибки на 100 функций, а команда по разработке сервера закачек OTA продемонстрировала средний по индустрии результат – около двух ошибок на функцию.
Рис. 3.2. Кумулятивная диаграмма потока (КДП) команды управления устройствами OTA (зима 2004 года)
Из этих диаграмм можно сделать вывод, что количество незавершенных задач непосредственно связано с временем выполнения. Рис. 3.2 явно демонстрирует, что с сокращением числа незавершенных задач уменьшается и время выполнения. На пике среднее время выполнения составляет 12 дней. Позднее в проекте, когда незавершенных задач становится меньше, среднее время выполнения сокращается до четырех дней.
Существует причинно-следственная связь между количеством незавершенных задач и средним временем выполнения, и эта зависимость линейна. В производстве эти отношения известны как закон Литтла. Пример двух команд из Motorola предполагает наличие корреляции между увеличением времени выполнения и снижением качества. Похоже, что увеличение времени выполнения оборачивается существенно худшим качеством. В нашем случае увеличение среднего времени выполнения в 6,5 раза повлекло за собой более чем тридцатикратное увеличение первичных ошибок. Более долгое время выполнения связано с увеличением количества незавершенных задач. После выявления этого примера я стал использовать незавершенные задания как средство контроля качества и убедился в наличии взаимосвязи между их количеством и исходным качеством кода. Однако на момент написания этой книги не существует научных подтверждений этого эмпирически полученного результата.

Пособие, адресованное широким кругам молодежи, является своеобразным путеводителем по научно-фантастической литературе. Оно знакомит с наиболее значительными в проблемно-тематическом и идейно-художественном отношении произведениями отечественной и зарубежной научной фантастики, помогает ориентироваться в ее разнообразии, правильно выбирать и оценивать конкретные произведения. Имеется указатель заглавий художественных произведений и сборников.

Перед Вами статья из особого сборника, в котором есть сведения не только о самых богатых людях современности, но и тех, кто явился «основоположниками» данной категории населения, - исторические личности, основатели крупнейших богатейших компаний и т. д Этот цикл статей посвящен создателям всемирно известных брендов, самыми богатыми людям в своих узких кругах, например - спортсмены, актеры, политики. И, конечно же, в этом списке нашли свое место российские олигархи и бизнесмены.Одни мечтают стать богатым и жить в достатке, другие порицают людей, которые стремятся к личному материальному успеху.

Перед Вами статья из особого сборника, в котором есть сведения не только о самых богатых людях современности, но и тех, кто явился «основоположниками» данной категории населения, - исторические личности, основатели крупнейших богатейших компаний и т. д Этот цикл статей посвящен создателям всемирно известных брендов, самыми богатыми людям в своих узких кругах, например - спортсмены, актеры, политики. И, конечно же, в этом списке нашли свое место российские олигархи и бизнесмены.Одни мечтают стать богатым и жить в достатке, другие порицают людей, которые стремятся к личному материальному успеху.

Перед Вами статья из особого сборника, в котором есть сведения не только о самых богатых людях современности, но и тех, кто явился «основоположниками» данной категории населения, - исторические личности, основатели крупнейших богатейших компаний и т. д Этот цикл статей посвящен создателям всемирно известных брендов, самыми богатыми людям в своих узких кругах, например - спортсмены, актеры, политики. И, конечно же, в этом списке нашли свое место российские олигархи и бизнесмены.Одни мечтают стать богатым и жить в достатке, другие порицают людей, которые стремятся к личному материальному успеху.

Перед Вами статья из особого сборника, в котором есть сведения не только о самых богатых людях современности, но и тех, кто явился «основоположниками» данной категории населения, - исторические личности, основатели крупнейших богатейших компаний и т. д Этот цикл статей посвящен создателям всемирно известных брендов, самыми богатыми людям в своих узких кругах, например - спортсмены, актеры, политики. И, конечно же, в этом списке нашли свое место российские олигархи и бизнесмены.Одни мечтают стать богатым и жить в достатке, другие порицают людей, которые стремятся к личному материальному успеху.

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.