Tipos de diagramas de interação em UML
Diagramas de interação são divididos em quatro tipos principais de diagramas:
- Diagrama de comunicação
- Diagrama de sequência
- Diagrama de tempo
- Diagrama de visão geral de interação
Cada tipo de diagrama aborda um aspecto diferente do comportamento ou estrutura de um sistema. Veja abaixo mais informações sobre os conceitos básicos de cada diagrama e os benefícios que eles oferecem.
Diagrama de comunicação (ou diagrama de colaboração)
Em UML, diagramas de comunicação descrevem as relações e interações entre vários objetos de software. Eles ressaltam os aspectos estruturais de um diagrama de interação, e focam na arquitetura de objetos em vez de se concentrarem no fluxo de mensagens.
Os diagramas de comunicação oferecem os seguintes benefícios:
- Ressaltam como as linhas da vida se conectam.
- Focam em elementos dentro de um sistema em vez de se concentrarem no fluxo de mensagens.
- Focam mais na organização que no tempo.
Diagramas de comunicação também podem ter as seguintes desvantagens:
- Podem se tornar muito complexos.
- Dificultam explorar objetos específicos dentro de um sistema.
- Podem demorar bastante tempo para criar.
Diagrama de sequência
Outra opção para mostrar interações é usar diagramas de sequência. Esses diagramas abordam cinco eventos principais:
- Realização do pedido
- Pagamento
- Confirmação do pedido
- Preparação do pedido
- Entrega do pedido
Se a sequência de eventos mudar, podem ocorrer atrasos ou o sistema pode travar. É importante selecionar a notação que corresponde à sequência específica no seu diagrama.
Os diagramas de sequência oferecem os seguintes benefícios:
- São fáceis de manter e gerar.
- São fáceis de atualizar de acordo com as mudanças em um sistema.
- Permitem fazer engenharia reversa e avançada.
Os diagramas de sequência também podem ter as seguintes desvantagens:
- Podem se tornar complexos, com muitas linhas de vida e notações variadas.
- São fáceis de criar incorretamente e dependem da sua sequência ser inserida corretamente.
Diagrama de tempo
Outra opção seria usar diagramas de tempo. Esses diagramas são recursos visuais usados para mostrar o estado de uma linha de vida em qualquer instante do tempo, descrevendo as mudanças em um objeto de uma forma para outra. Formas de onda são usadas em diagramas de tempo para visualizar o fluxo no programa de software em vários instantes do tempo.
Os diagramas de tempo oferecem os seguintes benefícios:
- Permitem fazer engenharia avançada e reversa.
- Podem representar o estado de um objeto em um instante exato no tempo.
- Podem monitorar todas as mudanças em um sistema.
Os diagramas de tempo também podem ter as seguintes desvantagens:
- Podem ser difíceis de entender.
- Podem ser difíceis de manter ao longo do tempo.
Diagrama de visão geral de interação
O diagrama de visão geral de interação fornece uma perspectiva de alto nível de um modelo de interação. O diagrama atua como uma visão geral do fluxo de controle de uma interação para outra, bem como o fluxo de atividade de um diagrama para outro.
Os diagramas de tempo oferecem os seguintes benefícios:
- Fornecem uma visão simples da atividade dentro de um modelo.
- Oferecem um alto grau de navegabilidade entre diagramas.
- Permitem usar a maioria das anotações dentro de um diagrama de atividade, assim como elementos adicionais para oferecer mais clareza.
Embora diagramas de interação sejam bastante intuitivos, eles exigem que as ramificações e interações sigam determinados comportamentos, o que pode ser algo restritivo.