1. Université Mohamed Chérif Messaâdia
ــ Souk-Ahras ــ
Faculté des Sciences et de Technologie
Département Mathématique et Informatique
3emeannéeinformatique
Dirigé par :
Pr .Abdelkrim Amirat
réalisé par :
• Nour El -houda Hadji
Le diagramme de composants
2. Plan de travail
1 - Introduction
2 - Objectif
2 - Composants
4 - Stéréotypes
5 - Dépendance
6 - Module
7 - Port
8 – Exemples
9- Conclusion
3. UML 2.0
UML 2
Diagrammes structurels
Diagramme de classes
Diagramme d’objets
Diagramme de composants
Diagramme de déploiement
Diagramme de paquetage
Diagramme de structures composites
Diagramme de cas d’utilisation
Diagramme d’activités
Diagramme d’états transitions
Diagrammes d’interactions
Diagramme de séquence
Diagramme de communication
Diagramme global d’interaction
Diagramme de temps
Diagrammes Comportementaux
4. 1 - Introduction
Le diagramme de composant
sont des vues statiques de l’implémentation des systèmes qui montrent les choix
de réalisation.
décrivent les composants et leurs dépendances dans l’environnement de
réalisation.
En général, ils ne sont utilisés que pour des systèmes complexes.
5. 2 - Objectif
Visualiser l’organisation physique générale d’un système décrite en
terme de
composants logiciels.
Présenter les dépendances unissant les différents constituants logiciels
du système.
Etablir les différentes configurations liant les composants du système.
Permettre de décrire l'architecture physique et statique d'une
application en
terme de modules: fichiers sources, librairies ,exécutables, etc...
6. Les diagrammes de composants sont composés:
Les composants.
Les modules.
Les dépendances.
7. 3.1 Composant
Elément physique représentant une partie de
l’implémentation du système:
code (source, binaire ou exécutable).
fichier de commande.
fichier de données, table.
Un composant est un élément physique qui se
conforme à un ensemble d’interfaces et les réalise.
Il est représenté graphiquement:
8. 3.2 Composant
En général ,un composant représente l’implantation
d’une classe.
Exemple: Le composant Java nommé java.lang.String
est l’implantation d’une classe nommée String.
9. Si un composant implante plusieurs classes, ces dernières
sont représentées comme suit:
Sys de vol
Client Réservation
Composant:Instance
L’instance d’un composant est représentée par un
composant dont le nom est souligné.
Passager
Liste d’abonnées
pageListe d’articles
Journal
10. 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.
3.2 - Composants et classes
11. 3.3 - Interface
Une interface : est un ensemble d’opérations servant
à spécifier un service proposé par un composant.
Il existe 2 types d’interface:
Les interfaces offertes : Se sont les services implantés
par le composant et qui peuvent être utilisés par
d’autres composants.
Les interfaces requises : Se sont Les services que le
composant a besoin pour faire son travail.
Composant
Interface
offerte
Interface
utilisée
13. 4 - Stéréotype
un stéréotype :
est l'image préconçue d'un sujet dans un cadre de référence donné, telle
qu'elle y est habituellement admise et véhiculée.
UML définit :5 stéréotypes standards qui s’appliquent aux composants:
« document » : un document quelconque
« exécutable » : un programme qui peut s’exécuter sur un nœud
« fichier» : un document contenant du code source ou des données
« bibliothèque »
« table » : une table d’une base de données relationnelle
14. 5 - La dépendance
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.
Illustre l’utilisation des services d’un composant par un
second composant.
16. Dépendance entre des composants utilisateurs et les
interfaces des composants fournisseurs.
Personne
Calendrier
Agenda
Rendez-vous
Datation
Exemple (2)
17. 6 - Module
Représente une unité pour le regroupement et
la manipulation de composants.
Par défaut chaque classe du modèle logique
est réalisé par deux composants :
La spécifications : l’interface de
la classe.
Le corps : la réalisation de cette
classe.
En java les modules existent sous
l’appellation de paquetage.
Exemple : le module Java java.lang contient
les composants java.lang.String.
La représentation d’un
module:
18. 7 - Port
Un port est un point de connexion entre un Composant et son
environnement.
L’utilisation des ports permet de modifier la structure interne d’un
composant sans affecter les clients externes.
Généralement, un port est associé à une interface requise ou offerte.
Graphiquement, un port est représenté par un petit carré.
Composant
Port1
19. La séparation des préoccupation est le principe qui assure l’intégrité
fonctionnelle d’un composant.
Chaque composant réalise une, et seulement une fonction au sein du
système, mais peut néanmoins exposer plusieurs méthodes.
Typiquement, chaque composant est défini par une interface qui constitue
son seul moyen d’interagir avec les autres composants.
L’utilisation d’une interface pour communiquer avec les autres composants
du système facilite la maintenance puisqu’on peut alors en changer
l’implémentation sans affecter les autres composants (induit un couplage
plus faible du composant avec le reste du système).
Les classes d’un composant devrait être vues comme un patron cohésif qui
implément la fonctionnalité du composant.
78-Composant et le principe de séparation des
préoccupation -
21. Nous désirons implanter la gestion d’un agenda.
Un agenda contient un ensemble de personnes.
Un agenda posséde un propriétaire.
Chaque personne est identité par son nom et par un
ensemble de coordonnées.
Une coordonnée peut être postale, téléphonique ou
électronique (email ou page web).
Une adresse email n’appartient qu’a une seule
personne.
Exemple (2)
24. Ce diagramme affiche certains
composants et de leurs inter-
relations. Les connecteurs
d'assemblée "lient" les interfaces
fournies fournis par "le Produit"
et "le Client" pour les interfaces
requises spécifiées par "Ordre" de
l'Assemblée. Une relation de
dépendance cartes associées
compte les détails d'un client à
l'interface exigée; "Paiement",
indiqué par "Ordre".
Exemple (3)
25. Le composants peuvent être organisés en paquetages,
qui définissent des sous-systèmes.
Les sous-systèmes organisent la vue des composants
(de réalisation) d'un système.
Ils permettent de gérer la complexité, par
encapsulation des détails d'implémentation.
9 -Conclusion