Definição de Feito (DoD) é uma lista de verificação de requisitos que uma história de usuário deve atender para que a equipe considere que está completa. Enquanto o critérios de aceitação de uma história de usuário incluem um conjunto de casos de teste que devem ser atendidos para confirmar que o software funciona conforme o esperado.
A diferença principal reside no fato de que o DoD é comum a todas as histórias de usuário, enquanto os critérios de aceitação são específicos para cada história de usuário. Os critérios de aceitação para cada história de usuário variam de acordo com os requisitos específicos dessa história.
Em outras palavras, tanto a Definição de Feito quanto os critérios de aceitação devem ser atendidos para que uma história de usuário seja considerada completa. O incremento do produto não é considerado completo a menos que ambas as listas de verificação sejam totalmente satisfeitas. Portanto, precisamos definir dois aspectos da Definição de Feito: o DoD e os critérios de aceitação:
Definição de Feito vs Critérios de Aceitação
Definição de Feito:
A Definição de Feito é estruturada como uma lista de verificação, com cada item servindo como um ponto de verificação para uma história ou PBI. Seu propósito é garantir que a equipe de desenvolvimento concorde sobre a qualidade do trabalho que está entregando. Atua como uma lista de verificação para verificar a completude de cada Produto Backlogitem (também conhecido como PBI ou história de usuário). Os itens da Definição de Feito têm como objetivo se aplicar a todos os itens do Produto Backlog, e não apenas às histórias de usuário individuais. Pode ser resumido da seguinte forma:
- Aplica-se ao incremento completo do produto
- Implica que o incremento do produto é potencialmente entregável na maioria dos casos
- Definido no Guia do Scrum
- Serve como uma ferramenta de comunicação entre os membros da equipe:
- Qualidade geral do software
- Se o incremento é entregável
Objetivos da Definição de Feito
- Estabelecer uma compreensão compartilhada de qualidade e completude entre a equipe
- Atuar como uma lista de verificação para verificar histórias de usuário (ou PBIs)
- Garantir que o incremento produzido ao final de um Sprint seja de alta qualidade e que todos os participantes compreendam claramente os padrões de qualidade
Exemplo – Definição de Feito
Por exemplo, na indústria de software, as equipes podem fazer as seguintes perguntas para definir seu DoD:
- Código revisado por pares?
- Código concluído?
- Código revisado?
- Código verificado?
- Testes unitários passaram?
- Testes funcionais passaram?
- Testes de aceitação concluídos?
- O Product Owner tem revisado e aceito
Critérios de Aceitação
Uma história de usuário é um dos artefatos principais em desenvolvimento ágil, mas Scrum não exige explicitamente o uso de histórias de usuário ou critérios de aceitação. Se um item do backlog do produto for muito grande para caber em um Sprint, ele é geralmente dividido em histórias de usuário e, em seguida, ainda mais em um conjunto de tarefas, conforme mostrado abaixo:
Critérios de Aceitação
As histórias de usuário encapsulam os critérios de aceitação, por isso frequentemente vemos o Definição de Feito e os critérios de aceitação coexistindo em nossos processos Scrum. A história de usuário fornece contexto sobre a funcionalidade que a equipe deve entregar. Os critérios de aceitação fornecem orientações detalhadas sobre o que o recurso deve fazer e como o cliente irá aceitá-lo. Juntos, eles definem o entregável completo.
Alguns critérios de aceitação são descobertos durante a sessão contínua de refinamento do backlog antes do início do Sprint, enquanto outros são identificados imediatamente após Planejamento do Sprint, para que a equipe possa ter uma conversa com a história de usuário. Portanto, os critérios de aceitação são um atributo único de uma história de usuário ou item do backlog do produto.
- Aplica-se a PBI/história individual
- Os critérios de aceitação variam por PBI/história
- Não definido no Guia Scrum
- Serve como ferramenta de comunicação para atender aos requisitos específicos de um PBI/história
- Também conhecido como testes de aceitação, condições de satisfação, ou em alguns casos “casos de teste”
Objetivos dos Critérios de Aceitação
- Esclarecer o que a equipe deve estabelecer antes de começar o trabalho
- Garantir que todos compartilhem uma compreensão comum dos requisitos
- Ajudar os membros da equipe a entenderem quando uma história está completa
- Ajudar a verificar a história por meio de testes automatizados
Exemplo – Critérios de Aceitação
- O usuário não pode enviar o formulário sem preencher todos os campos obrigatórios
- As informações do formulário são armazenadas no banco de dados de registro
- Os convidados podem pagar por cartão de crédito
- Uma confirmação por e-mail é enviada ao usuário após o envio do formulário
Exemplo de uma História de Usuário com Critérios de Aceitação
A imagem abaixo mostra um exemplo de critérios de aceitação para uma história de usuário.
Exemplo de Definição de Concluído