Modelagem de Caso de Uso
Vamos, então, descrever os usos.
Modelagem de caso de uso é uma técnica poderosa usada no desenvolvimento de software para
capturar e entender os requisitos funcionais de um sistema. Ela fornece uma abordagem estruturada
para identificar as interações entre os usuários (chamados de atores) e o sistema, ajudando a extrair
as classes envolvidas.
Observe os exemplos apresentados a seguir.
Sistema de Compras On-line
Caso de uso: fazer pedido;
Ator: cliente;
Descrição: este caso de uso representa o processo de um cliente fazer um pedido em
um sistema de compras on-line;
Cenário Principal
1 O cliente navega no catálogo de produtos;
2 O cliente adiciona itens ao carrinho de compras;
3 O cliente analisa os itens no carrinho de compras;
4 O cliente fornece informações de envio e faturamento;
5 O sistema calcula o valor total;
6 O cliente confirma o pedido;
7 O sistema processa o pagamento;
8 O sistema envia uma confirmação do pedido para o cliente.
Classes Identificadas
Cliente: representa o cliente que interage com o sistema;
Produto: representa os itens disponíveis no catálogo de produtos;
Carrinho de compras: gerencia os itens adicionados pelo cliente;
Pedido: representa o pedido do cliente, incluindo informações de envio e faturamento;
Pagamento: processa as transações de pagamento;
Disparador: envia e-mails de confirmação de pedido para os clientes.
Nesse exemplo, podemos perceber nitidamente a forma como abstraímos as classes a partir dos
requisitos, gerando classes que, por sua vez, terão atributos como: Cliente (CPF, nome, CEP,
endereço, complemento, UF e cidade, entre outros). Você colocará os metadados referentes aos
atributos, por exemplo: CPF (campo alfanumérico, 10 caracteres, ou seja, XXXXXXXXXX – sem
mascaramento de ponto. Com mascaramento, ficariam 13 caracteres, ou seja, XX.XXX.XXX-XX. Assim
você vai construindo a modelagem conceitual do seu Banco, baseado nas classes e nos
relacionamentos possíveis, montando o diagrama ER, fazendo as cardinalidades e depois
normalizando as tabelas.