🚀 Capítulo 15: Diagrama de Comunicação (Tema: Naruto)
NOTE
Este capítulo utiliza a temática de Naruto para explicar a Comunicação. Para um ataque em equipe funcionar, as mensagens entre os ninjas devem ser numeradas e organizadas!
1. 🎯 Objetivo da Aula
Compreender o conceito de Diagrama de Comunicação (antigo Diagrama de Colaboração) e como ele foca nos relacionamentos estruturais entre os objetos.
2. 🏢 O Cenário Prático (Seu Desafio)
O Time 7 (Naruto, Sasuke e Sakura) vai realizar um ataque combinado contra um inimigo. No Diagrama de Sequência (Capítulo 11), focaríamos no tempo. Aqui, queremos focar em quem fala com quem e em qual ordem. Seu desafio é modelar esse ataque em equipe no Draw.io!
3. 🧠 Fundamentos: A Teoria Traduzida
O Diagrama de Comunicação é muito parecido com o Diagrama de Sequência (ambos são diagramas de interação), mas com uma disposição diferente.
🗺️ Diferenças para o de Sequência:
- Sequência: Foca no tempo (eixo vertical). Bom para ver a ordem cronológica.
- Comunicação: Foca na organização dos objetos. Bom para ver o impacto de mudar um objeto no sistema.
🔣 Como funciona?
- Os objetos são retângulos simples (sem a linha do tempo descendo).
- Desenhamos linhas de associação ligando os objetos que conversam.
- As mensagens são escritas sobre as linhas, acompanhadas de uma seta de direção e um número de sequência.
1: atacar()2: darSuporte()3: curar()
4. 📖 Exemplo Guiado: O Ataque do Time 7
- Desenhe 3 retângulos:
Naruto,SasukeeSakura. - Ligue
NarutoaSasukecom uma linha. - Ligue
SasukeaSakuracom uma linha. - Na linha entre Naruto e Sasuke, coloque:
1: criarDistracao() ->(apontando para Sasuke). - Na linha entre Sasuke e Sakura, coloque:
2: ataquePrincipal() ->(apontando para Sakura).
5. 🛠️ Prática Obrigatória 1: Ataque Combinado
Desenhe o diagrama de comunicação do exemplo guiado no Draw.io.
- Adicione uma mensagem
3: curar()voltando de Sakura para Naruto. - Exporte a imagem.
6. 🛠️ Prática Obrigatória 2: Sequência vs Comunicação
Se você precisasse mostrar para um cliente o passo a passo exato (no tempo) de como funciona o checkout de um e-commerce, você usaria o Diagrama de Sequência ou o de Comunicação? Justifique.
7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
- Faça o Commit: No GitHub Desktop, digite a mensagem (ex:
Finaliza Capítulo 15 UML) e clique em Commit to main. - Envie para a Nuvem (Push): Clique em Push origin.
8. 📂 Estrutura de Pastas
extra_guia_de_modelagem_uml/
├── capitulos/
│ ├── capitulo_15_comunicacao.md
│ └── codigos/
│ └── cap15/
│ └── ataque_time7.png9. 💡 Checkpoint de Lógica
Por que os números nas mensagens são fundamentais no Diagrama de Comunicação, mas não eram necessários no Diagrama de Sequência?
10. 🔥 Desafio de Fixação
Pesquise como representar mensagens concorrentes (que acontecem ao mesmo tempo) no Diagrama de Comunicação.
11. 🔑 Gabarito de Código/Fórmulas
Resposta da Prática 2: Usaria o Diagrama de Sequência, pois ele foi feito especificamente para mostrar a ordem cronológica e o fluxo de tempo das ações, tornando mais fácil para o cliente entender o passo a passo.