пятница, 6 мая 2011 г.

TFS Integration Platform

TFS Integration Platform позволяет мигрировать данные между различными системами контроля версия и системами баг-трекинга. Например, TFS Integration Platform позволяет мигрировать данные между такими системами, как TFS 2008/2010, SVN, VSS, IBM Clear Case, IBM Clear Quest, HP QualityCenter и др.


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


Некоторые возможности утилиты TFS Integration Platform:

1. Возможность задания поля-источника и поля-получателя. Необходимо учитывать, чтобы тип полей был совместим.
Пример:
<MappedFields>
    <MappedField LeftName="headline" RightName="System.Title" MapFromSide="Left" valueMap="" />
    <MappedField LeftName="owner" RightName="System.AssignedTo" MapFromSide="Left" valueMap="" />
    <MappedField LeftName="description" RightName="Microsoft.VSTS.TCM.ReproSteps" MapFromSide="Left" valueMap="" />
    <MappedField LeftName="actual_results" RightName="Microsoft.VSTS.CMMI.Symptom" MapFromSide="Left" valueMap="" />
</MappedFields>

2. Перенос связей между рабочими элементами. Т.е. если у вас в одной системе есть связь между двумя задачами, то эта связь сохраняется при миграции этих задач в TFS

3. Перенос имён пользователей, включая доменные учётные записи. Если рабочий элемент назначен доменной учётной записи, при миграции в TFS эта информация сохраняется. Можно задать правило, по которому при миграции какая-либо учётная запись будет заменятся на другую.

4. Агрегирование полей. При миграции можно настроить правило, по которому в одно поле будут перенесены данные из нескольких полей, разделённых заданным текстом, если это необходимо.
Пример:
<AggregatedFields>
  <FieldsAggregationGroup MapFromSide="Left" TargetFieldName="Microsoft.VSTS.TCM.SystemInfo" Format="Bug Version: {0} &#x0D; Bug Build: {1} &#x0D; Bug Module: {2} &#x0D; Bug Program: {3} &#x0D; Bug Language: {4}" >
    <SourceField Index="0" SourceFieldName="bug_module_ver" />
    <SourceField Index="1" SourceFieldName="bug_module_builld" />
    <SourceField Index="2" SourceFieldName="bug_module" />
    <SourceField Index="3" SourceFieldName="bug_program" />
    <SourceField Index="4" SourceFieldName="bug_language" />
  </FieldsAggregationGroup>
</AggregatedFields>

где тэг "&#x0D;" ставится для перехода на новую строку.

5. Перенос файлов, прикреплённых к рабочим элементам.

6. Возможно задание маппинга полей. Т.е. чтобы при миграции одно значение заменялось на другое. Например: если вы переносите из ClearQuest в TFS поле State (Состояние), вы можете настроить правило, по которому будут заменяться значения "Opened" > "Active", "Submitted" > "Proposed", "Done" > "Resolved" и т.п.
Пример:
<MappedFields>
    <MappedField LeftName="State" 
        RightName="System.State" 
        MapFromSide="Left" 
        valueMap="StateMap" />
</MappedFields>
<ValueMap name="StateMap">
    <Value LeftValue="Resolving" RightValue="Proposed" />
    <Value LeftValue="Getting_Info" RightValue="Active" />
    <Value LeftValue="Modelling" RightValue="Active" />
    <Value LeftValue="Eliminating" RightValue="Active" />
    <Value LeftValue="Testing" RightValue="Resolved" />
    <Value LeftValue="Closed" RightValue="Closed" />
    <Value LeftValue="Shipment" RightValue="Closed" />
</ValueMap>

7. Для мигрированного рабочего элемента задание для поля значения по умолчанию.
Например, вы переносите сущность Feature (из CQ) в Requirement (в TFS). Вам необходимо для созданного в TFS рабочего элемента задать значение поля Requirement Type равным Feature, делается это как показано в примере ниже.
Пример:
<MappedFields>
    <MappedField LeftName="@@MissingField@@" 
        RightName="Microsoft.VSTS.CMMI.RequirementType" 
        MapFromSide="Left" 
        valueMap="DefaultRequirementType" />
</MappedFields>
<ValueMap name="DefaultRequirementType">
    <Value LeftValue="" RightValue="Feature" />
</ValueMap>


Советую использовать эту утилиты, т.к. её возможности очень широкие.


TFS Integration Platform скачать можно здесь.


Комментариев нет:

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