Il nome e la descrizione rappresentano accuratamente il ruolo che la capsula svolge nel sistema
La capsula ha uno scopo ben definito e comprende un singolo insieme di responsabilità correlate
La capsula rappresenta nel sistema un significativo centro e thread di controllo
I ruoli che la capsula svolge si riflettono sulle sue porte esterne e ogni ruolo ha una o più porte separate
Nessuna porta viene utilizzata in più di un ruolo
È stata utilizzata una capsula con più porte distinte, dove era presente la necessità di controllare l'interazione di scenari simultanei
Le capsule di interfaccia sono state utilizzate per fornire la suddivisione dove sono previste modifiche future
Le capsule sono state utilizzate in modo efficace per isolare potenziali decisioni future di modifica e progettazione
Le capsule del coordinatore vengono utilizzate per gestire relazioni complesse e dinamiche tra entità (sia uno-a-molti che molti-a-molti)
Le capsule del coordinatore vengono utilizzate dove è necessario mediare tra le capsule per incapsulare un progetto
L'ordine di inizializzazione è stato considerato correttamente
L'avvio e la sincronizzazione di thread indipendenti di controllo è stata considerata
L'eredità viene utilizzata in modo appropriato
Non c'è alcuna evidenza di gerarchia di generalizzazione/specializzazione molto grande o molto profonda. Comunalità
ovvie sono riportate nella gerarchia di ereditarietà. L'eredità non viene principalmente utilizzata per le
considerazioni di implementazione (ad es., riutilizzo di codice), ma come modo per acquisire le astrazioni di
progettazione comuni. Le superclassi non sono semplici unioni di attributi di classi inferiori, ma rappresentano
un'astrazione logica. La gerarchia di eredità non contiene classi astratte intermedie con proprietà ortogonali.
|
|