Visão geral do processo de sincronização para integração do TFS com o Project Server

Você poderá gerenciar a integração do Visual Studio Team Foundation Server 2013 e do Microsoft Project Server de forma mais eficaz se entender como o mecanismo de sincronização gerencia o fluxo de dados entre os dois produtos de servidor. O mecanismo de sincronização oferece suporte aos fluxos de trabalho independentes dos gerentes de projeto que trabalham no Project Professional e líderes e membros da equipe que trabalham no Team Foundation. Entregas e tarefas podem evoluir de forma independente em cada área.

Neste tópico

  • Três tipos de sincronização

  • Dados que estão sujeitos à sincronização

  • Validação de dados realizada durante as atualizações e mediante envio

  • Campos espelhados e "Dois Conjuntos de Livros"

  • Permissões necessárias para suportar a sincronização

  • Notificação de erro, registro de eventos e rastreabilidade

Três tipos de sincronização

O mecanismo de sincronização realiza três tipos de sincronização. Esse processo captura e atualiza dados relacionados a tarefas e recursos no TFS e no Project Server, respeitando a propriedade dos dados do gerente do projeto no plano do projeto. Os gerentes de projeto fazem alterações usando o Microsoft Project Professional e aprovam as atualizações com o Project Web Access ou Project Web App (PWA). Os membros da equipe de desenvolvimento enviam atualizações ao Project Server usando um cliente do Team Foundation.

Como mostra a ilustração a seguir, a sincronização de dados consiste em sete etapas principais.

Processo de sincronização para integração do Team Foundation Server e Project Server

Processo de sincronização do TFS PS

O mecanismo de sincronização consiste em um único serviço de trabalho executado em uma programação regular, e não quando os itens de trabalho são atualizados. O trabalho de sincronização realiza os três processos seguintes na ordem indicada:

Sincronização de publicação:

Etapa 1   Um gerente de projeto define ou atualiza tarefas ou entregas e configura o valor Publicar para Projeto de Equipe como Sim para cada tarefa que deseja sincronizar.

Etapa 2O gerente de projeto publica o plano de projeto corporativo usando o Microsoft Project Professional. As alterações são automaticamente salvas no banco de dados do Project Server.

Etapa 3O mecanismo de sincronização extrai os dados do Project Server e determina os dados a serem atualizados com base nos dados configurados para sincronização. Apenas objetos, tarefas e itens de trabalho configurados para sincronização são atualizados.

Etapa 4   O mecanismo de sincronização cria ou atualiza itens de trabalho no Team Foundation e define um vínculo que associa a tarefa do Project ao item de trabalho no Team Foundation.

Sincronização de status:

Etapa 5Um líder ou membro da equipe modifica um item de trabalho no Team Foundation que está vinculado a uma tarefa em um projeto corporativo ou cria um item de trabalho e define o valor Enviar ao Project Server como Sim. O mecanismo de sincronização consulta as alterações feitas aos projetos da equipe mapeados e envia solicitações para a fila de aprovação ou filas no Project Web Access ou Project Web App (PWA).

Sincronização de aprovação:

Etapa 6   Cada gerente de projeto examina sua fila de aprovação e aprova ou rejeita cada solicitação de atualização de status.

Depois que as atualizações são aprovadas, o gerente do projeto deve publicar o plano do projeto antes que as atualizações apareçam no Project Server.

Importante

Quando o mecanismo de sincronização envia vários níveis de itens de trabalho para o Project Server, o primeiro nível deve ser aprovado e publicado no Project Server antes de o próximo nível ser enviado.Por exemplo, você pode enviar um lote de novos itens de trabalho que inclui três níveis de itens filhos.Nesse caso, o gerente do projeto deve publicar o plano do projeto quatro vezes para todos os itens de trabalho a serem sincronizados com o Project Server.

Etapa 7   O manipulador de eventos para a aprovação no Project Server transmite as decisões de aprovação para o mecanismo de sincronização, que atualiza os itens de trabalho no Team Foundation Server com base no status de aprovação.

Voltar ao início

Gerenciando aprovações e rejeições

Todas as alterações em itens de trabalho vinculados ao Project Server devem ser enviadas para aprovação do gerente de projeto do plano de projeto corporativo, o qual é mapeado para o projeto da equipe. É possível configurar a aprovação automática de modo que todas as atualizações do Team Foundation sejam aprovadas automaticamente. Para obter mais informações, consulte Aprovar ou rejeitar atualizações de tarefa.

Os itens de trabalho aprovados geralmente são revertidos ao plano de projeto corporativo. Itens de trabalho rejeitados exigem solução e reenvio.

Para atualizações rejeitadas, uma mensagem é exibida no campo Histórico do item de trabalho. A mensagem indica o valor rejeitado e quem o rejeitou. Para projetos da equipe relacionados aos planos de projeto hospedados no Project Server 2010, a mensagem também contém os comentários que o gerente do projeto forneceu sobre o motivo da rejeição do item. Os membros da equipe devem reconciliar o item de trabalho e reenviá-lo ou removê-lo para que ele não seja enviado ao projeto corporativo. Além disso, os membros da equipe podem criar uma consulta de item de trabalho que encontra todos os itens rejeitados com base no Último Status de Envio ao Project Server. Para obter mais informações, consulte Monitorar envios de itens de trabalho e resolver rejeições.

Intervalos de sincronização e repetição

A sincronização de dados ocorre conforme agendamento e não quando cada item de trabalho é atualizado. O serviço de trabalho de sincronização é executado a cada 30 segundos. Durante esse tempo, ele consulta itens de trabalho relevantes e campos que foram modificados no Project Server, no Team Foundation Server ou que o gerente de projeto aprovou.

A cada hora, o mecanismo de sincronização reenvia os itens de trabalho que não foram atualizados anteriormente. Para obter mais informações, consulte Alterar o intervalo de repetição ou reenvio de sincronização.

Voltar ao início

Dados que estão sujeitos à sincronização

Dois níveis de configuração determinam quais objetos podem participar da sincronização e quais dados são sincronizados. Os administradores do Team Foundation realizam vários níveis de mapeamento para configurar os objetos que podem participar da sincronização. No segundo nível, gerentes de projeto e usuários do Team Foundation controlam quais tarefas específicas e itens de trabalho são sincronizados.

Voltar ao início

Objetos que são configurados para participar da sincronização

As seguintes configurações determinam quais objetos participam do processo de sincronização. Os administradores do Team Foundation geralmente executam essas configurações. No entanto, os gerentes de projeto também podem associar seus planos de projetos corporativos aos projetos de equipe.

  • Instância do PWA mapeada para uma coleção de projetos de equipe: este mapeamento configura a coleção de projetos da equipe para suportar sincronização e determina quais as instâncias do PWA podem sincronizar com uma coleção.

  • Plano de projeto corporativo mapeado para projeto de equipe: este mapeamento configura o plano de projeto corporativo e o projeto de equipe para participar da sincronização. Esse mapeamento também determina quais projetos corporativos podem sincronizar com um projeto de equipe.

  • Tipos de itens de trabalho mapeados para sincronização: ao mapear um plano de projeto corporativo para um projeto da equipe, você pode especificar os tipos de itens de trabalho que podem ser sincronizados. Esse mapeamento adiciona a guia Project Server ao formulário do item de trabalho e adiciona regras de validação para cada tipo de item de trabalho do plano de projeto corporativo.

  • Campos de item de trabalho mapeados para os campos do Project Server: por padrão, o mecanismo de sincronização sincroniza os seguintes campos no Team Foundation: Título, Atribuído a, Trabalho Concluído, Trabalho Restante, Estimativa Original, Data de Início e Data de Término. Você pode adicionar campos e definir parâmetros que determinam como os campos sincronizam. Por exemplo, você pode determinar quais campos são exibidos no formulário de item de trabalho e se é permitido separar valores para um campo específico.

Para obter mais informações, consulte Mapear componentes do Project Server para componentes do Team Foundation e Especificar os tipos de itens de trabalho a serem sincronizados.

Tarefa individual e itens de trabalho configurados para sincronização

Os gerentes de projeto determinam as tarefas em um plano de projeto corporativo que desejam publicar no TFS. Os membros da equipe determinam os itens de trabalho em um projeto de equipe que desejam enviar ao Project Server. Os gerentes de projetos podem publicar informações detalhadas das entregas e tarefas no TFS ou publicar e gerenciar apenas os elementos da tarefa de resumo. Algumas restrições aplicam-se à publicação de tarefas subordinadas ou itens de trabalho pai-filho, como descrito em Validação de dados realizada durante as atualizações e mediante envio mais adiante neste tópico.

Para obter mais informações, consulte Gerenciar detalhes do projeto em um plano de projeto corporativo mapeado para um projeto de equipe e Planejamento de cima para baixo de requisitos comerciais dentro de um plano de projeto corporativo mapeado para um projeto de equipe.

Dica

Você pode mapear vários planos de projeto corporativo para um projeto de equipe, mas só pode mapear ou vincular uma tarefa de um plano de projeto a um item de trabalho no Team Foundation.Toda tarefa em um plano de projeto corporativo é diferente no Project Server.Tarefas enviadas ao Project Server só atualizam um item de trabalho no Team Foundation.Além disso, itens de trabalho criados no Team Foundation e enviados ao Project Server atualizam apenas um plano de projeto corporativo.

Validação de dados realizada durante as atualizações e mediante envio

O processo de sincronização valida as tarefas e os itens de trabalho que foram marcados para sincronização antes de serem publicados no Project Server. A validação dos dados é imposta tanto no plano de projeto corporativo quanto no projeto da equipe.

Quando os gerentes de projeto publicam um plano de projeto corporativo

Quando um gerente de projeto trabalhando no Project Professional publica um plano de projeto corporativo mapeado para um projeto de equipe, são executadas verificações de validação específicas. O complemento do Team Foundation executa as seguintes verificações de validação nas tarefas definidas para serem publicadas no Team Foundation (ou seja, Publicar para Projeto de Equipe=Sim):

  • O valor que está definido para o campo Tipo de Item de Trabalho deve corresponder a um tipo de item de trabalho que tenha sido configurado para participar da sincronização do projeto da equipe de destino.

    Importante

    Texto30 é o campo padrão do Project associado à coluna Tipo de Item de Trabalho usada na sincronização de tarefas com itens de trabalho.Se você já conectou o plano do projeto ao Team Foundation Server usando a opção Escolher Projeto de Equipe no menu da faixa de opções Equipe, um campo adicional do Project, que também é rotulado como Tipo de Item de Trabalho, ficará disponível.Esse campo, com um campo padrão Texto24 do Project, oferece suporte ao mapeamento dos planos de projeto que estão associados ao Team Foundation, mas não oferecem suporte para planos de sincronização.O campo baseado em Texto24 contém a lista completa de tipos de item de trabalho do projeto de equipe.É possível verificar se você está com o campo correto ao apontar para ele e verificar se Texto30 aparece.

  • Todos os valores dos campos mapeados do Project devem passar por verificações específicas para garantir que seus valores não violem uma regra definida para o tipo de item de trabalho de destino. Essas regras são adicionadas ao plano de projeto corporativo quando ele é mapeado para um projeto de equipe.

  • Depois que uma tarefa é publicada, os valores definidos para Publicar para Projeto de Equipe e Tipo de Item de Trabalho não podem ser alterados. Se você não quiser continuar a sincronizar uma tarefa, terá de excluí-la.

  • Se uma tarefa e uma de suas tarefas subordinadas estiverem marcadas para sincronização, todas as tarefas entre elas também deverão ser marcadas para sincronização.

  • O valor do campo Nome do Recurso de uma tarefa deve corresponder ao nome de um colaborador válido para o projeto da equipe de destino.

  • Se vários recursos forem atribuídos à mesma tarefa, apenas uma atribuição de recurso deverá ser selecionada como ativa. Para obter mais informações, consulte Tornar o progresso da equipe do Agile visível para o Escritório de Gerenciamento de Programas.

  • Todos os valores devem estar de acordo com as regras que o Project Server aplica à definição de campo específica. Por exemplo, um erro poderá ocorrer se você atribuir um valor a um campo mapeado que está associado a uma tabela de pesquisa, mas que não está na tabela de pesquisa.

A caixa de diálogo Resolução de Validação aparece sempre que uma ou mais regras são violadas. Os gerentes de projeto devem resolver cada erro antes de publicar as alterações.

Quando os desenvolvedores enviam itens de trabalho novos ou atualizados a partir do Team Foundation

Quando um desenvolvedor trabalhando no Team Foundation cria ou atualiza um item de trabalho e salva as alterações, as seguintes verificações de validação são executadas nos itens de trabalho definidos para serem publicados no Project Server (ou seja, Enviar ao Project Server=Sim):

  • O valor do campo Atribuído a deve corresponder a um membro da equipe que também foi adicionado ao pool de recursos da empresa e aos recursos do projeto no plano de projeto. Para obter mais informações, consulte Atribuir permissões para dar suporte à integração TFS-Project Server.

  • Se apenas um plano de projeto corporativo for mapeado para um projeto da equipe, seu nome aparecerá automaticamente no campo Projeto Corporativo na guia Project Server para os itens de trabalho recém-criados.

  • Se mais de um projeto corporativo for mapeado para o projeto de equipe, você deverá especificar um valor para o campo Projeto Corporativo para novos itens de trabalho criados e cujo valor Enviar ao Project Server está definido como Sim.

  • Não é possível alterar a estrutura hierárquica de itens de trabalho após terem sido vinculados às tarefas do Projeto. Para obter mais informações, consulte Summary Tasks, Task Hierarchy, and Submissions of Work Items that Are Nested at Multiple Levels.

  • Regras adicionadas a um tipo de item de trabalho mapeado podem resultar em erros de validação quando você publicar o plano do projeto. Por exemplo, uma regra condicional pode restringir os valores que os usuários podem atribuir a um campo. Para obter mais informações, consulte Aplicar uma regra a um campo do item de trabalho.

  • Regras básicas, tais como tabelas de pesquisa, que correspondem a definições de campos no Project Server, podem causar erros durante a sincronização de status. Por exemplo, ocorrerá um erro se você usar uma tabela de pesquisa para definir os valores válidos para um campo no Project, mapear esse campo para um campo no Team Foundation e definir o campo no Team Foundation para um valor que não está na tabela de pesquisa.

Depois que um item de trabalho é publicado no Project Server, ele é associado a uma tarefa no plano do projeto corporativo de destino. Essa associação é também chamada de vínculo. Os vínculos são bloqueados durante a sincronização. Para remover o vínculo, você deve excluir a tarefa correspondente no projeto ou usar a opção /force ao remover o mapeamento do plano de projeto ou do tipo de item de trabalho. Para obter mais informações, consulte Remover um componente da participação na sincronização de dados.

Voltar ao início

Campos espelhados e "Dois Conjuntos de Livros"

Como o mecanismo de sincronização realiza três tipos de sincronização e se comunica com dois bancos de dados em uma negociação agendada, não ocorre fusão de dados. Em vez disso, a sincronização dos dados ocorre em uma sequência de duas etapas e o mecanismo permite divergência entre os dois produtos. Para cada campo sincronizado no Team Foundation, você define um campo espelhado que armazena o valor no Project Server para o campo mapeado correspondente. Durante as operações de sincronização regulares, os valores para os dois campos serão diferentes quando um valor for atualizado no Team Foundation Server até o gerente de projeto aprovar a atualização e publicar o plano do projeto.

Para cada campo que você mapear, você especifica uma das seguintes opções de como deseja que o mecanismo de sincronização atualize o campo de referência no Team Foundation:

Para obter mais informações, consulte Referência a elementos XML de mapeamento de campos para a integração do TFS com o Project Server.

Voltar ao início

Permissões necessárias para suportar a sincronização

Para que os dados sejam sincronizados entre o Team Foundation Server e o Project Server, as seguintes permissões devem ser concedidas:

  • Para o Project Server 2010, você deve conceder permissões de Controle Total para a conta de serviço em que o TfsJobAgent é executado, de forma que o Aplicativo de Serviço do Project Server possa ser acessado. Para obter mais informações, consulte Atribuir permissões para dar suporte à integração TFS-Project Server.

  • Você deve conceder a conta de serviço em que o TfsJobAgent executa as permissões necessárias para acessar cada instância mapeada do PWA.

  • Os usuários atribuídos a tarefas no Project Professional ou a itens de trabalho no Team Foundation devem ser reconhecidos como Colaboradores no projeto de equipe. Esses usuários também devem ser reconhecidos como recursos do plano de projeto corporativo e receber permissão para fazer logon em instâncias do PWA que participam do processo de sincronização.

Para obter mais informações, consulte Atribuir permissões para dar suporte à integração TFS-Project Server.

Voltar ao início

Notificação de erro, registro de eventos e rastreabilidade

O mecanismo de sincronização processa atualizações de projetos publicados no Project Server, bem como atualizações de status e de aprovação. Ao publicar, você atualiza o Project Server, adicionando tarefas e detalhes da tarefa ao plano de projeto corporativo. A sincronização de publicação extrai os dados do Project Server para o Team Foundation Server. A sincronização de status extrai os dados do Team Foundation para atualizar a fila de aprovação do gerente de projeto, e a sincronização de aprovação publica atualizações em campos, tais como trabalho restante e trabalho concluído no Project Server, que inicia um novo ciclo de sincronização.

Cada tipo de sincronização permite a exibição de mensagens de status e mensagens de erro relevantes para o gerente do projeto no Project Professional ou na instância do PWA. Além disso, mensagens de status e de erro associadas ao mecanismo de sincronização e sua configuração também podem ser gravadas nas interfaces de administração apropriadas do Team Foundation Server e do Project Server.

Gerentes de projeto, membros da equipe e administradores podem exibir e diagnosticar mensagens relacionadas à sincronização à medida que elas ocorrem. As mensagens são gravadas nos seguintes locais:

  • No Project Professional, a barra de status no plano de projeto corporativo mostra o andamento da publicação.

  • Na instância do PWA, o Centro de Aprovação mostra a fila de tarefas atualizadas.

  • No formulário de item de trabalho do Team Foundation, a guia Project Server indica o status e a hora em que o item de trabalho foi sincronizado mais recentemente.

  • No formulário de item de trabalho do Team Foundation, o campo Histórico registra status e mensagens de erro de sincronização depois de cada atualização de item de trabalho. Ao integrar com o Project Server 2010, os comentários escritos pelos gerentes de projeto ao aprovarem ou rejeitarem uma atualização de status também são registrados no campo Histórico.

  • O log de eventos do servidor de camada de aplicativos que participa da sincronização de dados mantém um registro de todos os eventos e erros de sincronização.

Os administradores podem recuperar as mensagens de eventos mais recentes, usando o comando TfsAdmin ProjectServer /GetSyncMessages. Para obter mais informações, consulte Visualizar mensagens de erro do mecanismo de sincronização. Para reunir informações ainda mais detalhadas, você pode habilitar o rastreamento detalhado do Agente de Trabalho em Segundo Plano do Team Foundation que executa o serviço. Para obter mais informações, consulte Agente de trabalho em segundo plano do Team Foundation.

Voltar ao início

Consulte também

Conceitos

Administrar a integração do Team Foundation Server com o Project Server

Outros recursos

Gerenciar projetos com a integração do TFS com o Project Server