Introdução
Diagramas de comunicação, também conhecidos como diagramas de colaboração no UML 1.x, são um tipo de diagrama de interação que enfatiza as relações entre objetos e as mensagens que trocam. Esses diagramas oferecem uma visão mais flexível das interações em comparação com os diagramas de sequência, tornando-os particularmente úteis para compreender o fluxo de controle entre diferentes interações em um sistema. Este artigo aprofundará os conceitos principais dos diagramas de comunicação, focando como eles modelam o padrão Model-View-Controller (MVC), e fornecerá uma interpretação detalhada de um exemplo de diagrama de comunicação.
Conceitos Principais dos Diagramas de Comunicação
Objetos e Links
- Objetos: Representados por retângulos, os objetos em um diagrama de comunicação são instâncias de classes ou interfaces. São as entidades principais que participam das interações.
- Links: Linhas que conectam objetos, representando associações ou outras relações entre eles. Os links podem ser associações simples, agregações ou composições.
Mensagens
- Mensagens: Setas entre objetos que representam a comunicação entre eles. As mensagens podem ser síncronas (setas sólidas) ou assíncronas (setas tracejadas).
- Tipos de Mensagens:
- Mensagens Síncronas: Representam chamadas de método onde o chamador espera que o chamado complete a operação.
- Mensagens Assíncronas: Representam sinais ou eventos onde o chamador não espera que o chamado complete a operação.
Números de Sequência
- Números de Sequência: Números ao lado das mensagens que indicam a ordem em que as mensagens são enviadas. Esses números ajudam a compreender a sequência das interações.
Modelagem do Padrão MVC
O padrão Model-View-Controller (MVC) é um padrão de design usado para desenvolver interfaces do usuário que divide a lógica do programa relacionada em três elementos interconectados. Essa separação ajuda a gerenciar aplicações complexas dividindo as responsabilidades:
- Modelo: Gerencia os dados, a lógica e as regras da aplicação.
- Visualização: Representa os elementos da interface do usuário, como caixas de texto, listas suspensas, etc.
- Controlador: Atua como intermediário entre Modelo e Visualização, processando toda a lógica de negócios e solicitações recebidas, manipulando dados usando o Modelo e interagindo com a Visualização para exibir a saída.
Interpretação do Diagrama de Comunicação

Vamos analisar o diagrama de comunicação fornecido, que modela o padrão MVC para agendamento de uma inspeção:
Atores e Objetos
- Inspector: O usuário que inicia o processo de agendamento da inspeção.
- Assistente do Inspector: Outro usuário que revisa os detalhes da inspeção.
- Formulário de Inspeção: O componente da interface que permite aos usuários inserir detalhes da inspeção.
- Lista de Inspeções: O componente da interface que exibe uma lista de inspeções.
- Controlador de Inspeção de Segurança: O controlador que gerencia o processo de inspeção.
- Inspeção de Segurança: O modelo que representa os dados da inspeção.
Links e Mensagens
- Inspector seleciona uma inspeção (Mensagem 1):
- O Inspector seleciona uma inspeção da
Lista de Inspeções. - Esta ação dispara uma mensagem para exibir o
Formulário de Inspeção(Mensagem 2).
- O Inspector seleciona uma inspeção da
- Formulário de Inspeção carrega a inspeção (Mensagens 3 e 8):
- O
Formulário de Inspeçãoenvia uma mensagem para oControlador de Inspeção de Segurançapara carregar a inspeção selecionada (Mensagem 3). - O
SafetyInspectionControllerrecupera os detalhes da inspeção do modeloSafetyInspectionmodelo (Mensagem 4). - O
SafetyInspectionControllerentão envia os detalhes da inspeção de volta para oInspectionForm(Mensagem 8).
- O
- O Inspector especifica a data da inspeção (Mensagens 5, 6 e 7):
- Se a inspeção não estiver vencida, o Inspector especifica a data da inspeção (Mensagem 5).
- Se a inspeção estiver vencida, o Inspector especifica a data vencida da inspeção (Mensagem 6).
- O Inspector clica no botão salvar no
InspectionForm(Mensagem 7).
- InspectionForm salva a inspeção (Mensagens 9 a 14):
- O
InspectionFormenvia uma mensagem para oSafetyInspectionControllerpara salvar os detalhes da inspeção (Mensagem 9). - O
SafetyInspectionControlleratualiza o modeloSafetyInspectioncom os novos detalhes (Mensagens 10 a 14).
- O
- O Assistente do Inspector revisa os detalhes da inspeção (Mensagens 15 a 18):
- O
Assistente do Inspetorrevisa os detalhes da inspeção (Mensagem 15). - O
Assistente do Inspetorseleciona a inspeção a partir doLista de Inspeção(Mensagem 16). - O
Assistente do Inspetorclica no botão salvar noFormulário de Inspeção(Mensagem 17). - O
Formulário de Inspeçãoenvia uma mensagem para oControlador de Inspeção de Segurançapara salvar os detalhes da inspeção (Mensagem 18). - O
Controlador de Inspeção de Segurançarecupera os detalhes da inspeção doModelo de Inspeção de Segurançamodelo (Mensagem 19). - O
Controlador de Inspeção de Segurançaenvia os detalhes da inspeção de volta para oFormulário de Inspeção(Mensagem 20). - O
Assistente do Inspetorrevisa os detalhes atualizados da inspeção (Mensagem 21).
- O
Números de Sequência
- Números de Sequência: Os números ao lado das mensagens indicam a ordem em que as mensagens são enviadas. Por exemplo, a Mensagem 1 é a primeira mensagem enviada, e a Mensagem 21 é a última mensagem enviada.
Significado dos Diagramas de Comunicação
Os diagramas de comunicação são instrumentais no processo de desenvolvimento de software por várias razões:
- Projeto do Sistema: Eles ajudam na visualização do comportamento dinâmico de um sistema ao mostrar a sequência de interações entre objetos.
- Comunicação: Eles servem como uma ajuda visual para os interessados compreenderem o comportamento do sistema sem se aprofundar em detalhes técnicos.
- Análise de Requisitos: Eles ajudam a identificar e documentar os requisitos do sistema ao ilustrar as interações entre objetos.
- Testes: Eles fornecem uma base para criar casos de teste para verificar se o sistema atende aos requisitos especificados.
Conclusão
Os diagramas de comunicação são uma ferramenta poderosa na engenharia de software para visualizar o comportamento dinâmico de um sistema. Ao ilustrar a sequência de interações entre objetos, esses diagramas facilitam uma melhor comunicação, análise de requisitos e projeto do sistema. O exemplo do padrão MVC demonstra como os diagramas de comunicação podem capturar efetivamente as interações essenciais dentro de um sistema, garantindo uma compreensão abrangente de seu comportamento. Seja você um iniciante ou um desenvolvedor experiente, os diagramas de comunicação fornecem as ferramentas e insights necessários para projetar e documentar sistemas complexos de forma eficaz.
Referências
Visual Paradigm
- O que é um Diagrama de Comunicação?
- O que é um Diagrama de Comunicação? – Visual Paradigm 22
- Este artigo explica os fundamentos dos diagramas de comunicação no UML, incluindo sua estrutura e componentes. Também fornece insights sobre o uso do Visual Paradigm para criar esses diagramas.
- Como desenhar um Diagrama de Comunicação?
- Como desenhar um Diagrama de Comunicação? – Visual Paradigm 23
- Um guia passo a passo sobre como desenhar diagramas de comunicação usando o Visual Paradigm, incluindo dicas sobre o uso de fragmentos combinados e mensagens auto-referentes.
- Diagrama de Comunicação – Diagramas UML 2
- Diagrama de Comunicação – Diagramas UML 2 – Visual Paradigm 24
- Este artigo explica como os diagramas de comunicação são usados para modelar o comportamento dinâmico de um caso de uso, focando na colaboração entre objetos em vez da sequência temporal.
Cybermedian
- Diagrama de Comunicação – Tutorial UML 2
- Diagrama de Comunicação – Tutorial UML 2 – Sparx Systems 25
- Este tutorial fornece uma visão geral dos diagramas de comunicação, seus componentes e como são usados para modelar o comportamento dinâmico de um sistema.
- Diagramas UML: Um Guia Completo
- Diagramas UML: Um Guia Completo – Cybermedian 26
- Um guia completo sobre os diferentes tipos de diagramas UML, incluindo diagramas de comunicação, e sua importância na engenharia de software.
- Diagrama de Comunicação – Linguagem de Modelagem Unificada (UML)
- Diagrama de Comunicação – Linguagem de Modelagem Unificada (UML) – GeeksforGeeks 27
- Este artigo fornece uma visão detalhada dos diagramas de comunicação UML, seus conceitos principais e como são usados para visualizar as interações entre objetos ou componentes em um sistema.
ArchiMetric
- O que é Diagrama de Sequência – ArchiMetric
- O que é Diagrama de Sequência – ArchiMetric 28
- Este artigo explica o que são diagramas de sequência e como são usados para modelar os comportamentos dinâmicos de um sistema usando o Visual Paradigm.
- Introdução aos Diagramas UML no Visual Paradigm
- Introdução aos Diagramas UML no Visual Paradigm – ArchiMetric 29
- Uma introdução aos diferentes tipos de diagramas UML suportados pelo Visual Paradigm, incluindo diagramas de comunicação e seu papel na modelagem de interações do sistema.
- Navegando pelo UML: Uma Visão Geral dos 14 Tipos de Diagramas e Sua Relevância em Ambientes Ágeis
- Navegando pelo UML: Uma Visão Geral dos 14 Tipos de Diagramas e Sua Relevância em Ambientes Ágeis – ArchiMetric 30
- Esta visão geral discute os diferentes tipos de diagramas UML, incluindo diagramas de comunicação, e sua relevância em ambientes de desenvolvimento de software ágil.
Essas referências fornecem uma compreensão abrangente dos diagramas de comunicação e do UML, juntamente com guias práticos sobre como usar o Visual Paradigm para criar esses diagramas.
This post is also available in Deutsch, English, Español, فارسی, Français, Bahasa Indonesia, 日本語, Polski, Ру́сский, Việt Nam, 简体中文 and 繁體中文.












