Per fornire una base per la comprensione dell'organizzazione della processo del sistema, viene utilizzata una vista
strutturata denominata vista processi nella disciplina Analisi & Progettazione. Esiste solo una vista dei
processi del sistema che illustra la scomposizione del processo del sistema, incluso la mappatura di classi e di
sistemi secondari sui processi e sui thread. La vista
processi viene perfezionata durante ogni iterazione. Come afferma [BOO98] : "con
UML, gli aspetti statici e dinamici di questa vista vengono catturati nello stesso tipo di diagrammi della vista di
progettazione - ad es., diagrammi di classe, diagrammi di interazione, diagrammi di attività e di stato, ma con
l'attenzione incentrata sulle classi di attività che rappresentano questi thread e questi processi. Quando si
costruisce e si utilizza la vista processi ci si preoccupa, ad esempio, delle problematiche legate alla simultaneità,
al tempo di risposta, alla condizione di stallo, alla produttività, alla tolleranza di errore e alla scalabilità.
E' possibile progettare per simultaneità senza l'uso diretto del supporto sottostante del sistema operativo, ad esempio
utilizzando uno speciale programma di pianificazione scritto o altri supporti runtime. In casi come questi, la
simultaneità viene simulata a livello dell'infrastruttura dell'applicazione piuttosto che nel sistema operativo. Se
necessario, possono essere usati altri stereotipi (oltre ai thread e ai processi standard) per fare queste distinzioni
(per guidare l'implementazione). Ad esempio, il linguaggio di programmazione Ada contiene il suo proprio modello di
simultaneità, basato sul compito Ada; Ada run-time deve fornire ciò, sia che il sistema operativo su cui viene eseguito
abbia un equivalente appropriato sia che non l'abbia - thread - che possono essere usati per supportare la funzionalità
di Ada.
In sistemi real-time, il Rational Unified Process raccomanda l'uso delle Capsule per
rappresentare le classi attive nella vista processi. Le capsule dispongono di semantica solida per semplificare la
modellazione della simultaneità:
-
Queste usano comunicazioni asincrone basate sui messaggi attraverso
Porte che utilizzano Protocolli ben definiti.
-
Usano la semantica run-to-completion per l'elaborazione dei messaggi.
-
Incapsulano oggetti passivi (assicurando che non si verifichi l'interferenza di thread).
La vista processi mostra l'organizzazione del processo del sistema.
Esistono quattro viste aggiuntive, la Vista caso d'uso (gestita nella disciplina dei requisiti) e la Vista
logica, la Vista distribuzione e la Vista implementazione; queste viste sono gestite nelle discipline
di Analisi & Progettazione e in quelle di Implementazione.
Le viste strutturali sono documentate in un documento dell'architettura software. È possibile aggiungere viste
diverse, ad esempio una vista della sicurezza, per trasmettere altri aspetti specifici dell'architettura software.
Quindi in sostanza le viste strutturali possono essere considerate come delle astrazioni o semplificazioni dei modelli
creati, in cui è possibile rendere più visibili delle caratteristiche importanti, lasciando da parte i dettagli.
L'architettura è un mezzo importante per migliorare la qualità di qualunque modello creato durante lo sviluppo del
sistema.
|