Relacionando Múltiplos Use Cases

Introdução
- UML tem uma notação especial para Use Cases em dois casos:
- Use Cases grandes podem ser quebrados em vários Use Cases menores mas relacionados
- A duplicação de certos passos de Use Cases diferentes pode se fatorada em um Use Case
separado
- Veremos como fazer isso para os Use Cases seguintes do estudo de caso:
- Pagar com dinheiro
- Pagar com cartão de crédito (CC)
- Pagar com cheque
Relacionamentos "Uses" em UML
- Se um Use Case inicia outro Use Case (isto é, inclui o comportamento de outro Use
Case), o relacionamento entre os dois é do tipo "Uses"
- Exemplo: O Use Case Comprar Itens pode iniciar um dos Use Cases seguintes:
- Pagar com dinheiro
- Pagar com cartão de crédito (CC)
- Pagar com cheque
- Ver o diagrama UML abaixo

- Na descrição do Use Case, a palavra "initiate" (iniciar) é usada para
identificar que um Use Case usa outro
O Use Case Comprar Itens
Use case: Comprar itens
Atores: Cliente (iniciador), Caixa
Descrição: Um cliente chega ao caixa com itens a comprar.
O caixa registra os itens comprados e recebe pagamento.
No fim, o cliente sai com os itens comprados.
Sequência típica de eventos
Ação do ator |
Resposta do sistema |
- O Use Case inicia quando um cliente chega a um caixa munido de TPDV com itens a comprar
|
|
- O caixa registra a identificação de cada item
Se houver mais itens, o caixa pode informar a quantidade também
|
- Determina o preço do item e adiciona a informação ao total da transação de venda
A descrição e preço do item corrente são exibidos
|
- Ao completar a entrada dos itens, o caixa indica este fato ao TPDV
|
- Calcula e apresenta o total da venda
|
- O caixa informa o total da venda ao cliente
|
|
- O cliente escolhe o método de pagamento:
a. Se for dinheiro, iniciar Pagar Com Dinheiro
b. Se for CC, iniciar Pagar Com CC
a. Se for cheque, iniciar Pagar Com Cheque
|
|
|
- Faz log da venda completada
|
|
- Gera um recibo impresso
|
- O caixa entrega o recibo impresso ao cliente
|
|
- O cliente sai da loja com os itens comprados
|
|
Sequências Alternativas:
Seção 2: Identificador inválido de item informado: Exibit erro.
Seção 7: Cliente não pode pagar: Cancelar transação de venda
Use Cases Relacionados:
Usa Pagar com dinheiro
Usa Pagar com CC
Usa Pagar com Cheque
O Use Case Pagar com Dinheiro
Use case: Pagar com Dinheiro
Atores: Cliente (iniciador), Caixa
Descrição: Um cliente paga uma venda com dinheiro num terminal ponto-de-venda
Sequência típica de eventos
Ação do ator |
Resposta do sistema |
- O Use Case inicia quando um cliente decide pagar uma venda com dinheiro, após descobrir
o valor total da venda
|
|
- O cliente entrega o pagamento em dinheiro (o "valor entregue", possivelmente
maior que o total da venda
|
|
- O Caixa registra o valor entregue
|
- Exibe o troco devido ao Cliente
|
- O Caixa deposita o dinheiro recebido e devolve o troco devido
|
|
Sequências Alternativas:
Seção 2: O Cliente não tem dinheiro suficiente. Pode cancelar a venda ou iniciar
um novo método de pagamento
Seção 3: A gaveta não tem dinheiro para pagar o troco. Caixa pede dinheiro ao supervisor
ou pede ao Cliente para escolher outro método de pagamento
O Use Case Pagar com Cartão de Crédito
Use case: Pagar com Cartão de Crédito
Atores: Cliente (iniciador), Caixa, Serviço de Autorização de Crédito,
Contas A Receber
Descrição: Um cliente paga uma venda com cartão de crédito num terminal
ponto-de-venda. O pagamento é validado num serviço externo de autorização
de crédito e é lançado num sistema de contas a receber.
Sequência típica de eventos
Ação do ator |
Resposta do sistema |
- O Use Case inicia quando um cliente decide pagar uma venda com CC, após descobrir o
valor total da venda
|
|
- O cliente entrega a informação de crédito para o pagamento
|
- Gera um pedido de pagamento com CC e o envia a um Serviço de
Autorização de Crédito
|
- O Serviço de Autorização de Crédito autoriza o pagamento
|
- Recebe uma aprovação de crédito do Serviço de Autorização de Crédito
|
|
- Lança o pagamento com crédito e informação de autorização no
sistema de Contas a Receber
|
|
- Exibe uma messagem de sucesso de autorização
|
Sequências Alternativas:
Seção 4: A autorização é negada pelo Serviço de Autorização de Crédito. O Caixa sugere
um outro método de pagamento.
O Use Case Pagar com Cheque
Use case: Pagar com Cheque
Atores: Cliente (iniciador), Caixa, Serviço de Autorização de Cheque
Descrição: Um cliente paga uma venda com cheque num terminal
ponto-de-venda. O pagamento é validado num serviço externo de autorização
de cheque.
Sequência típica de eventos
Ação do ator |
Resposta do sistema |
- O Use Case inicia quando um cliente decide pagar uma venda com cheque, após descobrir o
valor total da venda
|
|
- O cliente escreve o cheque e se identifica
|
|
- O Caixa registra a informação de identificação e pede a
autorização de pagamento com cheque
|
- Gera um pedido de pagamento com cheque e o envia a um Serviço de
Autorização de Cheque
|
- O Serviço de Autorização de Cheque autoriza o pagamento
|
- Recebe uma aprovação de crédito do Serviço de Autorização de
Cheque
|
|
- Exibe uma messagem de sucesso de autorização
|
Sequências Alternativas:
Seção 5: A autorização é negada pelo Serviço de Autorização de Cheque. O Caixa sugere
um outro método de pagamento.
anal2-2 programa anterior
próxima