Шаблон Agile в TFS2010 и TFS2012

После всех описаний существующего шаблона и модификаций для TFS2010, сподобился посмотреть, как это все выглядит в новом TFS, тем более что совсем недавно вышел Release Candidate и его можно поставить локально, чем я и занялся на досуге. Результатом был приятно удивлен.

Вместе с TFS2012 RC вышел и TFS Power Tools для него, что позволяет наглядно отобразить схему перехода состояний. Схема работы с TFS Power Tools не изменилась, так что сразу перейдем к рассмотрению различий.

Первое, что бросается в глаза, это более широкий набор рабочих элементов.

Некоторые элементы были переименованы, некоторые ушли, некоторые появились, рассмотрим, как элементы из TFS2010 соответствуют элементам из TFS2012:

Назначение TFS2010 TFS2012
Основной рабочий элемент, единица работы. Task Task
Запрос на новый функционал, бизнес-история. User Story Product Backlog Item
Баг Bug Bug
Затруднение в работе Issue Impediment
Тестовый сценарий Test Case Test Case
Общие шаги для тестовых сценариев Shared Steps Shared Steps

Теперь рассмотрим как и прежде основные, на мой взгляд, рабочие элементы. Начнем с User Story.

User Story – Product Backlog Item

Напомню, как он стал выглядеть в результате наших модификаций в TFS2010.

Большая версия картинки здесь.

В этом сценарии у нас 8 возможных состояний:

  • New
  • Analysis
  • Ready For Dev
  • Hold
  • Work In Progress (WIP)
  • Resolved
  • Published
  • Closed

Посмотрим, что нам предлагает новый шаблон Agile для логически идентичного элемента Product Backlog Item.

В этом сценарии 5 состояний:

  • New
  • Approved
  • Committed
  • Done
  • Removed

Быстрый анализ показывает, что новый сценарий содержит 2 терминальных состояния (Removed, Done), в то время как наш только одно (Closed). Я считаю, что это хорошая идея и ее стоит перенести/реализовать в сценарии для TFS2010. Данный подход позволяет быстрее оценить причину закрытия задачи. Сейчас думаю, что странно, как много времени я уделил начальным состояниям и недостаточно конечным.

В новом сценарии все так же нет индикатора о заморозке работ над историей. Это в целом странно, так как функционал полезный, позволяет быстрее обратить внимание на историю при работе. Несмотря на наличие специальных элементов в общем шаблонах (Issue и Impediment), которые будут созданы и проассоциированы с историей, сама история никак не говорит о своем состоянии.

Дальнейшие состояния в новом процессе идентичны:

  • New > New
  • Approved > Ready For Development
  • Committed > WIP

Хочу обратить внимание на еще несколько особенностей

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

Еще одной особенностью, можно сказать сокращение полей из пространства имен Microsoft.VSTS.*.

Сравним с тем, что было в TFS2010

И стало в TFS2012

 

Что же в итоге, я так думаю, что стоит добавить терминальных состояний в шаблон TFS2010, а так же добавить/переименовать состояния Published Cons и Published Prod. Так как отслеживать по датам или выписывать вручную последние изменения, реализации историй было бы слишком утомительно. Т.е. финальный вариант состояний может выглядеть следующим образом:

  • New
  • Analysis
  • Ready For Dev
  • Hold
  • Work In Progress (WIP)
  • Resolved/In testing
  • Published Cons
  • Done (равносильно публикации на боевом сервере, выпуск в релиз)
  • Removed
  • Splited

 

 

Task

Начнем снова с рассмотрения того, как получилось в TFS2010.

В наличии 6 состояний, из них 2 терминальных:

  • Proposed
  • Active
  • Hold
  • Resolved
  • Closed
  • Abandoned

Рассмотрим теперь схему из нового шаблона TFS2012

Тут мы видим 4 состояния, 2 из которых терминальные.

  • To Do
  • In Progress
  • Done
  • Removed

Что ж, опять на мой взгляд, может не хватать состояния Hold. В остальном в целом все так же, кроме того, что состояние Done расщепилось на два в случае для TFS2010. С одной стороны я склоняюсь к тому, чтобы заменить Resolved\Closed в Done, так как некоторые задачи сразу переводятся в состояние Closed, и нет тестирования некоторых задач либо они не могут как-либо проверяться. С другой стороны для задач может требоваться Code Review, тогда состояние Resolved как раз обозначает его необходимость.

Bug

Опять начнем с того, вспомним, как данный элемент выглядел в TFS2010.

Большой размер картинки здесь

Всего 7 состояний и одно терминальное:

  • Proposed
  • Analysis
  • Active
  • Resolved
  • Published
  • Closed

И для сравнения то, что предложено в новой версии:

5 состояний, 2 терминальных:

  • New
  • Approved
  • Committed
  • Done
  • Removed

В целом больше похоже на User Story, наверно. Нет состояния для индикации проверки бага, что может занять достаточно продолжительное время. Так же не совсем уверен насчет двух терминальных состояний. Хотя с другой стороны будет легче анализ на присутствие псевдо-багов, ложных срабатываний.

 

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

 

Hard’n’Heavy!

 

Violet Tape

Оставить комментарий