Les diagrammes UML
Diagramme de d ploiement
Diagramme de composants
Manel HAMZA
1
Les diagrammes UML
Manel HAMZA
2
Diagramme de composants
Manel HAMZA
3
Diagramme de composants :
Pr sentation
- Un diagramme de composant d crit la fa on
selon laquelle les composantes logicielles
seront r alis es.
- Il repr sente les choix de r alisation.
- Il est destin aux r alisateurs (d veloppeurs).
Manel HAMZA
4
Diagramme de composants :
Concepts de base
" Le diagramme de composants se base sur les
concepts suivants :
Composant : Toute sorte d l ment physique
permettant la r alisation dun logiciel.
D pendance entre composants : Relation de
d pendance entre deux ou plusieurs composants.
Programme principal : Constitue le point dentr e
dans une application.
Sous-programme : Proc dure ou fonction ne
contenant aucune classe.
Sous-syst me : Regroupement dun ensemble de
composants.
Manel HAMZA
5
Diagramme de composants :
Les composants
" Les composants repr sentent toute sortes
d l ments physiques permettant la r alisation
dun logiciel.
" Un composant est appel aussi module.
" Un composant se pr sente sous forme de fichier.
" Dans lapproche objet, chaque classe constitue
un composant.
" Chaque classe (composant) est repr sent e par
deux l ments : une sp cification et un corps.
Manel HAMZA
6
Diagramme de composants :
Les composants: repr sentation
" Trois repr sentations possibles :
Manel HAMZA
7
Diagramme de composants :
D pendance entre composants
" Dans un diagramme de composants, la
relation de d pendance est utilis e pour
indiquer quun composant fait r f rence aux
services offerts par un autre composant.
" Cette notion est utile pour repr senter a
d pendance de compilation entre
composants.
Manel HAMZA
8
Diagramme de composants :
D pendance: repr sentation
Manel HAMZA
9
Diagramme de composants :
Les interfaces
" elles d finissent un ensembles d'op rations, ayant une
visibilit publique, qui doivent tre impl ment es par
le composant.
" Deux types d'interfaces peuvent tre repr sent s :
Interfaces fournies : ces interfaces d crivent les services
que des instances d'un discriminant (le fournisseur) offrent
leurs clients
Interfaces requises : ces interfaces d finissent les services
dont un discriminant a besoin pour ex cuter ses fonctions
et pour remplir ses propres obligations envers ses clients
Une interface a g n ralement un nom qui refl te le r le
qu'elle joue dans une application.
Manel HAMZA
10
Advertisement
Diagrammes de composants
Les interfaces
" Repr sentation en UML dinterfaces: il existe
plusieurs mani res de sch matiser une
interface en UML. Les plus adopt es sont :
Avec des connecteurs dassemblage
Dans un classeur s par
Manel HAMZA
11
Diagrammes de composants
Les interfaces
" Pr sentation des interfaces avec des connecteurs
dassemblage :
Les interfaces requises (repr sent es par un demi-
cercle) et les interfaces fournies (repr sent es par
un cercle) sont raccord es au composant par un
trait.
Manel HAMZA
12
Diagrammes de composants
Les interfaces
" Pr sentation des interfaces dans un classeur s par :
les interfaces requises sont reli es au composant par une
fl che en pointill es sur laquelle figure le st r otype
<use>.
"
" Les interfaces fournies sont reli es au composant par une
fl che en pointill es sur laquelle figure le st r otype
<realize> (le bout de la fl che est un triangle vide).
Manel HAMZA
13
Diagramme de composants
Exemple
Manel HAMZA
14
Diagramme de d ploiement
Manel HAMZA
15
Diagramme de d ploiement :
Pr sentation
" Repr sente la structure physique du syst me
informatique et la r partition des composantes
logicielles sur ce syst me.
" Constitue un moyen pour repr senter les
diff rentes architectures selon laquelle le
nouveau logiciel peut tre d ploy :
Architecture centralis e
Architecture client/serveur deux niveaux
Architecture client/serveur trois niveaux
Architecture client/serveur n niveaux
Manel HAMZA
16
Diagramme de d ploiement :
Concepts de base
" Le diagramme de d ploiement se base sur les
concepts suivants :
NSud : Description dun dispositif mat riel.
Composant : Composante logicielle.
Association de nSud : Relation entre deux nSuds.
Instance de nSud : Cest une occurrence dun
dispositif mat riel.
Manel HAMZA
17
Diagramme de d ploiement :
Les nSuds
" Chaque dispositif mat riel est repr sent par
un nSud.
" Un nSud est d crit par :
Un nom (obligatoire)
Un st r otype (serveur, client, imprimante,
routeur, ...)
Une adresse r seau
Une cardinalit
Manel HAMZA
18
Diagramme de d ploiement :
Les nSuds : repr sentation
Type de dispositif
Nom du nSud
<<serveur de donn es>>
SD
Adresse r seau
190.190.10.10
1
Advertisement
Cardinalit
Manel HAMZA
19
Diagramme de d ploiement :
Les composants
" Dans chaque nSud, on peut indiquer les
composants logiciels qui vont y tre install s.
" On utilise le m me formalisme que celui du
diagramme de composants.
Manel HAMZA
20
Diagramme de d ploiement :
Les composants: repr sentation
<<serveur de donn es>>
SD
190.190.10.10
SGBD Oracle
1
Manel HAMZA
21
Diagramme de d ploiement :
Les associations
" Les nSuds sont inter-reli s par des
associations.
" Chaque association entre deux nSuds
repr sente lexistence dun support de
communication entre eux.
" Pour chaque association, on peut pr ciser :
Le nom
Le r le de chaque c t
La cardinalit
Manel HAMZA
22
Diagramme de d ploiement :
Les associations:repr sentation
1..1
R le 1
Nom Association
1..*
R le 2
NSud 1
NSud 2
Manel HAMZA
23
Diagramme de d ploiement :
Les associations: exemple
OAS
IIS
<<Serveur dapplication>>
CRM
Internet
1..1
0..*
<<Client>>
Navigateur
1..3
TCP-IP
1..1
<<serveur de donn es>>
SGBD Oracle
USB
<<Imprimante>>
Manel HAMZA
24
Diagramme de d ploiement :
Instances des nSuds
" Dans un diagramme de d ploiement, on peut
repr senter les instances des nSuds.
" Cette possibilit est utilis e surtout pour
repr senter de fa on exhaustive des parties
du diagramme de d ploiement.
" Les instances de nSuds se distinguent des
nSuds par le fait que leurs noms sont
soulign s.
Manel HAMZA
25
Diagramme de d ploiement :
Instance de nSud: repr sentation
NSud 1
Manel HAMZA
26
Diagramme de d ploiement :
Instances de nSud :exemple
Serveur app 1
Advertisement
Serveur app 2
Serveur app 3
serveur de donn es
Manel HAMZA
27
Diagramme de d ploiement:
exemple
" Source :
" UML par la pratique :
" tudes de cas et
" exercices corrig s
" Pascal Roques
" Eyrolles
Manel HAMZA
28
Diagramme de d ploiement:
exemple
Manel HAMZA
29
Diagramme de d ploiement
Manel HAMZA
30
Exercice 1
" Soit le diagramme UML suivant :
1. Quest ce quil repr sente
ce diagramme ?
2. Commenter les diff rents
l ments de ce
diagramme
3. Quelle est larchitecture
de lapplication
repr sent e par ce
diagramme ?
Manel HAMZA
31
Correction Exercice 1 (1/2)
1. diagramme N 1 repr sente un diagramme de d ploiement dune application web.
Ce diagramme est compos de deux parties physiques d ploy es sur deux nSuds :
2.
- La premi re partie constitue la partie cliente, soit une machine dont le syst me
dexploitation Windows XP. Un composant est affect ce nSud, qui est le
navigateur web.
- La deuxi me partie est le serveur, install sur une machine dOS Linux.
Le premier composant associ est le conteneur Web, de type Tomcat, version 4.1.
Lautre composant fut le connecteur base de donn es, MySQL, version 5.
Ces deux parties sont reli via une d pendance (car les composants sont d ploy s
sur les nSuds directement) dInternet selon le mod le TCP/IP.
Manel HAMZA
32
Correction Exercice 2 (2/2)
" Cest une architecture Client/ Serveur (2-tiers).
Soit le sch ma suivant :
Manel HAMZA
33
Exercice 2
1. Quest ce quil repr sente ce diagramme ?
2. Commenter les diff rents l ments de ce diagramme.
3. Quelles sont les interfaces fournies et requises de diff rents
composants.
Manel HAMZA
34
Correction Exercice 2
1.
Le diagramme 2 repr sente le diagramme de composants
dune application dinscription cours en ligne.
2. Ce diagramme est constitu de 4 composants :
InscriptionCours, Comptabilit , CatalogueCours et
Annuaire. Il y a 3 diff rentes interfaces : Facturation,
Cours et FichePersonne.
3. Pour le composant Comptabilit : on a une seule interface
fournie qui est nomm e : Facturation. Le composant
CatalogueCours a aussi une seule interface fournie Cours.
De m me pour le composant Annuaire la seule interface
fournie est FichePersonne. Par contre, ces 3 interfaces
sont toutes requises pour le composant InscriptionCours.
Manel HAMZA
35
Exercice 3
"
"
La soci t am ricaine YAPS vend des animaux de compagnie. Elle
est implant e depuis plusieurs d cennies dans le sud de la
Californie, o ses principaux clients sont domicili s.
R cemment, elle a ouvert son march d'autres tats am ricains,
Advertisement
ainsi qu' l' tranger.
" Elle continue exercer sa profession telle qu'elle le faisait ses
d buts. C'est- -dire, qu'elle r pertorie ses clients sur des fiches
papiers index es par le nom de famille, re oit les commandes par
fax et les ch ques par courrier.
" Une fois le montant du ch que encaiss , YAPS envoie les animaux
via la soci t de transport PetEx. Annuellement, YAPS envoie son
catalogue d'animaux domestiques ses clients. Elle trouve ses
nouveaux clients au travers de publicit s qu'elle envoie aussi par
courrier.
Manel HAMZA
36
Exercice 3
Configuration 1
" YAPS veut informatiser la gestion de ses clients et la gestion des
catalogues. En effet, les clients et les catalogues sont de plus en
plus nombreux.
" Elle voudrait saisir leurs coordonn es et pouvoir les modifier.
" Cette informatisation lui permettrait surtout de pouvoir retrouver
les informations de ses clients et des catalogues plus rapidement.
YAPS poss de des PC avec Windows comme syst me d'exploitation.
La tache de gestion des clients sera men e par Bill qui assure la
relation client le.
La t che de gestion des catalogues sera men e par John qui assure la
gestion des catalogues.
La soci t ne dispose pas dun r seau local.
" Proposer une architecture logicielle pour cette configuration (
diagramme de d ploiement)
Manel HAMZA
37
Exercice 3
Correction configuration 1
Manel HAMZA
38
Exercice 3
Configuration 2
" YAPS d cide d'investir dans un petit r seau local et
d'avoir un poste distant accueillant la base de donn es.
" Ainsi, les deux applications gestion_Clients et
Gestion_Catalogues utiliseront la m me base de
donn es distante.
" Les besoins utilisateurs restent inchang s puisque cette
nouvelle volution est purement technique et non
fonctionnelle. Les applications gestion_Clients et
Gestion_Catalogues doivent continuer fonctionner
comme elles le faisaient auparavant.
Manel HAMZA
39
Exercice 3
Correction configuration 2
Manel HAMZA
40
Exercice 3
Configuration 3
" La soci t YAPS ne cesse de se d velopper. Elle a doubl ses effectifs et ses ventes
ont augment de 200%.
Les utilisateurs se plaignent de la lenteur des traitements.
" Les applications commencent donner des signes de ralentissement.
"
" Apr s avoir fait une tude sur son parc informatique, YAPS se rend compte que les
postes utilisateurs sont sous-dimensionn s pour r pondre la demande croissante
des clients.
" Moderniser tous les postes utilisateurs serait trop co teux pour l'entreprise.
" YAPS d cide alors d'investir dans un serveur puissant qui pourrait h berger la base
de donn es et les traitements m tiers de l'application.
C'est donc une distribution de l'application qui est souhait e.
Les postes utilisateurs ne feraient plus aucun traitement mais simplement de l'affichage.
Les traitements m tiers et l'acc s aux donn es seront effectu s par le serveur travers des
appels distants.
" Cette volution est purement technique. Elle doit permettre une meilleure utilisation
des ressources informatiques des postes utilisateurs mais en aucun cas elle ne doit
changer le comportement de l'application.
Manel HAMZA
41
Exercice 3
Correction configuration 2
" Alors, pour r soudre ce probl me le recourt larchitecture 3-tiers est
bien clair, en s parant laffichage, de traitement m tier.
Manel HAMZA
42