Sono qui esposti i diagrammi che meglio descrivono i requisiti del sistema:
Nel diagramma sono rappresentati i macroblocchi che andranno a comporre il sistema seguendo le indicazioni fornite dal committente. Si vuole anche mettere
in evidenza che il sistema dovra' utilizzare un contatore ciclico.
Attraverso il diagramma degli stati si vuole mostrare la reazione del contatore agli stimoli provenienti da altri pezzi del sistema (i pulsanti),
si vuole evidenziare la ciclicita' del conteggio e si vuole ribadire la presenza di un invariante .
Context: Contatore inv: valore_minimo <= valore_attuale <= valore_massimo
Vogliamo inoltre mettere in evidenza la necessita' (da requisiti) che i display rimangano allineati al valore del contatore, mancando
in UML un'adeguata metodologia di rappresentazione di questo requisito, lo lasciamo espresso ricorrendo all'OCL:
Context: Contatore::incrementa pre: DisplayDelConcorrente.valore_mostrato = Contatore.valore_attuale = DisplayDelConduttore.valore_mostrato