I protocolli consentono la specifica di un insieme di porte da definire e riutilizzare per il Prodotto di lavoro: Capsula. Il protocollo definisce un insieme di
tipi di messaggi in entrata e in uscita (ad esempio operazioni, segnali), e facoltativamente una collaborazione (in
genere consiste in un insieme di diagrammi di sequenza, consultare Linea guida:
Diagramma di sequenza) che definisce l'ordine dei messaggi richiesto, ed una macchina a stati (descritta da un
insieme di diagrammi di stati, consultare Linea guida:
Diagramma di stati) che specifica il comportamento astratto che i partecipanti ad un protocollo devono fornire.
Un protocollo è una specifica di comportamento desiderato che può aver luogo su un connettore -- una specifica
esplicita dell'accordo contrattuale fra i partecipanti ed il protocollo. E' puro comportamento e non specifica alcun
elemento strutturale. Un protocollo comprende un insieme di partecipanti, ognuno con un ruolo specifico nel protocollo.
Ognuno di questi ruoli del protocollo è specificato da un nome univoco ed un insieme di segnali che vengono
ricevuti da quel ruolo, ed un insieme di segnali che vengono inviati da quel ruolo (ognuno dei due insiemi potrebbe
essere vuoto). Come opzione, un protocollo può anche disporre di una specifica di sequenze di comunicazione valide; la
può specificare una macchina a stati. Infine, un protocollo può anche disporre di un insieme di sequenze di interazione
prototipo (possono essere visualizzate come diagrammi di sequenza). Devono essere conformi alla macchina a stati del
protocollo, se ne è definita una.
Protocolli binari, implicano solo due partecipanti e sono il protocollo di gran lunga più comune e più semplice
da specificare. Un vantaggio di questi protocolli è che deve essere specificato solo un ruolo, denominato ruolo
base. L'altro, denominato coniugato, può essere derivato dal ruolo base semplicemente invertendo gli insiemi
di segnali in entrata e in uscita. Questa operazione di inversione è nota come coniugazione.
Composizione della classe di <<protocollo>>.
Come si evince dalla figura precedente, un protocollo in genere contiene uno o più diagrammi di sequenza che illustrano
le sequenze di scambio di messaggi valide specificate dal protocollo. Il protocollo è composto anche da un insieme di
messaggi in entrata (richiesta) e uno di messaggi in uscita (risposte). Può essere utilizzata una macchina a stati
facoltativa per specificare il comportamento che i partecipanti del protocollo devono supportare.
|