Vous êtes sur la page 1sur 23

Diagrammes de composants

et de déploiement
Aziza EL OUAAZIZI
Faculté Polydisciplinaire de Taza
Département des Mathématiques, Physique et Informatique
Licence Informatique

1
Diagramme de composants

 Tout les diagrammes que nous avons vu jusqu’à présent en UML


constitue le modèle logique: visualiser, spécifier et documenter la
structure et le comportement des objets.

 La construction du projet logiciel va s’appuyer sur les composants du


monde réel de l’ordinateur: fichiers, tables, librairies, …

Organiser le logiciel du système à développer en des morceaux logiciels


gérables, réutilisables et échangeables.
 Permet de spécifier :
composants;;
composants
interfaces;;
interfaces
relations (dépendance, contenance, association, réalisation)
réalisation)..

2
Composant
 Un composant est une partie physique et remplaçable d’un
système (driver, bibliothèque, codec,
codec,……) qui sait faire et fournir la
réalisation d’un ensemble d’interface
d’interface..

Correspond à une fonctionnalité «clé» du système


système..

Taille allant de la classe au sous


sous--système:
système: peut avoir une structure
simple ou composite
composite..

Elément encapsulé:
encapsulé: définit par ses interfaces requises et fournies
fournies..

Réutilisable remplaçable au sein de son environnement logiciel


logiciel:: la
seule contrainte pour pouvoir substituer un composant par un autre
est de respecter les interfaces requises et fournies
fournies..

Un composant peut être considéré comme une unité autonome à l’intérieur d’un système ou d’un
sous--système. Il a une ou plusieurs interfaces requises ou fournies et son intérieur est caché et
sous
inaccessible autrement qu’au travers de ses interfaces

3
Représentation d’un composant
 Deux représentations possibles
possibles::

« component » Composant1
Composant1

Nom du composant
 Nom du composant :
Permet de distinguer un composant des autres composants.
composants.
Peut être un nom simple ou un nom composé qui indique le paquetage
auquel appartient le composant.
composant.
 Component: spécifient le type composant qui peut désigner:
désigner:
« executable »: un programme pouvant s’exécuter sur un nœud
« library » : une bibliothèque statique ou dynamique
« table » : une table de base de données
« file» : un fichier contenant du code source ou des données
file»
« document » : un document

4
Interfaces

 Définition
Définition::
Est une collection d’opérations utilisées pour spécifier les services
d’un composant (i(interaction
nteraction entre composants)
composants)::
L’interface fournie est une interface qu'il est capable de mettre en
œuvre..
œuvre
L’interface requise est une interface dont il a besoin pour fonctionner.
fonctionner.

Relations avec les composants


composants::
Réalisation::
Réalisation
Définie entre l’interface fournie et le composant qui fournit les
services pour les autres composants
composants..
Utilisation::
Utilisation
Définie entre l’interface requise et le composant qui utilise les
services fournis par un autre composant

5
Représentation des interfaces
Graphiquement, une interface peut se représenter par des connecteurs ou à
l’aide d’un classeur comportant les opérations proposées.

GestionCompte
« component » « component »
Compte Client.java

utilisation réalisation

« Interface »
GestionCompte

« component » « component »
Compte Ouvrir() Client.java
Deposer()
Retirer()

6
Relations entre les composants
 Dépendance :
Un composant A dépond d’un composant B signifie qu’un des éléments
du composant A a besoin des services que les éléments du composant
B réalise
réalise..

Composant A Composant B

Composant A Composant B

 Contenance :
Un composant B peut être contenu dans un autre composant A, on dit
que A à une structure composite
composite..
Composant A

Composant B

7
Ports et structure interne
 Un port est un point de connexion entre un composant et son
environnement
Généralement, un port est associé à une interface requise ou
offerte .
L’utilisation des ports permet de modifier la structure interne d’un
composant sans affecter les clients externes
externes..

Gestion commerciale
Fournisseur de produit Source de données

Port

8
Connecteurs de délégation
 Les connecteurs de délégation montrent que ces parties internes
réalisent ou utilisent les interfaces du composant:
composant:
L'interface fournie d'un composant peut être réalisée par l'une de ses
parties internes
internes..
Son interface requise peut être imposée par l'une de ses parties
parties..

Composant A

Composant A::Classe 2

Fourni Requis

Composant A::Classe 1

NB: Les connecteurs de délégation se représentent par des flèches connectant le port attaché à
l'interface à la partie interne. Si celle-ci réalise une interface fournie, la flèche pointe alors
du port vers la partie interne. Si la partie utilise une interface requise, la flèche pointe de
la partie interne vers le port.
9
Connecteurs d’assemblage
 Une forme spéciale de connecteurs utilisée pour montrer la structure
composite des composants.
composants.
 utilisés comme option de présentation pour la dépendance d'un composant
au travers des interfaces

Composant A

Fourni Requis

Composant B Composant C

10
Diagramme de déploiement

 Le diagramme de déploiement fait parti des diagrammes


structuraux (statique)
(statique),, il permet représente:

La disposition physique des ressources matérielles qui constituent le


système qu’on appelle des nœuds
nœuds..

La nature des connexions de communication (relation) entre les


différentes ressources matérielles qu’on appelle des chemins de
communication..
communication

La répartition des composants (élément logiciels) sur les ressources


matériels et leur déploiement grâce aux artefacts
artefacts..

11
Nœud

 Une ressource matérielle ou logicielle qui assure l’hébergement


de logiciels ou de fichiers associés.

Un nœud est une ressource d’exécution sur laquelle des artefacts peuvent
être déployés en vue d’être exécutés.

Un nœud possède sa propre mémoire et une capacité de traitement.

Un nœud ne fait pas partie du logiciel en développement. C’est souvent


un environnement tiers qui offre des services au logiciel développé.

Les ressources matérielles sont quelquefois représentées avec le


stéréotype <<
<<device
device>>
>>

12
Représentation d’un nœud

«Stéréotype »
Nom du nœud Nœud 1

 Nom du nœud :
Permet de distinguer un nœud des autres nœuds
nœuds..
Le nom peut être composé du nom de paquetage qui contient le
nœud..
nœud

 Stéréotypes: permet de distinguer un nœud des autres types de


ressources (permettant de spécifier le types de ressources)
ressources)..
« CPU » : une unité de calcul
« memory » : une unité de stockage
« device »: une unité doté d’un processeur
« physical »: dispositif physique tel qu’un capteur

13
Nœud: environnement d’exécution
 Un environnement d’exécution (execution environment
environment)) est une sorte de
nœud qui décrit un environnement d’exécution pour un type spécifique de
composants..
composants
 Un environnement d’exécution est noté comme un nœud auquel
on associe le mot clé <ExecutionEnvironment >.
 Les environnements d’exécution n’existent pas seuls, ils s’exécutent sur
du matériel (nœud)
(nœud)..

«CPU»
Unité centrale

«Execution Environement»
Système d’exploitation

Un système d’exploitation a besoin d’une machine pour fonctionner.


On montre cette relation particulière par un emboîtement.
14
Attributs d’un nœud

Un nœud possède des attributs (quantité de mémoire, vitesse de


processeur, marque, type
type……) que nous pouvons spécifier à l’intérieur du
parallélépipède..
parallélépipède

«device» Ordinateur_salle_5:Ordinateur
Ordinateur
Vitesse processeur Vitesse processeur: 3GHz
Ram Ram: 4Go
Capacité disque dur Capacité disque dur: 1To
…. ….

Nœud Instance du nœud

15
Relations entre nœuds et composants
 Pour montrer qu’un composant est affecté sur un nœud, il faut le
représenter::
représenter
Soit en plaçant le composant dans le nœudnœud..
Soit en le reliant à l'aide d'une relation de dépendance (flèche en
pointillées) stéréotypée «support» orientée du composant vers le
nœud .

Nœud Nœud

Composant

« support »
Composant

16
Chemin 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 (liaison Ethernet, USB, bus de communication
communication……).
 Il est possible de faire figurer sur ce lien :
les cardinalités;
cardinalités;
des contraintes entre accolades (pour indiquer par exemple qu’un accès est
sécurisé);;
sécurisé)
le type de réseau et/ou son débit en l’indiquant comme un stéréotype…
stéréotype…

Nœud 1 Nœud 2
Multiplicité Multiplicité

Type relation

« device » 1 0..* « device »


Ordinateur Imprimante
TCP/IP

17
Artefact
 Un artefact (artifact
artifact)) est la spécification d’une partie d’information
physique (élément concret du monde physique) utilisée ou produite lors
du processus de développement d’un logiciel
logiciel..
 Exemple d’artéfacts:
d’artéfacts:
Fichiers exécutables du type .exe ou .jar
Fichiers de bibliothèque comme les fichiers .dll
Fichiers sources, par exemple : .java ou .cpp
Fichiers de configuration utilisés par le système .xml
xml,, .proprerties
proprerties……

 Représentation graphique
graphique::
Se représente en général par un rectangle avec le stéréotype <<
<<artifact
artifact>>
>>
et l’icône document en haut à droite
droite..

« artifact »
MonProgramme.jar

18
Artefact déployé sur un nœud
 Pour montrer qu’un artefact est déployé sur un nœud, il faut le
représenter::
représenter
Soit en le plaçant à l’intérieur du nœud
nœud..
Soit en le reliant à l'aide d'une relation de dépendance (flèche en
pointillées) stéréotypée «deploy
deploy»» orientée du l’artefact vers le nœud.

« device »
PC de bureau
« device »
PC de bureau

« deploy »
« artifact »
MonProgramme.jar

« artifact »
MonProgramme.jar

19
Relations entre artefact et composants
 Un artefact qui est la manifestation d’un composant est relié à celui-
celui-ci
par une relation de dépendance (flèche en pointillées) stéréotypé
<<manifest
<< manifest>>
>> orienté de l’artefact vers le composant
composant..

« device »
ordinateur
« deploy »

« artifact » « manifest »
Navigateur Web
chrome.jar

« device »
ordinateur
« artifact » « manifest »
Navigateur Web
chrome.jar

20
Exercice
Une architecture matérielle est constitué d’un serveur, d’un kiosques et
d’une console
console.. Le serveur utilise une tour de disques durs montés
RAID.. Le kiosque communique avec le serveur par une liaison Ethernet
RAID
100Mb/s
100 Mb/s et la console par une liaison RS
RS232
232CC. Les caractéristiques du
serveur sont
sont::
- Processeur Pentium
- Mémoire vive de 4Go
- Ecran 17 pouces
1- Représenter le diagramme de déploiement correspondant
correspondant..
On peut aussi préciser les modules exécutable sur chaque nœud
nœud::
- Sur le kiosque
kiosque:: user.
user.exe
- Sur le serveur
serveur:: dbadmin
dbadmin..exe
- Sur la console
console:: admin.
admin.exe et config
config..exe
2- Représenter le diagramme de déploiement correspondant.
correspondant.

21
Solution

« memory » « device »
Tour dd RAID Serveur
Processeur= Pentium
Ram= 4Go
Ecran= 17’’
….

RD232C
Ethernet 100 Mb/s

« device »
Console « device »
Kiosque

22
Solution

«device»
«memory»
Serveur
Tour dd RAID
« artifact »
dbadmin.exe

«device» RD232C
Console
Ethernet 100Mb/s
«artifact»
admin.exe

«artifact» « deploy »
config.exe «device» «artifact»
Kiosque user.exe

23

Vous aimerez peut-être aussi