::Configurando Team Projects com Enterpriste Projects e mapeando Work Itens::
Executar o prompt de comando como administrador e acessar o caminho:
C:/Program Files (x86 )/Microsoft Visual Studio 10.0/Common7/IDE/ Executar a seguinte linha de commando:
TfsAdmin ProjectServer /MapPlanToTeamProject /collection:http://AdventureWorksServer:8080/tfs/Collection0 /enterpriseproject:MyEnterpriseProjA /teamproject:MyTeamProjB /workitemtypes:"User Story,Task"
Substituindo http://AdventureWorksServer:8080/tfs/Collection0 pelo endereço do servidor de TFS seguindo da Collection principal, MyEnterpriseProjA pelo nome do Projeto que esta publicado no Project Server 2010, MyTeamProjB pelo nome do Team Project que vai sincronizar no TFS 2010 e em workitemtypes colocar os itens que quer sincronizar, sem as aspas.
Para projetos CMMI geralmente esses são os workitens utilizados: Bug, Change Request, Issue, Requirement, Risk, and Task , sendo os principais Requirement, Task , e para projetos MSF Agile são: User Story, Tasks e SCRUM: Sprint, Task. Conforme a tabela abaixo:
Team Foundation field
Project Server field
Status Queue field
Work item types in Agile 5.0
Work item types in CMMI 5.0
Work item types in Scrum 1.0
Title
Task Name
All
All except for Sprint
Assigned To
Resources
Completed Work
Task Actual Work
Resource Actual Work
Task
None
Remaining Work
Task Remaining Work
Resource Remaining Work
Original Estimate
Baseline Work
Bug, Change Request, Issue, Requirement, Risk, and Task
Start Date
Task Start
Resource Start
Task and User Story
Task and Requirement
Sprint
Finish Date
Task Finish
Resource Finish
::IMPORTANTE::
Se estiver usando o template SCRUM 1.0 , é necessário fazer manualmente o mapeamento dos work items que deseja sincronizar executando os seguintes comandos e ações:
witadmin exportwitd /collection:http://ServerName:Port/VirtualDirectoryName/CollectionName /p:projectName /n:WorkItemTypeName /f:FileName
Alterar http://ServerName:Port/VirtualDirectoryName/CollectionName para o caminho correto da collection principal complete , projectName para o nome do projeto , WorkItemTypeName pelo tipo que irá exportar para alterar neste caso Sprint e FileName pelo caminho onde irá ser feito o download e o nome do arquivo xml que irá mostrar o mapeamento dos work items.
Acessar o arquivo gerado na pasta indicada Ex.: C:\Maps\sprint.xml , abrir e adicionar as seguintes linhas na chave FIELDS :
<FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum">
<HELPTEXT>The number of units of work that have been spent on this task</HELPTEXT>
</FIELD>
<FIELD name="Original Estimate" refname="Microsoft.VSTS.Scheduling.OriginalEstimate" type="Double" reportable="measure" formula="sum">
<HELPTEXT>Initial value for Remaining Work - set once, when work begins. </HELPTEXT>
Depois adicionar na chave Control:
<Control FieldName="Microsoft.VSTS.Scheduling.OriginalEstimate" Type="FieldControl" Label="Original Estimate:" LabelPosition="Left" />
<Control FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Type="FieldControl" Label="Completed:" LabelPosition="Left" />
Salvar o arquivo e executar o comando abaixo para importar as alterações:
witadmin importwitd /collection:http://ServerName:Port/VirtualDirectoryName/CollectionName /p:projectName /n:WorkItemTypeName /f:FileName
::Comandos para verificar integração::
Fazer download dos mapeamentos feitos:
TfsAdmin ProjectServer /DownloadFieldMappings /collection:http://demotfs2010:8080/tfs/democollection /filePath:c:\temp\mappingfile.txt
Verificar os Work Itens mapeados: tfsadmin projectserver /GetMappedWorkItemTypes /collection:http://demotfs2010:8080/tfs/democollection /teamproject:DemoAgile
Verificar projetos mapeados:
tfsadmin projectserver /GetMappedProjects /collection:http://demotfs2010:8080/tfs/democollection
::Comandos para Remover integração::
Retirar o Mapeamento do Team Project
TfsAdmin ProjectServer /UnmapPlanFromTeamProject /collection:http://demotfs2010:8080/tfs/democollection /enterpriseProject:"The Master Plan" /teamproject:DemoAgile
Retirar o mapeamento da Collection: