Aula 20 - Projeto Capstone: Especificação de Arquitetura UML Completa 🚀
Objetivo Pedagógico
Objetivo: Conceber e consolidar uma especificação arquitetural exaustiva de um sistema distribuído em UML 2.5: Diagrama de Casos de Uso com fronteiras de sistema, Diagrama de Classes de domínio, Diagrama de Sequência detalhado de autenticação e Diagrama de Implantação em nuvem.
📑 1. Fundamentos Teóricos & Análise Técnica
O Projeto Capstone de Modelagem UML une todas as visões arquiteturais em um documento canônico de engenharia de software (Software Architecture Document - SAD).
Uma especificação arquitetural completa atende ao modelo das 4+1 Visões de Philippe Kruchten: 1. Visão de Casos de Uso (+1): Define o escopo funcional e os atores externos com relacionamentos <<include>> (inclusão mandatória) e <<extend>> (extensão condicional). 2. Visão Lógica: Diagramas de Classes de domínio e modelos de componentes expondo a estrutura conceitual do software. 3. Visão de Processo: Diagramas de Sequência e Atividades mapeando concorrência, performance e fluxos de mensageria. 4. Visão de Desenvolvimento: Diagramas de pacotes e dependências de código. 5. Visão Física: Diagrama de Implantação documentando a topologia de servidores, gateways, balanceadores e bancos em nuvem.
📐 Arquitetura Conceitual & Diagrama de Fluxo
graph TD
SAD["Documento de Arquitetura de Software (SAD 4+1)"] --> V1["Visão de Casos de Uso (+1): Escopo e Atores"]
SAD --> V2["Visão Lógica: Classes e Domínio de Negócio"]
SAD --> V3["Visão de Processo: Sequência e Comunicação"]
SAD --> V4["Visão Física: Nós de Implantação e Infraestrutura Cloud"]
style SAD fill:#e1f5fe,stroke:#01579b
style V1 fill:#fff3e0,stroke:#e65100
style V2 fill:#f3e5f5,stroke:#7b1fa2
style V3 fill:#e8f5e9,stroke:#2e7d32
style V4 fill:#e0f2f1,stroke:#00695c 🔍 Pilares e Diretrizes Técnicas
Nesta unidade, aprofundamos os seguintes conceitos fundamentais: - Comunicação Unívoca entre Equipes: Eliminação de ambiguidades entre equipes de produto, engenharia e operações. - Rastreabilidade Fim a Fim: Cada requisito de caso de uso mapeia diretamente para classes de domínio e nós de infraestrutura. - Governança e Tomada de Decisão (ADR): Suporte visual à documentação de Registros de Decisões Arquiteturais (Architectural Decision Records). - Facilitação de Auditorias de Conformidade: Evidência formal de conformidade arquitetural perante órgãos reguladores e clientes enterprise.
🛠️ 2. Implementação Prática em Engenharia de Software, UML 2.5 e Arquitetura de Sistemas
Abaixo está a implementação técnica de referência, estruturada com padrões de engenharia de software e foco em robustez:
// capstone_use_case_architecture.mermaid (Diagrama de Casos de Uso do Ecossistema Corporativo)
graph LR
subgraph Atores
Cliente((Cliente Web/App))
Operador((Operador de Suporte))
SistemaBancario((Gateway Bancário))
end
subgraph Sistema ["Fronteira do Sistema: Portal de Serviços"]
UC1[Autenticar Usuário]
UC2[Realizar Compra]
UC3[Processar Pagamento]
UC4[Consultar Extrato]
UC5[Estornar Transação]
end
Cliente --> UC1
Cliente --> UC2
Cliente --> UC4
UC2 -.->|<<include>>| UC1
UC2 -.->|<<include>>| UC3
Operador --> UC5
UC3 --> SistemaBancario
UC5 --> SistemaBancario 💡 Análise Passo a Passo do Código
- Fronteira Delimitada do Sistema: Isola os casos de uso pertencentes ao escopo dos atores externos.
- Relacionamento
<<include>>Obrigatório: Garante que a realização de compras exija autenticação e pagamento sem redundância de código. - Múltiplos Atores Integrados: Ilustra papéis de usuários comuns, operadores privilegiados e sistemas terceiros conectados.
🎯 3. Próximos Passos & Sequência Didática
-
Slides da Aula
-
Quiz de Fixação
-
Exercícios Práticos
-
Desafio de Projeto