Como escrever casos de uso eficazes

Publicados: 2015-08-21

Como escrever casos de uso eficazes

Os casos de uso são amplamente usados ​​para documentar a lógica de negócios e os processos do sistema. Mas há muitas opiniões sobre se eles são úteis e como devem ser estruturados. Em alguns projetos, os desenvolvedores nunca olham para os casos de uso dizendo que são verbosos ou que realmente não entendem muito deles. O que um analista de negócios pode fazer para tornar os casos de uso realmente eficazes?

A maioria de nós está ciente de que os casos de uso descrevem o processo de negócios e são as especificações para as interações entre o sistema e os atores para objetivos específicos. Um documento de caso de uso é diferente de um documento de requisitos e não é o mesmo que um documento de design.

Vejamos os dois exemplos de casos de uso para o requisito. Qual deles você acha que é melhor.

Exemplo 1

Detalhes do caso de uso Comentários

Nome do caso de uso - Tickets de pedido

O nome é bom. Ele claramente dá uma indicação do que o caso de uso

Objetivo – O cliente reserva com sucesso ingressos para a partida de futebol no site

Descrição- O ator visita o site, visualiza o
agenda, seleciona a partida
e assentos, livros o
bilhete e faz o pagamento do jogo de futebol

O objetivo e a descrição são claramente mencionados.
Isso ajudará os designers
e os desenvolvedores entendem o que é o
objetivo de seus documentos de design e código

Atores - Cliente, Representante de Atendimento ao Cliente
Pré-condições – O sistema está funcionando.
Gatilho – O ator acessou o sistema para reservar ingressos.
Pós-condição – O ator pode reservar ingressos. O sistema atualiza as informações.

Todos os outros detalhes do caso de uso , como Atores,
pré-condições, pós-condições e
gatilho são mencionados, o que ajudará o
design e desenvolvimento do aplicativo mais fácil.

Fluxo Principal - Etapas

  1. O ator acessa o site e opta por reservar ingressos
  2. O sistema exibe as informações da reserva
  3. O ator confirma os detalhes da correspondência (mais detalhes na especificação da interface do usuário)
  4. O ator confirma os detalhes do assento (mais detalhes na especificação da interface do usuário)
  5. O sistema confirma a disponibilidade
  6. Sistema apresenta formulário para obter informações do usuário
  7. O ator fornece informações ao usuário (Detalhes em outro caso de uso)
  8. Sistema apresenta formulário para informações de pagamento
  9. O ator fornece informações de pagamento (Detalhes em outro caso de uso)
  10. O sistema confirma os detalhes e fornece um ID de reserva
  11. O ator salva bilhete
  12. O ator sai do sistema.

Casos de uso incluídos

- Faça o pagamento

– Gerar ID de Reserva

Casos de uso estendidos

– Gerar Nota de Falha de Pagamento

- Imprimir Bilhete

As etapas no fluxo principal são claras, mas
Os detalhes da interface do usuário são deixados de fora. Detalhes da interface do usuário no caso de uso
em relação à seleção de assentos e correspondência
seleção pode tornar o caso de uso pesado.
O caso de uso mostra claramente o que o ator deve fazer e o que o sistema fará
O processo de pagamento é detalhado em um
caso de uso diferente para que as tarefas possam ser
facilmente dividido em diferentes componentes de design.
Os casos de uso incluídos e estendidos são nomeados
para que se possa
consulte-os para obter mais detalhes.

Fluxo alternativo

-cancelar ingressos

  1. Ator cancela a transação
  2. Sistema cancela transação

Fluxo de exceção

-Ingressos não disponíveis para partidas selecionadas/lugares selecionados

1. O sistema exibe uma mensagem de erro

Os fluxos alternativos e de exceção são detalhados.

* O caso de uso pode ser mais detalhado em termos de referências e fluxos alternativos e de exceção. Este exemplo é para destacar o que deve ser englobado em um caso de uso bem escrito.

Exemplo - 2

Detalhes do caso de uso Comentários

Nome do caso de uso - Pedido de ingresso

O nome não é da perspectiva do usuário e parece uma definição de processo de negócios.

Descrição – O ator visita o site, visualiza a programação, seleciona o jogo e os lugares, reserva o bilhete e efetua o pagamento do jogo de futebol

O objetivo do caso de uso está ausente. Designers, analistas de teste e desenvolvedores não entenderão por que essa funcionalidade deve ser desenvolvida.

Atores - Cliente, Representante de Atendimento ao Cliente
Gatilho – O ator acessou o sistema para reservar ingressos.
Pós-condição – O ator pode reservar ingressos. O sistema atualiza as informações.

Faltam as pré-condições.

Etapas do fluxo principal

  1. O cliente acede ao site e seleciona a opção 'Reservar Bilhetes' 'para reservar bilhetes
  2. O sistema exibe a lista de correspondências em uma lista suspensa.
  3. O Representante de Atendimento ao Cliente seleciona na lista suspensa
  4. O sistema exibe os detalhes do assento em um mapa dos assentos
  5. O ator seleciona os assentos. Se os assentos não estiverem disponíveis e uma mensagem de erro for exibida.
  6. O ator dá detalhes de pagamento
  7. O ator reserva o ingresso, senão cancela o ingresso.
  8. O sistema gera um ID de reserva usando o primeiro nome do cliente e um número de 4 dígitos gerado aleatoriamente

Casos de uso incluídos
- Faça o pagamento

Nas etapas do caso de uso, há algumas referências a elementos reais da interface do usuário que podem confundir o leitor. Fluxos alternativos são escritos dentro do fluxo principal, o que dificulta a compreensão de todo o processo.
O ator é referido por muitos nomes – 'Cliente, Ator e Representante de Atendimento ao Cliente, o que é confuso.
A geração do ID de reserva é explicada aqui, embora não seja uma preocupação para os atores relacionados à solicitação de ingressos.
Não há fluxos alternativos, fluxos de exceção e nenhuma menção a todos os casos de uso relacionados.

Este caso de uso carece de clareza e detalhamento e não ajudará a equipe a desenvolver a funcionalidade adequadamente.

O que deve estar em um caso de uso O que não deve estar em um caso de uso
  1. Nome
  2. Descrição/Objetivo
  3. Pré-condições
  4. Acionar
  5. Fluxo Básico e Fluxos Alternativos
  6. Cenários de exceção
  7. Pós-condições
  8. Requisitos especiais se houver
  9. Link para os detalhes da interface do usuário e outros modelos/diagramas relacionados
  1. Detalhes de implementação
  2. Processamento interno
  3. requisitos não Funcionais
  4. Os detalhes da interface do usuário devem ser feitos simultaneamente com os casos de uso, mas em um documento separado

.

Algumas dicas a seguir para escrever casos de uso úteis:

  1. Escreva as etapas do caso de uso da perspectiva do ator.
  2. Os casos de uso não devem ter detalhes de design e arquitetura. Deve concentrar-se no processo de negócios.
  3. É melhor se as etapas no caso de uso forem escritas de forma ordenada no tempo
  4. Dependendo dos requisitos e da complexidade, decida se as operações CRUD (Criar, Ler, Atualizar e Excluir) precisam ser mantidas em casos de uso separados ou podem ser combinadas em um.
  5. É importante fornecer referências de e para fluxos alternativos, fluxos de exceção, casos de uso incluídos e casos de uso estendidos para que o design de negócios esteja completo.
  6. Escolha um modelo (definido pelo projeto, definido pela empresa ou qualquer um detalhado) e siga a estrutura para todos os casos de uso.
  7. É importante ter diagramas de casos de uso.
  8. No Agile, temos histórias de usuários para capturar requisitos. As histórias de usuários podem ser detalhadas usando casos de uso enxutos de maneira iterativa.
  9. As validações devem ser detalhadas.

Depois de escrever um caso de uso, faça essas perguntas e é um caso de uso eficaz se a resposta for “Sim” para todas as perguntas –

  1. O usuário saberá quando o fluxo de negócios presente no caso de uso for executado?
  2. Está claro quem executará qual etapa do caso de uso?
  3. A descrição da lógica de negócios é tal que haja informações suficientes para análise, projeto, desenvolvimento e teste?
  4. Existem referências adequadas do fluxo principal para os fluxos alternativos e de exceção?
  5. Existe um diagrama de caso de uso presente?

Os casos de uso são uma maneira eficaz de capturar requisitos e documentar formalmente os processos de negócios se estiverem bem escritos. Toda a equipe deve ser treinada para usar casos de uso para realizar suas tarefas. Casos de uso e diagramas de casos de uso são uma ótima maneira de discutir os processos de negócios com os clientes. É melhor ter um modelo de caso de uso padrão com diretrizes sobre como escrever casos de uso. Casos de uso escritos dessa forma serão valorizados por todos os membros da equipe do projeto e partes interessadas.