Lista de Verificação: Protocolo
Esta lista de verificação ajuda a certificar-se de que um Protocolo seja especificado corretamente
Relacionamentos
Descrição Principal


Itens de Verificação
O nome da classe de protocolo é exclusivo
O protocolo é utilizado em pelo menos uma colaboração
A descrição resumida do protocolo captura a finalidade do protocolo e resume rapidamente a função que ele desempenha no sistema
O protocolo representa um único conjunto de responsabilidades coerentes
Os sinais no protocolo estão todos diretamente relacionados ao cumprimento da função do protocolo no sistema
Eles não são simplesmente os sinais utilizados para comunicação entre duas cápsulas
Os finais foram escolhidos da maneira mais geral possível e, ao mesmo tempo, ainda conseguem manter a clareza
 Por exemplo,  no caso em que vários sinais 'Out' requerem confirmação, um único sinal 'Ack' foi utilizado como resposta.
O protocolo reflete uma finalidade específica no sistema
 Nos casos em que um protocolo tem uma combinação de aspectos (por exemplo, sinais de administração e processamento de chamadas), ele foi dividido em várias classes de protocolo independentes.
Os protocolos foram definidos de acordo com o que o usuário deseja ou precisa saber, no lugar de o que o provedor sabe
A diretriz que determina o lado da interface a ser conjugada é aplicada consistentemente.
Os protocolos assimétricos foram definidos a partir da perspectiva do cliente (usuário) para reduzir a necessidade de conjugar interfaces.
Classes de protocolo assimétricas são nomeadas para indicar claramente sua direção
Um bom exemplo de nome é 'ClientResourceInterface'