Pour mieux comprendre l'organisation du processus du système, une vue d'architecture appelée vue de processus
est utilisée dans la discipline Analyse & Conception. Le système n'a qu'une seule vue de processus, qui illustre la
décomposition du processus du système, y compris le mappage des classes et des sous-systèmes aux processus et aux unités
d'exécution. Elle est affinée à chaque itération. Comme mentionné dans [BOO98] : "Avec
le langage UML, les aspects statiques et dynamiques de la vue de processus sont capturés dans les mêmes types de
diagrammes que pour la vue de conception (c'est-à-dire diagrammes de classe, d'interaction, d'activité et diagrammes
état-transition, mais où l'accent est mis sur les classes actives qui représentent ces unités d'exécution et ces
processus)." Les préoccupations qui apparaissent lors de la construction et de l'utilisation de la vue de processus
sont, par exemple, les questions d'accès concurrent, de temps de réponse, de blocage, de volume traité, de tolérance
aux pannes et d'évolutivité.
Il est possible de concevoir l'accès concurrent sans utiliser directement un support de système d'exploitation
sous-jacent, par exemple en utilisant un planificateur conçu spécialement ou un autre support d'exécution. Dans ce
cas-là, l'accès concurrent est simulé au niveau de l'infrastructure de l'application plutôt que dans le système
d'exploitation. D'autres stéréotypes (en plus des unités d'exécution et des processus standard) peuvent être utilisés
pour faire cette distinction (pour guider l'implémentation), si nécessaire. Par exemple, le langage de programmation
Ada a son propre modèle d'accès concurrent, basé sur les tâches Ada. Le programme d'exécution Ada doit fournir ce
modèle, que le système d'exploitation sur lequel il fonctionne dispose ou non d'un équivalent approprié (les unités
d'exécution par exemple) qui pourrait être utilisé pour supporter les tâches Ada.
Dans les systèmes en temps réel, le processus Rational Unified Process préconise d'utiliser les capsules pour représenter les classes actives dans la vue de processus.
Les capsules comportent une sémantique robuste afin de simplifier la modélisation de l'accès concurrent :
-
Elles utilisent une communication asynchrone basée sur les messages, via des
ports et des protocoles bien définis.
-
Elles utilisent une sémantique RTC (run-to-completion) pour le traitement des messages.
-
Elles encapsulent les objets passifs (prévenant ainsi tout risque d'interférence entre les unités d'exécution).
La vue de processus montre l'organisation du processus du système.
Il existe quatre autres vues : la vue de cas d'utilisation (traitée dans les flux de travaux lors de la
spécification des exigences), la vue logique, la vue de déploiement et la vue d'implémentation.
Elles sont traitées dans les enchaînement d'activités Analyse & Conception et Implémentation.
Les vues d'architecture sont documentées dans le Document d'architecture logicielle. Vous pouvez ajouter
différentes vues, telle que la vue de sécurité, pour traduire d'autres aspects spécifiques de l'architecture
logicielle.
Les vues d'architecture peuvent donc être considérées essentiellement comme des abstractions ou des simplifications des
modèles construits, dont vous rendez les caractéristiques importantes plus visibles en ne vous préoccupant pas des
détails. L'architecture est un bon moyen d'améliorer la qualité d'un modèle construit durant le développement du
système.
|