<Nom du projet>
Document d'architecture logicielle
Version <1.0>
[Remarque : Le modèle suivant est à utiliser avec le processus Rational Unified Process. Le texte entre parenthèses droites, affiché en caractères italiques bleus (style=InfoBlue), sert à donner des indications à l'auteur, et devra être supprimé avant la publication du document. Tout paragraphe saisi dans ce contexte sera automatiquement passé en style normal (style=Body Text).]
Historique des révisions
Date |
Version |
Description |
Auteur |
---|---|---|---|
<jj/mmm/aa> |
<x.x> |
<détails> |
<nom> |
Sommaire
9. Vue des données (facultatif)
11.Qualité
Document d'architecture logicielle
[L'introduction du document d'architecture logicielle doit fournir une vue d'ensemble du document d'architecture logicielle. Elle doit définir l'objet et la portée du document d'architecture logicielle, en faire une présentation générale et répertorier les définitions, acronymes, abréviations et références utilisés dans ce document.]
Ce document fournit une présentation de l'architecture du système, à l'aide d'un certain nombre de vues d'architecture décrivant différents aspects du système. Il a pour vocation de mettre en relief les principales décisions architecturales qui ont été prises par rapport au système.
[Cette section définit l'objet du document d'architecture logicielle, au sein de l'ensemble de la documentation liée au projet, et décrit brièvement la structure de ce document. Il convient d'identifier le public auquel ce document s'adresse, et de définir comment il est censé être utilisé.]
[Brève description des éléments auxquels le document d'architecture logicielle s'applique : aspects affectés ou influencés par ce document.]
[Cette sous-section doit fournir une définition de tous les termes, acronymes et abréviations nécessaires à la bonne compréhension du document d'architecture logicielle. Ces informations peuvent être fournies par référence au Glossaire du projet.]
[Cette sous-section doit comprendre une liste exhaustive de tous les documents auxquels le document d'architecture logicielle fait référence. Pour chaque document, vous devez indiquer le titre, le numéro de rapport (le cas échéant), la date et l'organisation qui l'a publié. Spécifiez les sources auprès desquelles il est possible de se procurer ces références. Ces informations peuvent être fournies par référence à une annexe ou à un autre document.]
[Cette sous-section doit décrire le reste du contenu du document d'architecture logicielle et présenter son organisation.]
[Cette section l'architecture logicielle pour le système actuel, et comment elle est représentée. Elle énumère également les vues nécessaires (de type Cas d'utilisation, Logique, Processus, Déploiement et Implémentation) et décrit les éléments de modèle contenus dans chacune de ces vues.]
[Cette section décrit les objectifs et les contraintes logicielles qui ont un impact sur l'architecture (par exemple, sécurité, confidentialité, utilisation d'un produit prêt à l'emploi, portabilité, distribution et réutilisation). Elle énumère également les contraintes spécifiques applicables : stratégie de conception et d'implémentation, outils de développement, structure de l'équipe, planning, code existant, etc.]
[Cette section répertorie les cas d'utilisation ou les scénarios issus du modèle de cas d'utilisation s'ils représentent une fonctionnalité importante du système final, ou s'ils ont une couverture architecturale importante (grand nombre d'éléments d'architecture concernés), ou s'ils soulignent ou illustrent un point d'architecture particulièrement délicat.]
[Cette section décrit les parties architecturalement significatives du modèle de conception, par exemple sa décomposition en sous-systèmes et en packages. Pour chaque package important, sont également indiqués les classes et les utilitaires de classe. Vous devez présenter les classes architecturalement significatives et décrire leurs responsabilités, ainsi que les principales relations, opérations et attributs.]
[Cette sous-section décrit la décomposition générale du modèle de conception sous la forme de hiérarchies de packages et de couches.]
[Pour chaque package important, vous devez ajouter une sous-section contenant son nom, une brève description et un diagramme reprenant les classes et les packages importants contenus dans ce package.
Pour chaque classe importante du package, vous devez indiquer son nom, une brève description et éventuellement une description de ses responsabilités, opérations et attributs majeurs.]
[Cette section illustre le fonctionnement du logiciel en donnant quelques réalisations de cas d'utilisation (ou scénarios), et explique comment les différents éléments du modèle de conception contribuent à ce fonctionnement.
[Cette section décrit la décomposition du système en termes de processus légers (unités d'exécution uniques) et de processus lourds (groupes de processus légers). Regroupez les processus qui communiquent ou interagissent entre eux. Décrivez les principaux modes de communication entre les processus : transmission de messages, interruptions et rendez-vous.]
[Cette section décrit une ou plusieurs configurations réseau physiques (matériel) sur lesquelles le logiciel est déployé et exécuté. Il s'agit d'une vue du modèle de déploiement. Pour chaque configuration, cette vue doit indiquer au minimum les noeuds physiques (ordinateurs, UC) qui exécutent le logiciel, ainsi que leurs interconnexions (bus, réseau local, point à point, etc.) Vous devez également inclure un mappage des processus de la Vue des processus sur les noeuds physiques.]
[Cette section décrit la structure générale du modèle d'implémentation, la décomposition du logiciel en couches et en sous-systèmes au sein du modèle d'implémentation, ainsi que tout élément d'implémentation significatif du point de vue de l'architecture.]
[Cette sous-section nomme et définit les différentes couches et leur contenu, les règles qui régissent l'inclusion dans une couche donnée, et les frontières entre les couches. Pensez à inclure un diagramme des composants qui indique les relations entre les couches.]
[Pour chaque couche, ajoutez une sous-section comprenant son nom, une énumération des sous-systèmes de la couche, et un diagramme des composants.]
[Description des mécanismes de stockage des données persistantes pour le système. Cette section est optionnelle si les données persistantes sont peu nombreuses voire inexistantes, ou si la traduction entre le modèle de conception et le modèle de données est sans importance.]
[Description des principales caractéristiques de dimensionnement du logiciel qui ont un impact sur l'architecture, ainsi que des contraintes de performance cible.]
[Description du rôle joué par l'architecture logicielle dans les principales caractéristiques du système (hors fonctionnement) : évolutivité, fiabilité, portabilité, etc. Ces caractéristiques doivent être clairement définies si elles revêtent une importance particulière (sécurité, confidentialité, etc.).]