Diagramas de caso de uso

Uma parte importante da Unified Modeling Language (UML) são os recursos para desenhar diagramas de caso de uso. Os casos de uso são usados ​​durante a fase de análise de um projeto para identificar e particionar a funcionalidade do sistema. Eles separam o sistema em atores e casos de uso. Atores representam funções que podem ser desempenhadas por usuários do sistema.

Esses usuários podem ser humanos, outros computadores, peças de hardware ou até mesmo outros sistemas de software. O único critério é que eles devem ser externos à parte do sistema que está sendo particionada em casos de uso. Eles devem fornecer estímulos a essa parte do sistema, e devem receber resultados dele.

Os casos de uso representam as atividades que os atores executam com a ajuda do seu sistema na busca de um objetivo. Precisamos definir o que esses usuários (atores) precisam do sistema. O caso de uso deve refletir as necessidades e objetivos do usuário e deve ser iniciado por um ator. Negócios, atores, clientes que participam do caso de uso de negócios devem estar conectados ao caso de uso por associação.

Desenho de diagramas de casos de uso

A Figura abaixo mostra como um caso de uso pode se parecer com a forma esquemática UML. O próprio caso de uso se parece com um oval. Os atores são desenhados como pequenas figuras de palitos. Os atores são conectados ao caso de uso por linhas.

Use-case 1 - O balconista verifica um item

  • O cliente coloca o item no balcão.
  • «Usa» Swipe UPC Reader.
  • O sistema procura o código UPC na descrição e preço do item de aquisição do banco de dados
  • O sistema emite um bipe audível.
  • O sistema anuncia a descrição e o preço do item sobre a saída de voz.
  • O sistema adiciona preço e tipo de item à fatura atual.
  • O sistema adiciona preço para corrigir o subtotal do imposto

Portanto, o relacionamento «usa» é muito parecido com uma chamada de função ou uma sub-rotina.

O caso de uso usado dessa maneira é chamado de caso de uso abstrato porque não pode existir por si mesmo, mas deve ser usado por outros casos de uso.

Exemplo ─ Caso de uso de retirada

O objetivo de um cliente em relação à nossa máquina de venda automática de dinheiro (ATM) é retirar dinheiro. Então, estamos adicionandoWithdrawalcaso de uso. Retirar dinheiro da máquina de venda automática pode envolver um banco para as transações a serem feitas. Então, também estamos adicionando outro ator -Bank. Os dois atores que participam do caso de uso devem estar conectados ao caso de uso por associação.

A máquina de venda automática de dinheiro fornece um caso de uso de Retirada para o cliente e atores do Banco.

Relações entre atores e casos de uso

Os casos de uso podem ser organizados usando os seguintes relacionamentos -

  • Generalization
  • Association
  • Extend
  • Include

Generalização entre casos de uso

Pode haver instâncias em que os atores estão associados a casos de uso semelhantes. Nesse caso, um caso de uso Filho herda as propriedades e o comportamento do uso pai. Portanto, precisamos generalizar o ator para mostrar a herança das funções. Eles são representados por uma linha sólida com uma grande ponta de seta triangular oca.

Associação entre casos de uso

As associações entre atores e casos de uso são indicadas em diagramas de casos de uso por linhas sólidas. Uma associação existe sempre que um ator está envolvido em uma interação descrita por um caso de uso.

Ampliar

Existem algumas funções que são acionadas opcionalmente. Nesses casos, o relacionamento de extensão é usado e a regra de extensão é anexada a ele. Uma coisa a lembrar é que o caso de uso base deve ser capaz de executar uma função por conta própria, mesmo se o caso de uso de extensão não for chamado.

O relacionamento estendido é mostrado como uma linha tracejada com uma ponta de seta aberta direcionada do caso de uso estendido para o caso de uso estendido (base). A seta é rotulada com a palavra-chave «extend».

Incluir

Ele é usado para extrair fragmentos de casos de uso que são duplicados em vários casos de uso. Ele também é usado para simplificar grandes casos de uso, dividindo-os em vários casos de uso e para extrair partes comuns dos comportamentos de dois ou mais casos de uso.

Inclui o relacionamento entre os casos de uso que é mostrado por uma seta tracejada com uma ponta de seta aberta do caso de uso base para o caso de uso incluído. A seta é rotulada com a palavra-chave «incluir».

Os casos de uso tratam apenas dos requisitos funcionais de um sistema. Outros requisitos, como regras de negócios, requisitos de qualidade de serviço e restrições de implementação, devem ser representados separadamente.

O diagrama mostrado abaixo é um exemplo de diagrama de caso de uso simples com todos os elementos marcados.

Princípios básicos para a aplicação bem-sucedida de casos de uso

  • Mantenha a simplicidade contando histórias
  • Seja produtivo sem perfeição
  • Entenda o quadro geral
  • Identificar oportunidade de reutilização para casos de uso
  • Foco no valor
  • Construa o sistema em fatias
  • Entregue o sistema em incrementos
  • Adapte-se para atender às necessidades da equipe

Modelo de caso de uso

Aqui, mostramos um modelo de exemplo de um caso de uso que um analista de negócios pode preencher para que as informações possam ser úteis para a equipe técnica apurar informações sobre o projeto.

ID de caso de uso:
Nome do caso de uso:
Criado por: Atualizado pela última vez por
Data Criada: Data da Última Atualização
Ator:
Descrição:
Pré-condições:
Pós-condições:
Prioridade:
Frequência de uso:
Curso normal de eventos:
Cursos Alternativos:
Exceções:
Inclui:
Requisitos especiais:
Suposições:
Notas e problemas: