Artefato: Protocolo
Esse artefato especifica o padrão de comunicação utilizado entre cápsulas. A Comunicação entre cápsulas é feita enviando mensagens à porta da cápsula. A classe de protocolo define as mensagens que podem ser enviadas ou recebidas de uma porta da cápsula.
Tipos de Produto de Trabalho: Elemento de Modelo
Relacionamentos
Artefato do Contêiner
FunçõesResponsável: Modificado Por:
TarefasEntrada para: Saída de:
Descrição
Descrição Principal

Protocolos permitem a especificação para um conjunto de portas do Produto de Trabalho: Cápsula a ser definido e reutilizado. O protocolo define um conjunto de tipos de mensagens de entrada e saída (por exemplo, operações, sinais) e, opcionalmente, uma colaboração (que consiste normalmente em um conjunto de diagramas de seqüência, consulte Diretriz: Diagrama de Seqüência) que define a ordem requerida das mensagens, e uma máquina de estado (descrita por um conjunto de diagramas de estados, consulte Diretriz: Diagrama de Estado) que especifica o comportamento abstrato que os participantes de um protocolo devem fornecer.

Um protocolo é uma especificação de comportamento desejado que pode ocorrer em um conector - uma especificação explícita do acordo contratual entre os participantes do protocolo. Ele é apenas o comportamento e não especifica qualquer elemento estrutural. Um protocolo consiste em um conjunto de participantes, cada um desempenhando uma função específica no protocolo.

Cada função de protocolo é especificada por um nome exclusivo e um conjunto de sinais, que são recebidos por essa função, bem como o conjunto de sinais, que são enviados por ela (qualquer conjunto pode estar vazio). Opcionalmente, um protocolo também pode ter uma especificação das seqüências de comunicação válidas; uma máquina de estado pode especificar isso. Por fim, um protocolo também pode ter um conjunto de seqüências de interações prototípicas (elas podem ser mostradas como diagramas de seqüência). Devem também estar em conformidade com a máquina de estado do protocolo, se uma estiver definida.

Protocolos binários, que envolvem apenas dois participantes, são, de longe, os mais comuns e os mais simples de se especificar. Uma vantagem desses protocolos é que somente uma função, chamada de função base, precisa ser especificada. A outra, chamada de conjugada, pode ser derivada da função base, bastando inverter os conjuntos de sinais de entrada e saída. Essa operação de inversão é conhecida como conjugação.

Composição da Classe de Protocolo

Composição da classe de <<protocolo>>.

Como observado na figura acima, normalmente, um protocolo contém um ou mais diagramas de seqüência que ilustram as seqüências válidas de troca de mensagens especificadas pelo protocolo. O protocolo também consiste em um conjunto de mensagens de entrada (de solicitação) e um conjunto de mensagens de saída (de resposta). Uma máquina de estado opcional pode ser usada para especificar o comportamento que os participantes do protocolo devem suportar.

Adaptação
Opções de RepresentaçãoRepresentação UML: Classe, estereotipada como <<protocolo>>. Observe que essa representação é baseada na notação da UML 1.5. Muito disso pode ser representado em UML 2.0 utilizando o Conceito: Classe Estruturada.   Consulte Diferenças entre a UML 1.x e a UML 2.0 para obter informações adicionais.
Informações Adicionais
Listas de Verificação