— Мне нужно будет протестировать это, — сказал Прасад. — Времени на такую задачу потребуется немного, но это первый код нынешнего проекта, и я хочу удостовериться, что все делаю правильно. Я хочу сказать, что тестирование займет 10 часов.
Он заполнил карточку задачи 23.2.
— Карлос, в прошлый раз ты говорил, что мне нужно разбить работу на небольшие части, — сказал Аллан. — Я ведь не могу сказать, что разработка генератора ходов для колец займет две недели, так ведь?
— Да, не можешь. При идентифицировании задач нам нужно держать их в пределах от одного до 16 часов. В идеале следует стремиться к тому, чтобы выполнять по одной задаче каждый день; иначе говоря, на них в среднем должно уходить пять-шесть часов, поскольку у нас всегда есть другие повседневные задачи.
— В таком случае, — произнес Аллан, — я сначала сделаю генератор ходов, который сможет разыгрывать шесть шестиугольников подряд, чтобы составить кольцо. Противника, пытающегося помешать генератору, не будет. Генератор начнет ходить со случайной клетки и пытаться построить кольцо за шесть ходов. Потом я доработаю его так, чтобы он мог строить кольца, даже если противник будет пытаться блокировать их. После этого я переключусь на защитную стратегию и попробую сделать генератор, который научится блокировать действия игрока, пытающегося построить кольцо. Думаю, для этой истории этого хватит.
— Тогда я пишу такую карточку задачи: «Создать генератор ходов, который может построить кольцо в отсутствие блокировок». Именно это ты собираешься делать в первую очередь, — сказала Саша.
— Пожалуй, на это у меня уйдет львиная доля дня. Поставь, пожалуйста, на карточке шесть часов, — попросил Аллан.
— Аллан, без обид, ты всегда чересчур оптимистичен перед началом разработки нового генератора ходов, — заметила Роуз, художник.
— Да, есть такое. Давайте лучше удвоим оценку, — согласился Аллан.
Саша зачеркнула «шесть» на карточке и поставила 12.
Карлос руководил обсуждением оценок остальных задач, идентифицированных Алланом. «Есть ли еще неидентифицированные задачи для этой истории?» — спросил он.
— Не забывайте, что нужно еще время на тестирование! — сказал Прасад. — Если Аллан будет давать мне код после выполнения каждой из идентифицированных им задач, то я смогу определять и автоматизировать тесты одновременно с ним. О выявленных ошибках он будет узнавать, пока информация о коде еще не выветрилась у него из головы. Я написал задачи на карточках, пока Аллан рассказывал, как он будет работать, но они еще не оценены. Может быть, сделаем это вместе?
Когда члены команды закончили обсуждение истории «Как игрок я могу играть против слабого движка, распознающего только кольца», они представили карточки задач с оценками (табл. 23.7).
— В этой итерации порядка 84 часов. Работа распределена между Алланом, Сашей и Прасадом, — сказал Карлос. — Исходя из того, что я видел здесь в течение двух дней, думаю, нам следует рассчитывать на шесть часов продуктивной работы в день на человека. Оставшаяся часть дня уходит на переписку, переговоры с другими проектными командами, ежедневные совещания и т. п. плюс полдня каждые две недели, затрачиваемые на планирование.
— Шесть, на мой взгляд, нормально.
— На мой тоже. Может быть, даже ближе к пяти, но я постараюсь, чтобы в этом проекте было шесть. Думаю, это реально, если отказаться от некоторых мелочей, которые каждый день съедают время, — сказала Саша.
— Теперь, когда вы разбили первую историю на задачи, — сказал Карлос, — вам нужно задаться вопросом, готовы ли вы взять обязательство реализовать эту историю.
— Историю или задачи? — спросил Фрэнк. — В отношении чего мы должны взять обязательство?
— Хороший вопрос, Фрэнк, — заметил Карлос. — Вы берете обязательство в отношении истории. Задачи идентифицировались как способ определить, какой объем работы предстоит сделать, и помочь взять обязательство. Поскольку обязательство берется в отношении истории, а не задач, важно, чтобы вы думали о нем как об обязательстве всей команды. Я не хочу, чтобы в конце итерации Саша сказала, что она сделала свою часть работы, связанной с классами управления состоянием, а Аллан нет. Это не приводит ни к чему хорошему. Вы можете думать о задачах, но обязательства принимаете в отношении историй.
Читать дальше
Конец ознакомительного отрывка
Купить книгу