Этот набор вопросов пытается найти лучший ответ на вопрос о том, как настроить области и итерации TFS 2012 с помощью Scrum 2.
Контекст: Мы использовали Team System с TFS 2005 и изначально создали Team Project для каждого продукта, который у нас есть, а затем использовали шаблон процесса MSF 4.2, который мы в конце концов немного изменили (добавили несколько полей к некоторым типам рабочих элементов).
Переходите к сегодняшнему дню, и теперь мы запускаем TFS 2012 и VS 2012. Принимая во внимание прошлый опыт и отзывы сообщества, мы перейдем к единому Team Project и Scrum 2.1, а затем будем использовать области для разделения продуктов и команд. Следующие ссылки хорошо читают этот подход:
- http://blog.hinshelwood.com/when-should-i-use-areas-in-tfs-instead-of-team-projects-in-team-foundation-server-2010/
- Области TFS, оптимальное определение и настройка
- Team Foundation Server - Область/Итерация
Типичный макет, который мы планируем применять для областей, будет следующим образом:
-> Team Project (Area root)
|--> Client A (This is also out team boundary - ie. we have a TFS Team for Client A)
|---> Product A
| |---> Feature Area 1
| |---> Feature Area 2
| |---> Feature Area 3
|
|---> Product B
| |---> Feature Area 1
| |---> Feature Area 2
|
| (ETC)
|--> Client B (This is also out team boundary - ie. we have another TFS Team for Client B)
|---> Product C
| |---> Feature Area 1
| |---> Feature Area 2
|
| (ETC)
Концептуально мы довольны приведенным выше, так как это логично для нашей среды. Согласно вышеизложенному, у нас были бы команды: * "Команда клиента" * "Команда клиента B"
Вопрос 1) Мы поняли, что, поскольку наши команды не так велики и делают администрацию более управляемой, мы не хотим определять команды на продукт, так как мы физически имеем команды на каждого клиента и они контролируют все продукты для этого клиента. Это ошибка, или это нормально?
Вопрос 2) Предполагая, что указанная выше конфигурация команды в порядке, мы затем исправим, чтобы "сопоставить" каждую из вышеперечисленных областей с каждой командой, т.е. для команды "Клиентская команда" укажите область "Клиент" A "(и всех подзонах) в качестве областей, которыми должна обладать эта команда. Как насчет области по умолчанию, нормально ли установить корень из области" Клиент А" как по умолчанию для команды?
Что касается макета итераций, мы планируем нечто подобное:
-> Team Project (iteration root)
|--> Client A (This is also out team boundary - ie. we have a TFS Team for Client A)
|---> Product A
| |---> Release 1
| | |---> Sprint 1
| | |---> Sprint 2
| | |---> Sprint 3
| |
| |---> Release 2
| | |---> Sprint 1
| | |---> Sprint 2
| | |---> Sprint 3
| |
| |---> Release 3
|
|---> Product B
| |---> Release 1
| | |---> Sprint 1
| | |---> Sprint 2
| |
| |---> Release 2
| | |---> Sprint 1
| | |---> Sprint 2
|
| (ETC)
|--> Client B (This is also out team boundary - ie. we have another TFS Team for Client B)
|---> Product C
| |---> Release 1
| | |---> Sprint 1
| | |---> Sprint 2
| |
| |---> Release 2
| | |---> Sprint 1
| | |---> Sprint 2
|
| (ETC)
Вопрос 3) Это кажется более сложным для правильной итерации, особенно когда речь заходит о TFS, показывающем отставание. В частности, для установки Tter Scrum 2 Iteration кажется, что я должен выбрать (флажок) только те итерации уровня листа, которые предназначены для планирования и последующей разработки. Поэтому, расширяя приведенный выше пример, возможно, что "Клиентская команда" будет доступна для начала работы над новым продуктом B в течение следующих 4 недель (предположим, 2-недельные спринты). Не могли бы мы тогда выбрать (флажок) "Sprint 1" и "Sprint 2" из Release 1? Я правильно понимаю/использую его?
Вопрос 4) Групповое отставание Выбор итерации - это может быть проблематично из-за нашей концепции наличия команд для каждого клиента, а не для каждого продукта, но, возможно, я просто понимаю, что это неправильно. В настройках TFS Areas вы указываете, какой итерацией является "Итерация отставания для команды". Моя проблема заключается в том, что наши PBI (Product Backlog Items) будут специфичными для продукта и не хотят смешивать их с PBI из другого продукта. Так что я пока не могу понять, каково будет влияние, если мы выберем область "Клиент А" как "Итерацию отставания для команды", а не "Продукт Б". Я думаю, что я запутался здесь - что было бы разумным выбором?
Из вышеизложенных вопросов вытекает, что я не понимаю, какое влияние эти выборы для итераций, областей, итераций задержек команды и областей по умолчанию будут иметь для каждой команды TFS 2012. Некоторые проблемы, с которыми я столкнулся с этой настройкой, - это то, что TFS корректно идентифицирует отставание продукта и отставание от отставания для команды.
Я не знаю, имеет ли один командный проект и несколько областей для продуктов (как это обычно рекомендуется) усложняет проблему.
Вопрос 5) Веб-сайт TFS для веб-сайта. Для любой команды в разделе "РАБОТА | рабочие элементы | Общие запросы" есть предопределенные запросы в папке "Текущий спринт" (Заблокированные задачи; и т.д.), но кажется, что эти запросы жестко запрограммированы против "Root Project\Release 1\Sprint 1" - если они не будут автоматически обнаруживать, что является текущим спринтом, учитывая даты, определенные для итераций? Если нет, то какова наилучшая практика для поддержания этих запросов?
Знаете ли вы о каких-либо качественных TFS 2012 и Scrum 2, которые могут помочь решить эти вопросы или дать некоторые рекомендации по успешной настройке Scrum 2 TFS?