Здесь я нахожусь в процессе определения и оценки относительно небольшого нового проекта разработки программного обеспечения. Я ознакомился с пользовательскими историями, предложенными заказчиком, и поставил перед ними задачи с оценкой и некоторыми краткими заметками о том, как эта задача будет выполнена. Есть критерии приемки. Все должно быть хорошо с миром.
Глядя на работу, которую я планировал, я понял, что чего-то не хватает. Будут начальные затраты на простую настройку вещей, в которые мы можем добавить функциональность. Вещи, которые принадлежат всем пользовательским историям, а не одной конкретной пользовательской истории.
Например, частью этого приложения является служба, которая анализирует XML. С точки зрения пользователя, есть конкретные истории, в которых нужно будет делать разные вещи в зависимости от содержания XML. На самом деле написание синтаксического анализатора XML - биты, которые ищут файл, читают его и извлекают соответствующие данные, прежде чем решить, что делать с содержимым, - являются частью всех этих историй. Как и завершение его в службе Windows с помощью установщика и т. Д. Это задача, ориентированная на разработчика и не имеющая прямого отношения к пользователю.
Другим важным примером из этого конкретного приложения является взятие и перезапись блока устаревшего кода, который полезен для функций этого приложения. Опять же, это не имеет непосредственных результатов для пользователя, но это необходимая работа. Где планирование и выполнение этой работы «живут» в плане проекта, сфокусированного на пользовательских историях?
Я видел, как люди решали эту проблему, написав пользовательские истории «Как разработчик, я хочу…», но, как уже говорилось в других местах, это не пользовательская история. Это разработчик.
Я ищу конкретный ответ на этот вопрос, чтобы помочь мне (и другим) планировать проекты с использованием строгих систем управления, таких как TFS онлайн. Они, как правило, не имеют функции создавать «истории заинтересованных сторон» или другие расплывчатые мета-решения, упомянутые в ответах на вопрос « Как команда Scrum учитывает инфраструктурные задачи на совещании по планированию?