E N D
Les diagrammes de composants Les diagrammes de composants décrivent les composants et leurs dépendances dans l’environnement de réalisation. Les diagrammes de composants sont des vues statiques de l’implémentation des systèmes qui montrent les choix de réalisation. En général, ils ne sont utilisés que pour des systèmes complexes. UML 06 V1-1 [PAM-00 p230]
Les composants Un composant est un élément physique qui représente une partie implémentée d’un système. Un composant peut être du code (source, binaire ou exécutable), un script, un fichier de commandes, un fichier de données, une table, etc. Il peut réaliser un ensemble d’interfaces qui définissent alors le comportement offert à d’autres composants. [BRJ-00 p376] Un composant est un élément physique qui se conforme à un ensemble d’interfaces et les réalise. Les interfaces font donc le lien entre le modèle logique et le modèle physique. UML 06 V1-1 [PAM-00 p231]
Figure 3-282 Exercice 1-1 UML 06 V1-1 [PAM-00 p231]
Assignation des classes et interfaces UML 06 V1-1
Composants et classes [BRJ-00 p378] Différences entre composants et classes: • Les classes représentent des abstractions logiques alors que les composants représentent des abstractions physiques qui existent dans le monde des bits. • Les composants représentent le regroupement physique de ce qu’on pourrait appeler des composants logiques et se situent à un niveau d’abstraction différent. • Les classes peuvent avoir directement des attributs et des opérations. En général, les composants comportent seulement des opérations que l’on peut atteindre uniquement par leur interface. UML 06 V1-1 [PAM-00 p231]
Remplaçabilité binaire [BRJ-00 p318] Un composant est un élément physique remplaçable d’un système qui fournit la réalisation d’un ensemble d’interfaces et s’y conforme. UML 06 V1-1
Stéréotypes UML définit cinq stéréotypes standards qui s’appliquent aux composants: • « document » • « exécutable » • « fichier » • « bibliothèque » • « table » UML 06 V1-1 [PAM-00 p232]
Les dépendances entre composants Les relations de dépendance sont utilisées dans les diagrammes de composants pour indiquer qu’un élément d’implémentation d’un composant fait appel aux services offerts par les éléments d’implémentation d’un autre composant. UML 06 V1-1 [PAM-00 p233]
Exercice 2-1 Inspiré de: [BRJ-00 Fig 25-6] UML 06 V1-1
Modélisation d’une API [BRJ-00 p386] Un développeur qui assemble un système à partir de composants peut souhaiter que les API dont il se sert soient le ciment entre ces éléments. Les API représentent les points de soudure du système au niveau du programme, points que l’on peut modéliser à l’aide des interfaces et des composants. UML 06 V1-1
Modélisation de code source [BRJ-00 p388] …On utilise également les composants pour modéliser la configuration de tous les fichiers sources utilisés par les outils de développement pour créer ces composants. UML 06 V1-1
Les dépendances entre composants Composant utilisateur Interfcace du composant fournisseur Dépendance entre des composants utilisateurs et les interfaces des composants fournisseurs. UML 06 V1-1 [PAM-00 p233]
Extension des stéréotypes de composants UML 06 V1-1
Stéréotype « Task … » [PAM-97 p185] Les tâches correspondent à des composants qui possèdent leur propre flot (thread en anglais) de contrôle. UML 06 V1-1
Les modules Les modules représentent une unité pour la manipulation et le stockage de toutes les sortes d’éléments physiques qui entrent dans la fabrication des applications informatiques. Les modules peuvent être de simples fichiers, des paquetages du langage Ada ou encore des bibliothèques chargées dynamiquement. UML 06 V1-1 [PAM-00 p232]
Les diagrammes de déploiement Les diagrammes de déploiement montrent la disposition physique des différents matériels – les nœuds – qui entrent dans la composition d’un système et la répartition des instances de composants, processus et objets qui « vivent » sur ces matériels. [BRJ-00 p445] Les diagrammes de déploiement sont une des deux sortes de diagrammes utilisés dans la modélisation des aspects physiques d’un système orienté objet. Un diagramme de déploiement montre la configuration de nœuds de traitement en phase d’exécution ainsi que les composants qui se trouvent sur ces nœuds. UML 06 V1-1 [PAM-00 p235]
Les noeuds Chaque ressource matérielle est représentée par un nœud. En général, cette ressource possède au minimum de la mémoire et parfois aussi des capacités de calcul. Un calculateur, des ressources humaines ou des périphériques sont des ressources modélisées par des nœuds. UML 06 V1-1 [PAM-00 p235]
Nœuds et composants [BRJ-00 p445] Par de nombreux aspects, les nœuds ressemblent aux composants: ils ont tous deux un nom, peuvent participer à des relations de dépendance, de généralisation et d’association, peuvent être emboîtés, avoir des instances et participer à des interactions. Cependant, il existe des différences non négligeables entre eux. • Les composants sont des éléments qui participent à l’exécution d’un système alors que les nœuds sont des éléments qui exécutent les composants. • Les composants représentent l’emballage physique d’éléments logiques alors que les nœuds représentent le déploiement physique des composants. UML 06 V1-1
Exécution des composants par les noeuds « support » UML 06 V1-1
Les supports de communication Les différents nœuds qui apparaissent dans le diagramme de déploiement sont connectés entre eux par des lignes qui symbolisent un support de communication, à priori, bidirectionnel. UML 06 V1-1 [PAM-00 p237]
Exercice 3 - 1 Inspiré de: [BRJ-00 Fig 26-6] UML 06 V1-1
Propriétés d’un processeur UML 06 V1-1