Vous êtes sur la page 1sur 18

UML (Diagramme de composants, Diagramme de dploiement)

Unified Modeling Language

Sommaire

Introduction Objectifs du diagramme de composants Diagramme de composants Composant Interface Objectifs du diagramme de dploiement Diagramme de dploiement Nud Connexion Instance de nud

Diagrammes de composants et de dploiement

Issu en grande partie de la mthode OMT (Rumbaugh) et de la mthode Booch Lutilisation dun diagramme de composants nest envisageable que pour de petites applications ce qui en fait un modle trs peu utilis

Le diagramme de dploiement est en gnral utilis en phase de Conception gnrale o il permet de dcrire larchitecture technique gnrale

Diagramme de composants

Objectifs
Visualiser lorganisation physique gnrale dun systme dcrite en terme de composants logiciels Prsenter les dpendances unissant les diffrents constituants logiciels du systme Etablir les diffrentes configurations physiques logiciels du systme liant les lments

Diagramme de composants (Dfinition)

Un diagramme de composants est un diagramme reprsentant lorganisation et les dpendances liant les lments physiques logiciels dun systme
Un diagramme de composants propose une vision statique de lorganisation des lments physiques logiciels du systme Un diagramme de composants montre les dpendances existant entre les composants physiques logiciels du systme Un diagramme de composants ne montre pas les interactions entre les composants physiques logiciels
5

Diagramme de composants
Exemple

Banque.h
{version=3.1}

Compte.h {version=2.2} Banque.cpp

{version=3.1}

Client.h {version=1.0}

Entreprise.h {version=1.2}

Composant (Dfinition) Un composant est un lment physique logiciel interchangeable dun systme qui fournit limplmentation dun ensemble dinterfaces
Un composant est limplmentation physique logicielle dun ensemble dlments logiques (classe ou collaboration) Un composant propose un ensemble dinterfaces quil se doit de respecter Un composant peut tre remplac par un autre composant respectant les mmes interfaces Un composant peut tre un excutable, une librairie, une table, un fichier source, un document,
7

Composant (Notation) Notation


Un composant est reprsent par un rectangle avec des onglets Le nom du composant peut tre prcd du nom du paquetage qui le contient Il est possible de dvelopper le composant de faon faire apparatre le nom des lments logiques quil implmente

<< Strotype >> Nom paquetage :: Nom composant

Ralise Nom Elment logique 1

Nom Elment logique N

Interface dun composant (Dfinition) Une interface est un ensemble doprations servant spcifier un service propos par un composant ou par une classe
Une interface peut tre associe aussi bien au niveau logique (rare) quau niveau physique Linterface contient les oprations mises la disposition des autres composants

Un composant peut implmenter plusieurs interfaces


Un composant se doit de proposer une implmentation pour chacune de ses interfaces
9

Interface dun composant (Notation)


Une interface peut tre reprsente sous la forme dune icne (rond) ou sous une forme dveloppe prsentant les oprations

Il est possible de reprsenter lexportation et limportation dune interface par un composant

Client.java

Compte.java

GestionCompte

Client.java

<< Interface >> GestionCompte Ouvrir(int) Dposer(int) Retirer(int)

Compte.java

10

Diagramme de dploiement

Objectifs
Etablir la cartographie complte de dploiement du logiciel sur le matriel Visualiser la topologie matrielle dun systme Etablir la nature des connexions reliant les lments matriels du systme

11

Diagramme de dploiement (Dfinition)

Un diagramme de dploiement est un diagramme de classes ou un diagramme dobjets reprsentant les nuds ou les instances de nuds sur lesquels le systme sexcute
Un diagramme de dploiement propose une vision statique de la topologie du matriel sur lequel sexcute le systme Un diagramme de dploiement montre les associations (connexions) existant entre les nuds du systme Un diagramme de dploiement ne montre pas les interactions entre les nuds
12

Diagramme de dploiement
Exemple

<<processor>> Serveur Web

<<processor>> Serveur Applicatif

<<processor>> Serveur de donnes

Mmoire=128 meg

Mmoire=256 meg Mmoire=256 meg

<<network>>
Rseau local

<<processor>> Proxy

Mmoire=128 meg

13

Noeud (Dfinition) Un nud est un lment physique matriel sur lequel le systme sexcute

Un nud est un lment matriel sur lequel sont dploys un certain nombre de composants logiciels du systme Un nud est un lment matriel sur lequel sont excuts un certain nombre de composants logiciels du systme Un nud peut tre un processeur, un priphrique, un rseau Un nud est assimilable une classe et possde donc des attributs
14

Noeud (Notation)
Un nud est reprsent par un cube

Notation

Le nom du nud peut tre prcd du nom du paquetage qui le contient


Il est possible de dvelopper le nud de faon faire apparatre le nom de ses attributs Il est possible de dvelopper le nud de faon faire apparatre le nom des composants quil dploie

<< Strotype >> Nom paquetage :: Nom nud Nom attribut 1: type1 Nom attribut N : typeN

Dploie

Nom Composant 1
Nom Composant N
15

Connexion entre nuds (Dfinition) Une connexion est une connexion physique reliant deux nuds entre-eux
Une connexion entre deux nuds est lquivalent dune association entre deux classes sur un diagramme de classes Exemples de connexion :
une connexion Ethernet, une ligne srie, un bus partag,

16

Instance de nud (Notation)

On peut reprsenter des instances de nuds dans un diagramme de dploiement objet Une instance de nud est reprsent par un cube Le nom de linstance dun nud est compos dun identifiant de linstance suivi du nom du nud Les attributs de linstance apparaissent valoriss

Notation

<< Strotype >> Nom instance :: Nom nud Nom attribut 1 = valeur1 Nom Composant N = valeurN

Dploie

Nom Composant 1
Nom Composant N
17

Diagrammes de composants et de dploiement (Recommandations)


Le diagramme de composants peut savrer trs difficile dutilisation pour un logiciel complexe. Lui prfrer alors une description textuelle de larchitecture des composants Le diagramme de dploiement est indispensable en phase de Conception gnrale. Il nest pas assez utilis

A la diffrence des diagrammes de classe et dobjets, il peut tre intressant de mlanger nuds et instances de nud sur une diagramme de dploiement

18