|
|
2.8 Rôle de la conception
- Le but de la conception est de fixer les choix techniques
et de préparer l’implantation
- Le modèle de la conception décrit la solution (comment le
problème est résolu)
- La conception doit servir de support pour
l’implantation et la maintenance
- Le plus souvent, le modèle de la conception n’est pas
destiné à être compréhensible par les utilisateurs mais par les
développeurs
précédent suivant
Les modèles produits pendant l’analyse décrivent ce que
doit faire le système indépendamment de la façon dont il est ensuite réalisé.
Ainsi, les trois préoccupations suivantes sont spécifiques à la conception :
1) organiser le développement du système
informatique et adresser des questions comme les dépendances entre modules, la
configuration, la gestion des versions, 2)
distribuer physiquement les différentes parties logicielles du système et
3) définir les langages de programmation,
les schémas de bases de données pour la persistance des données, etc. Les deux
premières préoccupations sont modélisées dans deux vues complémentaires à la
vue logique qui sont les vues développement et physique. Les éléments de la
dernière préoccupation sont classiquement distribués dans les deux mêmes vues.
Fixer le bon niveau d’abstraction d’un modèle ou
d’un élément de modèle pour une utilisation donnée du modèle est souvent
une tâche difficile. Au début de l’analyse, soyez le plus abstrait
possible et n’incluez pas de considérations techniques dans les
diagrammes de classes du modèle d’analyse. Un diagramme de classes du
modèle d’analyse ne contient que des classes métier, c’est-à-dire
des concepts pertinents dans le métier de l’application. Par exemple, un
diagramme d’analyse ne se préoccupe pas de savoir si les données sont
persistantes ou temporaires et si elles seraient enregistrées en base de
données, et encore moins si la base de données serait une base de données
relationnelle.
Dans le cadre du module CSC4002, le contenu de la phase de
conception consiste uniquement en les deux tâches suivantes :
- conception détaillée des classes pour
préparer leur réalisation dans le langage de programmation Java, sujet de la
seconde partie du module,
- projection de certaines classes sur des
schémas de bases de données relationnelles pour assurer la persistance de leurs
données.
La seconde tâche n’est pas abordée dans la première
partie du cours, mais tient lieu d’une séance de travaux pratiques en fin
de module.
Pour répondre aux autres questions qui surviennent lors de la
conception, des compétences informatiques particulières sont requises dans des
domaines très divers : par exemple, les applications multitiers, les
applications Web 2.0, la conception et l’utilisation de système
d’exploitation, les langages informatiques et leurs compilateurs, les
communications inter-processus, les systèmes répartis, le parallélisme dans les
grappes, les grilles de calcul et le Cloud, les
intergiciels (en anglais, middleware), les
ontologies, les systèmes embarqués. La plupart de ces sujets sont traités dans
la voie d’approfondissement ASR (« Architecte des Services
Informatiques en Réseaux »).
Cf. le glossaire pour la définition du terme
« conception ».
D. Conan, C. Taconet, C. Bac,
Télécom SudParis, CSC 4002, Octobre 2015
|
|