Classement des clients des mécanismes d'analyse par catégories
Les mécanismes d'analyse fournissent des ensembles de services conceptuels utilisés par les classes d'analyse. Ils offrent une simplification commode pour les
comportements vraiment complexes qui devront être abordés en dernier ressort, mais qui dépassent la portée de l'effort
d'analyse. Leur objectif principal est de nous permettre d'enregistrer les exigences liées à ces services du système à
concevoir, sans que nous ayons à prêter attention aux détails du fournisseur de service.
A présent, nous devons commencer à préciser les informations rassemblées sur les mécanismes d'analyse. Les étapes sont
les suivantes :
Identifiez les clients de chaque mécanisme d'analyse. Examinez tous les clients d'un mécanisme d'analyse donné
en observant les caractéristiques qu'ils requièrent pour ce mécanisme. Par exemple, un certain nombre de classes d'analyse pourraient utiliser un mécanisme de persistance,
tout en ayant des exigences très diverses : les exigences de persistance d'une classe qui possédera un millier
d'instances persistantes sont extrêmement différentes de celles d'une classe qui en possédera quatre millions. De la
même manière, une classe dont les instances doivent répondre en moins d'une milliseconde aux données d'instance exigera
une approche différente de la persistance, par rapport à une classe dont l'accès aux données d'instance n'est effectué
que par des requêtes ad hoc et des applications de génération de rapports en batch.
Identifiez les profils de caractéristique de chaque mécanisme d'analyse. Ces profils de caractéristique
peuvent être extrêmement variés et offrir différents degrés de performance, d'encombrement, de sécurité, de coût
économique, etc. Chaque mécanisme d'analyse est différent et différentes caractéristiques s'appliquent à chacun. De
nombreux mécanismes exigeront l'évaluation du nombre d'instances à gérer et de leur taille prévue en termes de nombre
d'octets. Dans tout système, la circulation de grandes quantités de données crée des problèmes de performances
considérables auxquels vous devrez faire face.
Regroupez les clients en fonction de l'utilisation des profils de caractéristique. Regroupez les clients qui
semblent nécessiter l'utilisation de mécanismes d'analyse aux profils de caractéristique semblables ; identifiez un
mécanisme de conception fondé sur les besoins de chaque groupe. Ces regroupements constituent une première division
dans les mécanismes de conception. Un mécanisme d'analyse exemple, "communication interprocessus", peut être mappé à un
mécanisme de conception "fonction ORB". Différents profils de caractéristique aboutiront à différents mécanismes de
conception qui émergent du même mécanisme d'analyse. Le mécanisme de persistance, simple en analyse, donnera naissance
en conception à un certain nombre de mécanismes de persistance : persistance en mémoire, fondée sur des fichiers,
fondée sur des bases de données, distribuée, etc. Les mécanismes de conception sont des mécanismes d'analyse affinés en
fonction des différents profils de caractéristique.
|
Inventaire des mécanismes d'implémentation
Procédez de manière ascendante et dressez l'inventaire des mécanismes d'implémentation (voir Concept : Mécanismes de conception et d'implémentation) dont vous disposez :
-
Les mécanismes offerts par une infrastructure de composant ou produit middleware.
-
Les mécanismes offerts par des systèmes d'exploitation.
-
Les mécanismes offerts par un composant.
-
Les mécanismes offerts par une librairie de classes.
-
Le code existant (voir aussi Tâche : Intégration des éléments de conception existants)
-
Les packages à usage spécifique : générateur d'interface graphique utilisateur, système d'informations
géographiques, système de gestion de base de données, etc.
Déterminez les situations où il est possible d'utiliser des mécanismes d'implémentation existants et celles qui
nécessitent la construction de nouveaux mécanismes d'implémentation.
|
Mappage des mécanismes de conception aux mécanismes d'implémentation
Les mécanismes de conception constituent une abstraction des mécanismes d'implémentation qui permet d'annuler le fossé
entre les mécanismes d'analyse et les mécanismes d'implémentation. L'utilisation de mécanismes architecturaux abstraits
lors de la conception nous permet de réfléchir à la manière dont nous allons fournir les mécanismes architecturaux sans
nous embarrasser des détails d'un mécanisme particulier. Elle peut également nous permettre de remplacer un mécanisme
d'implémentation spécifique par un autre sans produire d'effet négatif sur la conception.
Déterminez les plages des caractéristiques. Fondez-vous sur les caractéristiques identifiées pour les mécanismes
de conception pour déterminer les plages ou valeurs raisonnables, économiques ou réalistes à utiliser dans le mécanisme
d'implémentation candidat.
Prenez en compte le coût d'acquisition des composants achetés. Pour les mécanismes d'implémentation candidats,
tenez compte du coût d'acquisition ou de licence, de la maturité du produit, de vos relations avec le fournisseur, du
support, etc. parallèlement aux critères purement techniques.
Recherchez les bons composants ou construisez-les. Pour certains mécanismes de conception, vous découvrirez
souvent qu'il n'existe pas de mécanisme d'implémentation apparemment approprié. Cette constatation vous conduira à
rechercher le bon produit ou à identifier la nécessité d'un développement interne à l'entreprise. Vous remarquerez
peut-être également que certains mécanismes d'implémentation ne sont pas utilisés du tout.
Le choix d'un mécanisme d'implémentation repose sur des caractéristiques techniques, mais également sur des
caractéristiques non techniques, telles que le coût. Certains choix peuvent être provisoires. Presque tous sont
liés à des risques : les performances, la robustesse et l'évolutivité sont des préoccupations quasi quotidiennes qui
doivent être validées par l'évaluation, le prototypage à des fins d'exploration ou l'inclusion dans le prototype
architectural.
|
Documentation des mécanismes architecturaux
Dans cette tâche, le rôle de l'architecte logiciel consiste à effectuer des décisions sur ces mécanismes et à les
valider en les construisant ou en les intégrant, en vérifiant leur efficacité, puis en les imposant de manière
cohérente sur le reste de la conception du système. L'architecte logiciel collabore avec le responsable de processus
pour documenter les mécanismes et les détails concernant leur utilisation dans les principes de conception relatifs au
projet. Voir Tâche : Préparation des instructions relatives au projet. La relation
(ou le mappage) des mécanismes d'analyse aux mécanismes de conception et d'implémentation, de même que le raisonnement
associé à ces choix, doit être documentée dans le document d'architecture logicielle. Les mécanismes sont des éléments
de modèle de conception (comme les packages, classes et sous-systèmes de conception) qui peuvent être détaillés dans le
Produit : Modèle de conception, dans le cadre de leurs activités de
conception respectives.
|
|