Compartilhar via


Aplicar regras a estados de fluxo de trabalho (processo de herança)

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Depois de adicionar ou modificar estados do fluxo de trabalho para um tipo de item de trabalho, defina regras aplicáveis com base na alteração do estado do fluxo de trabalho. A adição de regras a estados do fluxo de trabalho dá suporte aos seguintes cenários:

  • Oferecer suporte a um processo de aprovação
  • Impedir que usuários não autorizados definam um estado inválido
  • Tornar um campo obrigatório ou somente leitura ou outro valor com base nas alterações de Estado
  • Restringir a transição de um estado para outro
  • Restringir ou permitir transições de estado para usuários ou grupos específicos
  • Manter um processo de fluxo de trabalho controlado, em apoio aos requisitos de auditoria
  • Automatizar o fechamento de itens de trabalho pai
  • Oferecer suporte a um processo de aprovação
  • Impedir que usuários não autorizados definam um estado inválido
  • Tornar um campo obrigatório ou somente leitura ou outro valor com base nas alterações de Estado
  • Restringir a transição de um estado para outro
  • Automatizar o fechamento de itens de trabalho pai

Importante

O modelo de processo de herança está disponível para projetos configurados para dar suporte ao tipo de modelo. Se você usar uma coleção mais antiga, verifique a compatibilidade do modelo de processo. Se sua coleção local estiver configurada para usar o modelo de processo XML local, você só poderá usar esse modelo de processo para personalizar a experiência de acompanhamento de trabalho. Para obter mais informações, consulte a personalização do processo no nível da organização.

Pré-requisitos

Categoria Requisitos
Permissões – Para gerenciar grupos de segurança e permissões no nível do projeto, o que inclui a definição de regras para estados de fluxo de trabalho: administrador do projeto.
- Para gerenciar a área de acompanhamento de trabalho: Administrador do Projeto ou a permissão Acompanhamento de Item de Trabalho atribuída especificamente.
Níveis de Acesso acesso básico, que normalmente é suficiente para a maioria dos usuários que precisam gerenciar itens de trabalho e aplicar regras a estados de fluxo de trabalho.

Entender regras de fluxo de trabalho

A seguinte tabela descreve os três grupos de regras de fluxo de trabalho a serem definidos:

  1. Ações padrão:

    • Aplicar quando um item de trabalho é criado, em um estado selecionado, ou movido de um estado para outro.
    • As ações incluem definir o valor de um campo, tornar um campo somente leitura ou tornar um campo obrigatório.
    • Você pode especificar uma ou duas condições e diversas ações.
  2. Restringir transições de estado (grupo 1):

    • Especifique uma condição que indique o estado do qual um item de trabalho foi movido.
    • Defina ações para restringir transições desse estado para outros.
  3. Restringir transições de estado (grupo 2):

    • Semelhante ao primeiro grupo, especifique uma condição que indique o estado do qual um item de trabalho foi movido.
    • Defina ações para restringir transições desse estado para outros.

A seguinte tabela descreve os dois grupos de regras de fluxo de trabalho a serem definidos:

  1. Ações padrão:

    • Aplicar quando um item de trabalho é criado, em um estado selecionado, ou movido de um estado para outro.
    • As ações incluem definir o valor de um campo, tornar um campo somente leitura ou tornar um campo obrigatório.
    • Você pode especificar uma ou duas condições e diversas ações.
  2. Restringir transições de estado:

    • Especifique uma condição que indique o estado do qual um item de trabalho foi movido.
    • Defina uma ou mais ações para restringir transições desse estado para outros.

Condição

Ações com suporte


Definir o valor do campo ou tornar somente leitura/obrigatório com base no Estado

Condições, o item de trabalho é criado

Ações, item de trabalho é criado


Restringir uma transição com base no Estado

Condição, item de trabalho é movido

Ações, restringir uma transação com base no Estado.


Ocultar campo ou tornar o campo somente leitura/obrigatório com base no Estado e na associação de usuário/grupo

Condição, associação de grupo de usuários

Ações, restringir uma transação com base no Estado e na associação.


Com base em uma associação de usuários ou grupos, defina um atributo de campo ou restrinja uma transição de Estado

Condição, associação de grupo de usuários

Ações, restringir uma transação com base no Estado e na associação.


Observação

Quando você personaliza um processo herdado, todos os projetos que usam o processo refletem automaticamente as personalizações. Para garantir uma transição tranquila, recomendamos que você crie um processo de teste e um projeto para testar suas personalizações antes de implementá-las em toda a organização. Para saber mais, confira Criar e gerenciar processos herdados.

Entender o estado do fluxo de trabalho e os limites da regra

As regras de fluxo de trabalho são aplicadas quando você adiciona ou modifica itens de trabalho usando uma das seguintes interfaces:

  • Portal da Web: formulário de item de trabalho, atualizações em massa, atualizações na exibição de consulta ​
  • Portal da Web: quadro ou Quadro de tarefas, mova o item de trabalho para a coluna​
  • Visual Studio 2017 e versões anteriores, formulário de item de trabalho
  • Formato de arquivo CSV: importação ou atualização em massa
  • Excel: importação ou atualização em massa
  • API REST: adicionar ou modificar itens de trabalho

A tabela a seguir resume o estado do fluxo de trabalho e os limites da regra para o processo de Herança.

Objeto Limite de herança
Tipos de itens de trabalho definidos para um processo 64
Estados do fluxo de trabalho definidos para um tipo de item de trabalho 32
Regras definidas para um tipo de item de trabalho 1.024

Ao definir estados e regras de fluxo de trabalho, siga estas orientações para minimizar problemas de desempenho:

  • Limitar o número de regras para um WIT: embora você possa criar várias regras para um WIT (tipo de item de trabalho), um número maior de regras pode afetar negativamente o desempenho quando os usuários adicionam ou modificam itens de trabalho. O sistema valida todas as regras associadas aos campos para o tipo de item de trabalho quando usuários salvam itens de trabalho. Em alguns casos, a expressão de validação de regra pode se tornar complexa demais para a avaliação do SQL.
  • Limitar o número de tipos de item de trabalho personalizados: reduzir o número de tipos de item de trabalho personalizados pode ajudar a manter o desempenho ideal.

Definir uma regra

Antes de definir uma regra com base em estados do fluxo de trabalho, verifique se os seguintes elementos estão implantados:

Para saber mais sobre como definir regras, confira Adicionar uma regra personalizada.

Definir o valor do campo ou tornar o campo somente leitura ou obrigatório

Com o primeiro agrupamento de regras, você pode especificar uma ou duas condições e até 10 ações por regra.

Exemplo de como garantir a aprovação do líder da equipe antes do trabalho ativo

Neste exemplo, as equipes de desenvolvimento desejam garantir que só tratem de Histórias de Usuários após a aprovação por um líder de equipe. Os estados de fluxo de trabalho padrão são usados, com a adição de um campo personalizado, Aprovado por, e um grupo de segurança, Grupo de Líderes de Equipe.

Estados de fluxo de trabalho padrão

Processo Agile, História do Usuário, estado padrão do fluxo de trabalho

Requisitos da regra

Para garantir a aprovação antes do trabalho ativo, defina as seguintes regras:

  • Exigir o preenchimento do campo Aprovado por quando o Estado passar de Novo para Ativo
  • Restringir usuários que não estão no Grupo de Líderes de Equipe no preenchimento do campo Aprovado por
  • Limpar o campo Aprovado por quando o Estado mudar para Novo ou Removido

Definições de função

Os requisitos de regra se traduzem nas quatro definições de regra a seguir.


Nome da regra

Condição

Ações


Aprovado Por limpo quando Novo

Quando A work item state changes to New

Então Clear the value of Approved By

Aprovado Por limpo quando Removido

Quando A work item state changes to Removed

Então Clear the value of Approved By

Aprovado por somente leitura

Quando Current user is not member of group Team Leads Group

Então Make read-only Approved By

Aprovado Por necessário

Quando A work item state changes from New to Active

Então Make required Approved By


Restringir transições de estado

Ao especificar a condição, A work item state moved from ..., você pode especificar apenas essa condição. Você pode especificar até 10 ações.

Exemplo de restrição de transições de estado e estado Aprovado

Os estados de fluxo de trabalho a seguir são definidos para a História do Usuário. Os estados herdados Novo, Resolvido e Removido estão ocultos. Em vez disso, Estados Proposto, Em Revisão e Corte são usados. Além disso, mais três Estados são definidos: Investigação, Projeto e Aprovado. Esses Estados devem seguir a sequência exibida na imagem a seguir.

História do Usuário, estados de fluxo de trabalho

Sem restrições, os usuários podem se mover de um estado para outro, para frente e para trás, na sequência.

Requisitos da regra

Para dar suporte a um fluxo de trabalho mais controlado, o grupo de negócios decidiu instituir regras em apoio às transições de estado de avanço e inversão a seguir no tipo de item de trabalho História do Usuário.

Estado Regra de transição
Proposto Só pode ser movido para Pesquisa e Corte
Pesquisa Só pode ser movido para Projeto e Corte
Design Só pode migrar para Pesquisa, Aprovado e Recortar
Aprovado Só pode migrar para Design, Ativo e Recortar
Ativo Só pode ser movido para Em revisão
Em Análise Só pode migrar para Ativo (mais trabalho encontrado), Fechado ou Recortar
Fechado Pode migrar para Pesquisa, Design, Ativo, Em Análise (permite casos em que o usuário fechou o item de trabalho por engano)
Recortar só pode ser movido para Proposto

Observação

Ao restringir transições de estado, considere os casos em que um usuário pode migrar um estado por engano. Verifique se os usuários podem se recuperar normalmente.

Além disso, o grupo de negócios deseja aplicar as seguintes regras a campos obrigatórios:

  • Exigir o preenchimento do campo Aprovado por quando o estado migra de Novo para Ativo.
  • Permitir que apenas usuários do grupo Aprovadores Autorizados preencham o campo Aprovado por.
  • Limpe o campo Aprovado por quando o estado for movido para Corte.
  • Exigir o preenchimento do campo Critérios de Aceitação quando o estado migra para Ativo.

Definições de função

Para implementar as restrições mencionadas anteriormente, o administrador do processo adiciona um campo de identidade personalizado Aprovado por, um grupo de segurança Aprovadores Autorizados e as regras a seguir.


Nome da regra

Condição

Ações


Estado proposto

Quando A work item state moved from Proposed

Então Restrict the state transition to Design
E Restrict the state transition to Approved
E Restrict the state transition to Active
E Restrict the state transition to In Review
E Restrict the state transition to Closed

Estado da pesquisa

Quando A work item state moved from Research

Então Restrict the state transition to Proposed
E Restrict the state transition to Approved
E Restrict the state transition to Active
E Restrict the state transition to In Review
E Restrict the state transition to Closed

Estado do design

Quando A work item state moved from Design

Então Restrict the state transition to Proposed
E Restrict the state transition to Research
E Restrict the state transition to Active
E Restrict the state transition to In Review
E Restrict the state transition to Closed

Estado aprovado

Quando A work item state moved from Approved

Então Restrict the state transition to Proposed
E Restrict the state transition to Research
E Restrict the state transition to Design
E Restrict the state transition to In Review
E Restrict the state transition to Closed

Estado ativo

Quando A work item state moved from Active

Então Restrict the state transition to Proposed
E Restrict the state transition to Research
E Restrict the state transition to Design
E Restrict the state transition to Approved
E Restrict the state transition to Closed

No estado de revisão

Quando A work item state moved from In Review

Então Restrict the state transition to Proposed
E Restrict the state transition to Research
E Restrict the state transition to Design
E Restrict the state transition to Approved

Estado fechado

Quando A work item state moved from Closed

Então Restrict the state transition to Proposed
E Restrict the state transition to Cut

Estado de corte

Quando A work item state moved from Cut

Então Restrict the state transition to Research
E Restrict the state transition to Design
E Restrict the state transition to Approved
E Restrict the state transition to Active
E Restrict the state transition to In Review
E Restrict the state transition to Closed

Campos obrigatórios do estado aprovado

Quando A work item changes from Approved to Active

Então Make required Acceptance Criteria
E Make required Approved By

Aprovadores autorizados

Quando Current user is not a member of Authorized Approvers

Então Make read-only Approved By

Limpe o campo Aprovado por

Quando A work item state changes to Cut

Então Clear the value of Approved By


Verificar restrições de transição de estado

Após definir as regras para o processo e atualizar o projeto, atualize o seu navegador. Verifique as operações por meio do formulário de item de trabalho e do navegador.

Para as regras definidas na tabela anterior, verifique os menus suspensos Estado. Abra o quadro e verifique se você pode passar de um estado para outro.

Proposto Pesquisa Design Aprovado
Menu proposto Menu Pesquisa Menu de projeto Menu Aprovado
Ativo Em análise Fechado Recortar
Menu Ativo No menu Revisão Menu fechado Menu de corte

Restringir a transição de estado com base na associação de usuário ou grupo

Ao especificar uma das duas condições com base na associação de usuário ou grupo, Current user is member of group ... ou Current user is not member of group ..., você só pode especificar uma condição. Além disso, se você especificar a ação Restrict the transition to state..., só poderá especificar uma ação.

Observação

Os itens de trabalho estão sujeitos a regras aplicadas a eles. As regras condicionais com base na associação de usuários ou grupos são armazenadas em cache no navegador da Web. Se você perceber que está restrito a atualizar um item de trabalho, talvez tenha encontrado uma dessas regras. Se você acredita que encontrou um problema que não se aplica a você, confira Problemas de cache do IndexDB de formulário de item de trabalho.

Automatizar transições de estado dos itens de trabalho pai

Para automatizar as transições de estado para itens de trabalho pai com base nas atribuições de estado dos seus itens de trabalho filho, consulte Automatizar transições de estado de itens de trabalho.

Automatizar a reatribuição com base na alteração de estado

O tipo de item de trabalho bug do processo Agile tinha anteriormente uma regra que reatribuía o bug ao seu criador. Removemos esta regra do processo do sistema padrão. É possível reaplicar a regra ou adicionar uma regra similar a outros tipos de item de trabalho usando a seguinte condição e ação:

QuandoA work item state changes toResolvidoEntãoCopy the value from Criado PorparaAtribuído a.