Mensagens

Uma mensagem é um elemento do diagrama de seqüência UML (Unified Modeling Language) que define um tipo específico de comunicação entre instâncias em uma interação. Uma mensagem transporta informações de uma instância, que é representada por uma linha de vida, para uma outra instância em uma interação.

Uma mensagem especifica o emissor e o receptor e define o tipo de comunicação que ocorre entre as linhas de vida. Por exemplo, uma comunicação pode chamar uma operação utilizando synchCall ou asynchCall, lançar um sinal utilizando asynchSignal e criar ou destruir um participante.

Os diagramas de seqüência pode ter três tipos de mensagens:

Conforme ilustrado na figura a seguir, uma mensagem é exibida em um quadro de interação como uma linha com uma seta que aponta na direção em que a mensagem é enviada; ou seja, da extremidade da mensagem de envio para a extremidade da mensagem de recebimento.

É exibida uma mensagem do diagrama de seqüência.

A mensagem que a linha de vida de origem envia para a linha de origem de destino representa uma operação ou um sinal que a linha de vida implementa. É possível nomear e ordenar mensagens. A aparência da linha ou da cabeça de seta reflete as propriedades da mensagem. A tabela a seguir ilustra os gráficos que representam mensagens em diagramas de seqüência.

Gráfico Descrição Representação
É exibida uma mensagem síncrona do diagrama de seqüência. Uma linha com uma cabeça de seta sólida que aponta em direção à linha de vida receptora Este gráfico representa uma operação de chamada síncrona na qual o sistema aguarda a conclusão do fluxo de controle antes de continuar com o fluxo externo.
É exibida uma mensagem assíncrona do diagrama de seqüência. Uma linha com uma ponta de seta aberta Este gráfico representa um sinal assíncrono ou uma chamada assíncrona em que o objeto de origem envia a mensagem e continua imediatamente com a próxima etapa.
É exibida uma mensagem de retorno do diagrama de seqüência. Uma linha tracejada com uma cabeça de seta sólida que aponta em direção à linha de vida originadora Este gráfico representa uma mensagem de retorno de uma chamada para um procedimento. Quando você cria uma mensagem síncrona, uma mensagem de retorno é criada por padrão. Esse padrão pode ser alterado na janela Preferências.
É possível utilizar dois outros tipos de mensagens nos diagramas de seqüência:

Você pode identificar as mensagens, utilizando um nome ou uma assinatura de operação.

Tipo Exemplo Descrição
Nome \Obter a Senha\ Um nome identifica apenas o nome da mensagem. Uma convenção coloca o nome entre barras invertidas (\\) para indicar que o nome da mensagem não está associado a uma operação. Quando uma operação está associada a uma mensagem, o nome da operação substitui o nome.
Assinatura getPassword Quando uma operação é designada a uma mensagem, é possível exibir a assinatura da operação para identificar o nome da operação. Geralmente, as assinaturas são utilizadas em diagramas durante a fase de design porque fornecem os detalhes que os desenvolvedores precisam quando codificam o design.

Manipulação de Mensagens Assíncronas

Uma mensagem assíncrona é o único tipo de mensagem em que você pode mover individualmente seu ponto de envio e ponto de recebimento. Você pode mover os pontos de uma mensagem assíncrona entre linhas de vida para manipular o retardo de tempo entre o evento de envio e o evento de recebimento; o resultado é chamado de mensagem desviada.

Como a figura a seguir ilustra, uma mensagem desviada é exibida como uma linha com uma seta aberta que possui múltiplas interações que ocorrem entre as linhas de vida de envio e recebimento.

É exibida uma mensagem desviada do diagrama de seqüência.

O evento de envio não é bloqueado e as interações podem ocorrer entre o ponto na linha de vida de envio e o ponto na linha de vida de recebimento.

Conceitos relacionados
Diagramas de Seqüência
Quadros de Interação
Linhas de Vida
Ocorrências de Execução
Ocorrências de Interação
Fragmentos Combinados
Operadores de Interação
Operandos de Interação
Condições de Proteção
Nós Finais
Tarefas relacionadas
Desenvolvendo Mensagens
Criando Mensagens Síncronas ou Assíncronas
Incluindo Mensagens de Criação ou Destruição em Linhas de Vida
Excluindo Mensagens
Termos de uso | Feedback
(C) Copyright IBM Corporation 2004, 2005. Todos os Direitos Reservados.