Pular para conteúdo

Aula 04 - Diagrama de Casos de Uso 👥

Módulo

MÓDULO 1 – FUNDAMENTOS E REQUISITOS


1. O Contrato Funcional: Casos de Uso 📚

O diagrama de casos de uso é o coração da modelagem comportamental. Ele descreve o que o sistema faz do ponto de vista do usuário (Ator), sem se preocupar com o "como" interno.

🧠 Elementos Chave

Ator

Representa um papel desempenhado por um usuário humano ou um sistema externo que interage com o sistema.

Caso de Uso

Uma unidade funcional que representa uma tarefa completa realizada pelo sistema. Deve começar sempre com um verbo no infinitivo.


2. Modelagem Prática de Biblioteca 📊

Um diagrama de casos de uso define a fronteira do sistema e as interações principais.

graph LR
    subgraph "Fronteira: Sistema Biblioteca"
        UC1((Emprestar Livro))
        UC2((Consultar Acervo))
        UC3((Manter Usuário))
    end

    User((👤 Usuário))
    Admin((👨‍💼 Bibliotecário))

    User --> UC1
    User --> UC2
    Admin --> UC3
    Admin -- "Auxilia" --> UC1

    style User fill:#e1f5fe
    style Admin fill:#fff3e0

3. Relacionamentos: Include e Extend ⚙️

Entender a diferença entre dependência obrigatória e opcional é vital para o nível intermediário.

# Simulando validação de diagrama de casos de usouc-check --file biblioteca.uc> Verificando 'Emprestar Livro'...
> Localizado relacionamento 'include' -> 'Validar Login'
> Localizado relacionamento 'extend' -> 'Calcular Multa'
> Status: Sucesso!

Include vs Extend

  • Include: Obrigatório. (Ex: Para emprestar, sempre precisa validar o usuário).
  • Extend: Opcional/Condicional. (Ex: Calcular multa só acontece se houver atraso).

4. Generalização de Atores 🎭

Assim como no código OO, atores podem herdar permissões.

Ator Pai Ator Filho Benefício
Funcionário Gerente Gerente herda tudo que funcionário faz
Cliente Cliente VIP VIP possui extensões de desconto
Sistema Sistema de Pagamento Especialização de logs e APIs

5. Mini-Projeto Prático 🚀

Cenário: Sistema de Delivery de Comida.

Desafio: 1. Desenhe (mentalmente ou rascunho) 3 atores: Cliente, Entregador, Restaurante. 2. Identifique um caso de uso que use include. 3. Identifique um caso de uso que use extend.

Antipattern

Não tente modelar o fluxo do processo em Casos de Uso. Use-os para listar funcionalidades. Para fluxos, usaremos o Diagrama de Atividades.


🎯 Materiais e Prática

  • Slides Interativos --- Acesse a apresentação visual da aula. Ver Slides

  • Testar Conhecimento --- Responda ao Quiz da aula para fixar os conceitos. Responder Quiz

  • Exercícios Progressivos --- Pratique com 5 exercícios de fixação e desafio. Praticar

  • Mini-Projeto --- Aplique a análise no seu projeto de referência. Ver Projeto


Próxima Aula: Especificação de Casos de Uso ➡️