Académique Documents
Professionnel Documents
Culture Documents
L’Architecture logicielle
Schéma Urbain
Chapitre 2
L’Architecture logicielle
Structurer et concevoir une application à partir de ses Compréhension : facilite la compréhension des
spécifications fonctionnelles grands systèmes complexes en donnant une vue de
structurer et décomposer de façon logique chaque haut-niveau de leur structure et de leurs contraintes.
application en couches Les motivations des choix de conception sont ainsi mis
Introduire les notions et concepts de découpage en en évidence
couches, modules, composants, design patterns et
frameworks Réutilisation : favorise l’identification des éléments
réutilisables, parties de conception, composants,
caractéristiques, fonctions ou données communes.
Cours Architectures logicielle 3 Cours Architectures logicielle 4
1
09/03/2017
Construction : fournit un plan de haut-niveau du Analyse : offre une base pour l’analyse plus approfondie de
développement et de l’intégration des modules en mettant la conception du logiciel, analyse de la cohérence, test de
en évidence les composants, les interactions et les
dépendances. Elle doit permettre aux développeurs de conformité, analyse des dépendances
travailler sur des parties individuelles du système en Gestion : contribue à la gestion générale du projet en
isolation permettant aux différentes personnes impliquées de voir
Évolution : met en évidence les points où un système peut comment les différents morceaux du casse-tête seront
être modifié et étendu. agencés. L’identification des dépendance entre composants
La séparation composant/connecteur facilite une permet d’identifier où les délais peuvent survenir et leur
implémentation du type « plug-and-play» impact sur la planification générale
Cours Architectures logicielle 5 Cours Architectures logicielle 6
L'architecture informatique définit la structuration d'un L’architecture peut être définie par : les concepts
système informatique (i.e. matériel et logiciel) en termes fondamentaux ou les propriétés d'un système dans son
de composants et d'organisation de ses fonctions environnement incarné dans ses composants, leurs
relations et dans les principes de sa conception et de son
Une analyse fonctionnelle décrit « quoi faire », alors évolution
Iso 42010::2011: Ingénierie des systèmes et des logiciels — Description de
qu’une architecture décrit « comment le faire » l'architecture
2
09/03/2017
L’architecture peut être définie par : les concepts L’architecture peut être définie par : les concepts
fondamentaux ou les propriétés d'un système dans son fondamentaux ou les propriétés d'un système dans son
environnement incarné dans ses composants, leurs relations environnement incarné dans ses composants, leurs relations
et dans les principes de sa conception et de son évolution et dans les principes de sa conception et de son évolution
3
09/03/2017
1. Sans couplage : les composants n'échangent pas 5. Externe : les composants échangent de l'information par
d'information un moyen de communication externe (fichier, pipeline, lien
2. Par données : les composants échangent de de communication).
l'information par des méthodes utilisant des arguments
(paramètres) de type simple (nombre, String etc.= 6. Commun (global) : les composants échangent de
3. Par paquet : les composants échangent de l'information l'information via un ensemble de données (variables)
par des méthodes utilisant des arguments de type composé commun.
(record , classe, structure complexe) 7. Par contenu (interne) : les composants échangent de
4. Par contrôle : les composants se passent ou modifient l'information en lisant et écrivant directement dans leurs
leur contrôle par changement d'un drapeau (verrou). espaces de données (variables) respectifs.
4
09/03/2017
Mais aussi
Pipes et filtres
Difficulté d’apporter des changements
Abstraction des DATA
Plus de temps pour le développement et les tests Communication entre couches
Entrave le développement en parallèle Invocation implicite
entrepôts
Cours Architectures logicielle 19 Cours Architectures logicielle 20
5
09/03/2017
6
09/03/2017
7
09/03/2017
8
09/03/2017
L’Architecture logicielle
Ou ceci: