Поделиться через


Обновление рабочего процесса для командных проектов Agile

После настройки функции для обновленного командного проекта, который был создан на основе шаблоном процесса Microsoft Solutions Framework (MSF) для гибкой разработки программного обеспечения, необходимо вручную обновить назначения рабочего процесса пользовательских историй и задач.Если не обновить рабочий процесс, совет задачи является только 2 состояния, Активно и Закрыто, как показано на следующем рисунке.Это позволяет выполнять и требованиями команды из отличия между задачами, выполняется от тех, которые не были запущены.

Совет задачи для проекта гибкой команды без рекомендуемых обновлений руководства

Доска задач для необновленного командного проекта Agile

Обновления, выполненные мастером настройки компонентов, были внесены для соответствия существующему рабочему процессу, определенному для командного проекта.Для версии 5.0 шаблона процесса MSF для гибкой разработки это означает, что не представлены новые и удаленные состояния, внедренные в последнюю версию.Эти состояния поддерживают переход описания функциональности пользователей из нового состояния в активное состояние.Без указанного нового состояния Описание функциональности пользователей, назначенное для того, чтобы итерация оставалась в невыполненной работе до тех пор, пока она не будет разрешена, что не является необходимым или ожидаемым поведением.

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

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

ПримечаниеПримечание

Можно выполнить некоторые процедур, описанные ниже, используя редактора процессов, надстройку инструментальных средств Visual Studio, которую можно загрузить и установить.Расположенный в меню Сервис редактор процессов предоставляет графический пользовательский интерфейс для настройки шаблонов процессов Team Foundation Server.Можно использовать это средство для импорта и экспорта типов рабочих элементов и для модификации содержимого шаблонов процесса.Дополнительные сведения см. на следующей странице веб-сайта Microsoft: Team Foundation Server Power Tools.

Требования

  • Для запуска средств командной строки witadmin необходимо быть членом одной из следующих групп: Администраторы Team Foundation, Администраторы коллекций проектов, or Администраторы проектов для командного проекта.Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

Обновление рабочего процесса и метасостояния для командных проектов для гибкой разработки

Важное примечаниеВажно

В этом разделе процедуры записи на основе MSF для гибкая разработка программного обеспечения 6,0.Чтобы обновить командный проект поддерживать последний заданный рабочий процесс MSF для гибкая разработка программного обеспечения 6,1, можно адаптировать эти процедуры вместо для копирования разделы WORKFLOW последнего шаблона гибкого процесса.Обновления, внесенные в рабочий процесс для нескольких типов рабочих элементов в самом последнем ежеквартальном обновления.Поддержка этих изменений обратно преобразует таким образом, чтобы при случайно перетащите рабочего элемента на доске канбана доске или задачи или не разрешено в закрытое состояние, можно перетащить его обратно в более предыдущее состояние рабочего процесса.

Чтобы получить дополнительные сведения об обновлении см. в разделе Новые возможности планирования и отслеживания.

Чтобы получить доступ к последним версий шаблонов процессов по умолчанию, укажите ежеквартальное последнее обновление для Team Foundation Server.Можно получить обновление с сайта загрузки корпорации Майкрософт. Ежеквартальное обновление для Microsoft Visual Studio 2012 Team Foundation Server.

Необходимо выполнить следующие шаги:

  • Экспортировать определения для типов описаний и задач пользователя, а также для конфигурации процесса.

  • Вставьте фрагмент кода в разделе рабочего процесса для описаний и задач пользователя.

  • Обновите метасостояние, сопоставляя конфигурации процесса.

  • Импортируйте обновленные определения для типов рабочих элементов и конфигураций процесса.

  • Убедитесь, что изменения отображаются на доску задачи.

Важное примечаниеВажно

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

Обновления состояний рабочего процесса и переходов для описаний пользователя

  1. Для запуска инструмента командной строки witadmin откройте окно командной строки там, где установлено либо Visual Studio, либо Team Explorer и введите:

    cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
    

    В 64-разрядной версии Windows замените %programfiles% на %programfiles(x86)%.

  2. Для экспортирования определения типа для описания функциональности пользователя введите следующую команду, заменяя данные для аргументов, которые отображаются здесь, где URL_адрес_коллекции задает URL-адрес коллекции командных проектов, имя_проекта определяет имя командного проекта, указанного в коллекции и "пути_к_каталогу\имя_файла.xml" указывает имя и расположение файла для экспортирования.Затем нажмите клавишу ВВОД.

    witadmin exportwitd /collection:CollectionURL /p:"ProjectName" /n:"User Story" /f:"DirectoryPath\FileName.xml"
    

    Используйте формат для URL: **http://**имя_сервера:порт/имя_виртуального_каталога/имя_коллекции, например: http://srvalm:8080/tfs/DefaultCollection.

  3. В текстовом редакторе или в Visual Studio, откройте экспортированный файл.

  4. Добавьте этот фрагмент кода между строками <STATES> и <STATE value="Active">:

    <STATE value="New">
       <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ResolvedDate">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ResolvedBy">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
             <EMPTY />
          </FIELD>
       </FIELDS>
    </STATE>
    <STATE value="Removed" />
    
  5. Замените раздел, который начинается с <TRANSITION from=" " to="Active"> и завершается <TRANSITION> данным фрагментом кода:

    <TRANSITION from="" to="New">
       <REASONS>
          <DEFAULTREASON value="New" />
       </REASONS>
       <FIELDS>
          <FIELD refname="System.Description">
             <DEFAULT from="value" value="As a &amp;lt;type of user&amp;gt; I want &amp;lt;some goal&amp;gt; so that &amp;lt;some reason&amp;gt;" />
          </FIELD>
       </FIELDS>
    </TRANSITION>
    <TRANSITION from="New" to="Active">
       <REASONS>
          <DEFAULTREASON value="Implementation started" />
       </REASONS>
       <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
             <COPY from="currentuser" />
             <VALIDUSER />
             <REQUIRED />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
             <SERVERDEFAULT from="clock" />
          </FIELD>
          <FIELD refname="System.AssignedTo">
             <DEFAULT from="currentuser" />
          </FIELD>
       </FIELDS>
    </TRANSITION>
    <TRANSITION from="New" to="Removed">
       <REASONS>
          <DEFAULTREASON value="Removed from the backlog" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="Active" to="New">
       <REASONS>
          <DEFAULTREASON value="Implementation halted" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="Removed" to="New">
       <REASONS>
          <DEFAULTREASON value="Reconsidering the User Story" />
       </REASONS>
    </TRANSITION>
    
  6. Сохраните и закройте файл.

  7. Импортируйте файл, заменяя данные для показанных аргументов.

    witadmin importwitd /collection:CollectionURL /p:"ProjectName" /f:"DirectoryPath\FileName.xml"
    

Обновление состояний и переходов рабочего процесса для задачи

  1. Экспортируйте определение типа для задачи, заменяя данные показанных аргументов.

    witadmin exportwitd /collection:CollectionURL /p:"ProjectName" /n:"Task" /f:"DirectoryPath\FileName.xml"
    
  2. В текстовом редакторе или в Visual Studio, откройте экспортированный файл.

  3. Добавьте этот фрагмент кода между строками <STATES> и <STATE value="Active">:

    <STATE value="New">
       <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
             <EMPTY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
             <EMPTY />
          </FIELD>
       </FIELDS>
    </STATE>
    <STATE value="Removed" />
    
  4. Замените первый блок перехода, соответствующий строкам, которые попадают между <TRANSITION from="" to="Active"> и закрывающим тегом </TRANSITION> этим фрагментом кода:

    <TRANSITION from="" to="New">
       <REASONS>
          <DEFAULTREASON value="New" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="New" to="Active">
       <ACTIONS>
          <ACTION value="Microsoft.VSTS.Actions.StartWork" />
       </ACTIONS>
       <REASONS>
          <DEFAULTREASON value="Work started" />
       </REASONS>
       <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
             <COPY from="currentuser" />
             <VALIDUSER />
             <REQUIRED />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
             <SERVERDEFAULT from="clock" />
          </FIELD>
          <FIELD refname="System.AssignedTo">
             <DEFAULT from="currentuser" />
          </FIELD>
       </FIELDS>
    </TRANSITION>
    <TRANSITION from="Active" to="New">
       <ACTIONS>
          <ACTION value="Microsoft.VSTS.Actions.StopWork" />
       </ACTIONS>
       <REASONS>
          <DEFAULTREASON value="Work halted" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="New" to="Closed">
       <ACTIONS>
          <ACTION value="Microsoft.VSTS.Actions.Checkin" />
       </ACTIONS>
       <REASONS>
          <DEFAULTREASON value="Completed" />
          <REASON value="Cut" />
          <REASON value="Deferred" />
       <REASON value="Obsolete" />
       </REASONS>
       <FIELDS>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedDate">
             <READONLY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ActivatedBy">
             <READONLY />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ClosedDate">
             <SERVERDEFAULT from="clock" />
          </FIELD>
          <FIELD refname="Microsoft.VSTS.Common.ClosedBy">
          <COPY from="currentuser" />
             <VALIDUSER />
             <REQUIRED />
          </FIELD>
       </FIELDS>
    </TRANSITION>
    <TRANSITION from="Closed" to="New">
       <REASONS>
          <DEFAULTREASON value="Reactivated" />
       </REASONS>
       <FIELDS>
          <FIELD refname="System.AssignedTo">
             <COPY from="field" field="Microsoft.VSTS.Common.ClosedBy" />
          </FIELD>
       </FIELDS>
    </TRANSITION>
    <TRANSITION from="New" to="Removed">
       <REASONS>
          <DEFAULTREASON value="Removed from the backlog" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="Active" to="Removed">
       <REASONS>
          <DEFAULTREASON value="Removed from the backlog" />
       </REASONS>
    </TRANSITION>
    <TRANSITION from="Removed" to="New">
       <REASONS>
          <DEFAULTREASON value="Reconsidering the Task" />
       </REASONS>
    </TRANSITION>
    
  5. Сохраните и закройте файл.

  6. Импортируйте файл, заменяя данные для показанных аргументов.

    witadmin importwitd /collection:CollectionURL /p:"ProjectName" /f:"DirectoryPath\FileName.xml"
    

Обновление метасостояния с сопоставлением конфигураций процесса.

  1. Введите следующую команду для экспорта файла CommonConfiguration, подставив свои данные вместо показанных аргументов, и нажмите кнопку ВВОД.

    witadmin exportcommonprocessconfig /collection:CollectionURL /p:"ProjectName" /f:"DirectoryPath\CommonConfiguration.xml"
    

    Где URL_адрес_коллекции задает URL-адрес коллекции командного проекта, а имя_проекта указывает имя командного проекта.Используйте формат для URL: **http://**имя_сервера:порт/имя_виртуального_каталога/имя_коллекции, например: http://srvalm:8080/tfs/DefaultCollection.

  2. В блокноте или в другом текстовом редакторе откройте файл CommonConfiguration.xml.

  3. Найдите тег <RequirementWorkItems category="Microsoft.RequirementCategory" plural="Stories">.

  4. Замените строки <State type="Proposed" value="Active" /> этими строками:

    <State type="Proposed" value="New" /> 
    <State type="InProgress" value="Active" /> 
    
  5. Найдите тег <TaskWorkItems category="Microsoft.TaskCategory"> и замените строки <State type="Proposed" value="Active" /> этими строками:

    <State type="Proposed" value="New" />
    <State type="InProgress" value="Active" />
    
  6. Убедитесь, что имеются следующие сопоставления:

    <RequirementWorkItems category="Microsoft.RequirementCategory" plural="Stories">
       <States>
          <State type="Proposed" value="New"/>
          <State type="InProgress value="Active" />
          <State type="InProgress value="Resolved" />
          <State type="Complete" value="Closed" />
       </States>
    </RequirementWorkItems>
    <TaskWorkItems category="Microsoft.TaskCategory">
       <States>
          <State type="Proposed" value="New" />
          <State type="InProgress" value="Active" />
          <State type="Complete" value="Closed" />
       </States>
    </TaskWorkItems>
    
  7. Сохраните и закройте файл.

  8. Импортируйте файл конфигурации.

    witadmin importcommonprocessconfig /collection:CollectionURL /p:ProjectName /f:"DirectoryPath\CommonConfiguration.xml" 
    

Проверить, что изменения отображаются на доску задачи

  1. Открытие Team Web Access и подключитесь к командному проекту с помощью URL-адреса, который имеет следующий формат:

    http://MyServer:8080/tfs/TeamProjectCollectionName/MyProject
    

    Если TWA уже открыт, обновите в браузере, чтобы обновить кэш.

  2. Убедитесь, что столбцы доски задачи теперь отображается Создать, Активно и Закрыто.

    Совет задачи для проекта гибкой команды с обновленными состояний рабочего процесса

    Доска задач Agile с обновленным рабочим процессом

    Дополнительные сведения об использовании доски задач см. в разделе Выполнение итерации.

См. также

Основные понятия

Гибкое планирование и итерации

Обновление обновленного командного проекта для доступа к новым функциям