Spiegazione
Un metodo semplice per ridurre la complessità in un modello di implementazione che contiene centinaia di elementi è di
utilizzare i sottosistemi di implementazione.
I sottosistemi di solito hanno l'aspetto di directory, con informazioni strutturali o di gestione aggiuntive. Ad
esempio, un sottosistema può essere creato come directory o cartella in un file system, oppure come sottosistema in
Rational Apex per C++ o Ada, o come pacchetti utilizzando Java. negli sviluppi Rational XDE un sottosistema è un
"progetto", come definito dall'IDE (Integrated Development Environment).
Il sottosistema di implementazione è l'analogo di implementazione del pacchetto
di progettazione (o sottosistema di progettazione a grana larga). Il modello di
implementazione ed i sottosistemi di implementazione sono l'obiettivo della vista
di implementazione e quindi sono di primaria importanza al momento dello sviluppo.
Esportazione degli elementi
Il sottosistema di implementazione controlla la visibilità esterna del suo contenuto. Gli elementi esterni al
sottosistema possono fare riferimento ad un elemento del sottosistema, se viene reso visibile ("esportato") dal suo
sottosistema dichiarante.
Tutti gli elementi (ed i sottosistemi contenuti) in un sottosistema in genere sono visibili all'esterno del
sottosistema per impostazione predefinita. Questo vuol dire che qualsiasi elemento esterno al sottosistema può fare
riferimento a tutti gli elementi. Ad esempio, in C++ questo significa che gli elementi esterni possono eseguire un
#include tutti gli elementi all'interno del sottosistema.
Utilizzo
Il modello di implementazione può essere più o meno vicino al modello di progettazione, a seconda di come si esegue
l'associazione dei pacchetti di progettazione ai sottosistemi di implementazione nel modello di implementazione.
Si consiglia di mantenere la corrispondenza uno a uno, ad esempio un pacchetto di progettazione deve essere associato
ad un sottosistema di implementazione. Il motivo principale è di avere una tracciabilità senza interruzioni, dalla
progettazione al codice.
Vi sono situazioni in cui i sottosistemi dell'implementazione devono essere diversi dai pacchetti e dai sottosistemi
della progettazione. Per ulteriori informazioni consultare il Compito: Struttura del modello di implementazione. Se e in che modo
rappresetare questa mappatura è trattato nel Prodotto di lavoro: Linee guida specifiche per progetto.
È possibile suddividere un sistema in sottosistemi per molte ragioni. Gli stessi criteri della progettazione sono
validi per l'implementazione. Per ulteriori informazioni, consultare Linea guida:
Pacchetto di progettazione.
|