Это на самом деле вопрос к вам, ниже попробую описать свое текущее понимание происходящего.
Классический подход подразумевает всего два (три) бэклога - продукта, итерации и бэклог проблем (impediments backlog - немного частный случай, так как содержит проблемы, а не истории пользователей).
Владелец продукта, являясь полноправным владельцем бэклога продукта, расставляет приоритеты историй, исходя из из ценности для разрабатываемого продукта (обычно также используется предварительная оценка трудоемкости).
Далее на митинге планирования итерации в бэклог итерации попадают верхние элементы бэклога продукта (наиболее приоритетные), укладывающиеся в скорость разработки команды.
Вроде все понятно, но.
Важно также знать, какая у нас цель релиза, какую функциональность мы добавим к продукту и когда этот релиз будет доступен пользователям (если кол-во итераций в релизе нефиксировано). Цель релиза и планируемая функциональность особенно важны для условий распределенной разработки, когда общение ограничено и очень важно иметь общее видение проекта членами команды.
Таким образом, добавляется еще бэклог релиза, которым так же управляет владелец продукта и который наполняется на основе скорости разработки команды.
А что если у нас продуктовая разработка? И мы настолько гибки и зрелы, что даем пользователям добавлять сообщения об ошибках и предложения новых фич прямо в нашу систему управления разработкой продукта?
Если эти истории пользователей будут попадать в бэклог продукта, то владелей продукта будет просто не в состоянии управлять этим бэклогом.
Получается нужен еще один список историй, user backlog (не нашел такого термина в гугле) или wishlist - в который изначально попадают новые истории пользователей. Владелец продукта просматривает эти истории и, например, утверждает их, т.е. они попадают в бэклог продукта и будут отправлены в разработку.
Итого получилось 4 + 1:
User backlog - Product backlog - Release backlog - Iteration backlog (+ Impediments backlog)
На первый взгляд кажется много, но зато это дает более ясную картину проекта, особенно распределенного, когда общение с владельцем продукта и вообще внутри команды из-за разницы во времени и месте осуществляются в значительной части через среду управления проектом.
понедельник, 18 августа 2008 г.
Сколько бэклогов нужно распределенному Agile проекту?
Подписаться на:
Комментарии к сообщению (Atom)

3 коммент.:
Ну, это ты, Дима, погорячился. Я думаю это больше похоже на отсебятину. Не учи людей плохому.
Есть два беклога продакт и итерейшен. И всё. Как ни крути - только два.
Спасибо за отзыв, попробую привести немного аргументов в пользу своей точки зрения :)
Немного погуглил на тему бэклога релиза:
- XP planning game: http://www.extremeprogramming.org/rules/planninggame.html
- Блог Agile тренеров: http://www.think-box.co.uk/blog/2006/04/release-planning.html
А насчет бэклога с историями от пользователей продукта - давай подумаем. Если все они без разбора (читай Предварительной модерации) будут попадать в основной бэклог продукта, то с этим бэклогом просто невозможно будет управляться - слишком много разнородной входящей информации, а бэклогом продукта должен управлять один человек.
Истории от пользователей должны фильтроваться, классифицироваться, получать свою важность (от 1 до 100) product owner'ом и попадать в product backlog. Если пользователи не важны или предлагаемые история не стоят свеч, то они просто должны быть выкинуть изначаль. Нечего нести в дом мусор, его и так там хватает )))
Отправить комментарий