Conhecendo um Pouco mais sobre ALM – Post 10 de 100 – Process Template – Automatizando Preenchimento de Campos dos Work Items

Introdução

Esse artigo tem como finalidade demonstrar como automatizar preenchimento de campos de Work Items do Team Foundation Server, para que ao se mudar determinado estado de um Work Item, um determinado campo seja automaticamente preenchido facilitando o fluxo de trabalho dos times. Ou seja, customizar Fluxos de Processos (Workflow) conforme sua necessidade. Por exemplo, um campo de Horas Restantes (Remaining Work) de um Work Item, ser preenchido automaticamente, quando um estado é alterado pelo time.

Requisitos

Visual Studio Team Foundation Server Power Tools

Você pode realizar a edição diretamente no Servidor do Team Foundation Server (apenas aconselho em um Projeto de Homologação) ou em um arquivo de um processo salvo, para depois carregá-lo no TFS.

Exemplo de Customização de Workflow

Exemplo: Quando o campo “Reason” de um Work Item “Task” é alterado para um estado definido por você (por exemplo: Complete and Does Not Require Review/Test), o campo Remaining Work deve ser automaticamente preenchido com 0, pois, significa que o tempo restante de uma tarefa com a Reason alterada foi concluído.

Para isso, siga os passos:

Passo 1 – Escolhendo o local de alteração do Work Item (Arquivo ou Servidor)

Editando a partir de um Process Template customizado

– Faça o download do Process Template que você deseja alterar, por exemplo:

Do seu Visual Studio, vá em Settings, Team Project Collection e Process Template Manager.

 

image

image

Faça o download do seu processo e salve em um diretório.

image

Depois, abra o diretório salvo, e altere o nome dele.

image

image

Depois abra o XML Process Template e altere o nome do processo dentro do XML.

image

image

image

Salve o arquivo. Isso permitirá que você possa fazer o Upload desse Process Template sem conflitar com o Process Template padrão do TFS que possui o mesmo nome.

– Abra seu Visual Studio (depois de instalada a ferramenta Power Tools), vá em Tools –> Processor Editor –> Work Item Types –> Open Wit for File

image

Vá no seu Process Template editado e procure o Work Item (XML) que você deseja editar, no caso é a Tarefa (Task), então você deverá ir no diretório \WorkItem Tracking\TypeDefinitions

image

Editando a partir de um Process Template de Um Projeto Carregado

Você pode também editar diretamente no Projeto em funcionamento (aconselho a fazer em homologação). Para isso, vá em Tools –> Processor Editor –> Work Item Types –> Open Wit for Server

image

Escolha o Work Item Task.

image

Passo 2 – Editando o Workflow

No nosso exemplo, iremos preencher automaticamente o campo Remaining Work, então para podermos manipular ele, temos que identificar qual é seu Referency Name, para que no Workflow, utilizemos o mesmo para inserir dados no campo. Para isso, com o Work Item aberto, vá em “Fields” e procure o campo Remaining Work e dê um duplo clique nele.

image

Irá abrir uma janela com informações de definição do campo, observe que o nome de referência é “Microsoft.VSTS.Scheduling.RemainingWork”, ok, guarde esse dado.

image

Ainda dentro do Work Item Task, vá em Workflow, onde efetivamente é o local que desejamos mudar e procure na diagramação, onde está o fluxo de mudança (transição) do campo Reason.

image

Observe que o local no campo de transição, ao expandi-lo você verá as diversas transições disponíveis em Reason, e logo abaixo em Actions qual ação ele irá tomar em quais campos. Justamente nessa seção Actions, iremos inserir um novo campo para que o Workflow tome uma ação, quando alterado a Reason do Work Item. No nosso caso, queremos que ação executada de forma automática, seja a inserção de um dado no campo Remaining Work.

Então iremos inserir um novo campo (Field) em Actions, nessa caixa de Transição. Para isso, clique duas vezes na caixa de transição.

image

Vá na aba Fields, e clique em New.

image

Agora procure o campo Remaining Work da Tarefa em questão, como vimos o nome de referência é outro, Microsoft.VSTS.Scheduling.RemainingWork. Procure o mesmo e insira-o.

image

image

Agora iremos inserir uma Regra (Rules) nesse campo inserido. Para isso, ainda em Fields, clique Microsoft.VSTS.Scheduling.RemainingWork e clique em Edit.

image

Vá na aba Rules e clique em New:

image

Em seguida seleciona o tipo COPY, pois iremos pedir ao Workflow que copie um valor (sobrescrevendo) no campo Remaining Work quando alterarem a Reason da Task.

image

No caso, escolho de From: Value o Value 0, pois quero que quando uma Task esteja com sua razão alterada conforme a definição minha, o valor de tempo restante seja igual à 0, para que minha Task esteja preenchida corretamente e facilite a vida do time com processos morosos.

image

Pronto, salvo as alterações e realizo os testes.

Testando

Caso você tenha editado no arquivo, você deverá carregar seu Process Template e criar um novo projeto, ou sobrescrever (importar) seu Work Item para um Projeto em andamento (homologação) para testar.

Caso você tenha editado diretamente em um projeto de homologação, poderá validar na hora.

Veja o teste abaixo:

Criei uma Tarefa com as horas.

image

image

Assim que alterei sua Reason (seja por alteração automatico do estado para Closed) que alterou a Reason, meu Remaining Work ficou com o valor 0.

image

Maiores Informações

https://visualstudiogallery.msdn.microsoft.com/f017b10c-02b4-4d6d-9845-58a06545627f

https://msdn.microsoft.com/en-us/library/ms243782.aspx

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s