Vous êtes sur la page 1sur 34

Méthodes de conception orientées objet

Méthodes de conception orientées ob jet UML Modélisation statique A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn
Méthodes de conception orientées ob jet UML Modélisation statique A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn
Méthodes de conception orientées ob jet UML Modélisation statique A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn
Méthodes de conception orientées ob jet UML Modélisation statique A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn

UML Modélisation statique

A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn

2011-2012

MCOO - LFI2

A. Abdellatif

Sommaire

MCOO - LFI2 A. Abdellatif Sommaire Introduction Diagramme de classes Diagramme d’objets Diagramme de composants

Introduction Diagramme de classes Diagramme d’objets Diagramme de composants Diagramme de déploiement Synthèse

UML : Modélisation statique

2

MCOO - LFI2

Introduction

A. Abdellatif

MCOO - LFI2 Introduction A. Abdellatif La modélisation statique d’un système consiste à décrire les composantes
MCOO - LFI2 Introduction A. Abdellatif La modélisation statique d’un système consiste à décrire les composantes
MCOO - LFI2 Introduction A. Abdellatif La modélisation statique d’un système consiste à décrire les composantes
MCOO - LFI2 Introduction A. Abdellatif La modélisation statique d’un système consiste à décrire les composantes

La modélisation statique d’un système consiste à décrire les composantes de ce dernier sans tenir compte de leur évolution dans le temps.

Elle

diagrammes

se

fait

à

l’aide

des

suivants :

Diagramme de classes Diagramme d’objets Diagramme de composants Diagramme de déploiement

UML : Modélisation statique

3

Diagramme de classes

Dia g ramme de classes
Dia g ramme de classes
Dia g ramme de classes
Dia g ramme de classes

MCOO - LFI2

Diagramme de classes :

Présentation

A. Abdellatif

- LFI2 Diagramme de classes : Présentation A. Abdellatif Représente les classes constituant le système et

Représente les classes constituant le système et les associations entre elles. C’est le diagramme le plus important de la modélisation orientée objet. Regroupe les classes du monde réel et les classes nécessaires à l’implémentation du système. Permet de générer la base de données et les classes utilisées dans la programmation des applications.

UML : Modélisation statique

5

MCOO - LFI2

A. Abdellatif

Diagramme de classes :

Concepts de base

- LFI2 A. Abdellatif Diagramme de classes : Concepts de base Le diagramme de classes se
- LFI2 A. Abdellatif Diagramme de classes : Concepts de base Le diagramme de classes se
- LFI2 A. Abdellatif Diagramme de classes : Concepts de base Le diagramme de classes se
- LFI2 A. Abdellatif Diagramme de classes : Concepts de base Le diagramme de classes se

Le diagramme de classes se base sur les concepts suivants :

Classe : Description formelle d’un ensemble d’objets ayant une sémantique, des propriétés et un comportement communs. Association : Relation sémantique entre deux ou plusieurs classes.

de

Propriété

(attribut)

:

élément

permettant

décrire une classe ou une association.

Méthode : Opération réalisée par les objets d’une classe.

de

Paquetage

:

Décomposition

du

diagramme

classes

UML : Modélisation statique

6

MCOO - LFI2 A. Abdellatif Diagramme de classes : Représentation d’une classe Nom classe Personne
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Représentation d’une classe
Nom classe
Personne
Matricule
Attributs
Nom
Prenom
D
a e_na ssance
t
i
Méthodes
Age ()
Forme minimale
7
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme de classes :

Représentation détaillée d’une classe

de classes : Représentation détaillée d’une classe Personne Type de + Matricule : int + Nom
de classes : Représentation détaillée d’une classe Personne Type de + Matricule : int + Nom
de classes : Représentation détaillée d’une classe Personne Type de + Matricule : int + Nom
de classes : Représentation détaillée d’une classe Personne Type de + Matricule : int + Nom
Personne Type de + Matricule : int + Nom : char données + Prenom :
Personne
Type de
+ Matricule
: int
+ Nom
: char
données
+ Prenom
: char
- Date_naissance
: date
# Permanant
: = vrai
boolean
Valeur
Visibilité :
+ Age ()
: int
initiale
+ Public
-
Privé
Type de
# Protégé
valeur de
retour

UML : Modélisation statique

8

MCOO - LFI2 A. Abdellatif Diagramme de classes : Représentation d’une association Classe A Classe
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Représentation d’une association
Classe A
Classe B
Avec possibilité de préciser :
•Un nom d’association
•Une décoration
•Le rôle de chaque classe
•Des cardinalités
9
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme de classes :

Représentation d’une association

E m ploy é E ntrepris e Tra va ille r d a n s
E m ploy é
E ntrepris e
Tra va ille r
d a n s
Nom d’association
E m ployé E ntrepris e Tra va ille r d a n s >
E m ployé
E ntrepris e
Tra va ille r
d a n s
>
Décoration

Employé

Entreprise

Travaille dans

Rôle
Rôle

Fait travailler

UML : Modélisation statique

10

MCOO - LFI2 A. Abdellatif Diagramme de classes : Cardinalités (multiplicité) Cardinalités possibles : Employé
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Cardinalités (multiplicité)
Cardinalités possibles :
Employé
1
1
1
0 *
0
1
m
n
1
1
0
*
*
Un et un seul
Un et un seul
Zéro ou un (optionnel)
De m à n
Zéro ou plusieurs
Zéro ou plusieurs
Un à plusieurs
Entreprise
1
*
11
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme de classes :

Navigabilité d’association

Diagramme de classes : Navigabilité d’association Chaque sens d’une association binaire peut être navigable ou non.
Diagramme de classes : Navigabilité d’association Chaque sens d’une association binaire peut être navigable ou non.
Diagramme de classes : Navigabilité d’association Chaque sens d’une association binaire peut être navigable ou non.
Diagramme de classes : Navigabilité d’association Chaque sens d’une association binaire peut être navigable ou non.
Chaque sens d’une association binaire peut être navigable ou non. La navigabilité est représentée pas
Chaque sens d’une association binaire peut être navigable
ou non.
La navigabilité est représentée pas une flèche.
La non navigabilité est représentée par une croix.
L’absence de ces deux symbole veut dire que l’association
est navigable dan les deux sens.
Commande
Article
0
*
1
*

Signification :

Une occurrence de Commande stocke une liste des Articles.

Une occurrence d’Article ne stocke pas une liste des commandes.

UML : Modélisation statique

12

MCOO - LFI2 A. Abdellatif Diagramme de classes : Classe association Si l’association est porteuse
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Classe association
Si l’association est porteuse de
données, elle est représentée par une
classe association.
Une classe association peut avoir des
propriétés et des méthodes.
Commande
Article
0
*
1
*
LigcoCommande
+
quantite
: int
13
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme de classes :

Les contraintes

Diagramme de classes : Les contraintes Lorsque les cardinalités ne sont pas su ffi san t
Diagramme de classes : Les contraintes Lorsque les cardinalités ne sont pas su ffi san t
Diagramme de classes : Les contraintes Lorsque les cardinalités ne sont pas su ffi san t
Diagramme de classes : Les contraintes Lorsque les cardinalités ne sont pas su ffi san t

Lorsque les cardinalités ne sont pas suffisantes pour traduire les règles de gestion, un digramme de classe peut être complété par des contraintes.

{contrainte}

Une

contrainte

plusieurs associations.

concerne

une

ou

UML : Modélisation statique

14

MCOO - LFI2

A. Abdellatif

Diagramme de classes :

Les contraintes

Toute règle peut être représentée sous forme de contraintes. Contraintes couramment utilisée :

{ordonnée} : Signifie l’existence d’une relation d’ordre entre les objets de la classe indiquée par la contrainte. {Sous-ensemble} : Indique qu’une collection est incluse dans une autre. {Ou exclusif} : Signifie la participation exclusive d’un objet à l’une ou l’autre des associations.

UML : Modélisation statique

15

MCOO - LFI2

A. Abdellatif

Diagramme de classes :

Les contraintes : exemples

Diagramme de classes : Les contraintes : exemples Chapitre Livre 1 1 0 * {Ordonnée} 1
Diagramme de classes : Les contraintes : exemples Chapitre Livre 1 1 0 * {Ordonnée} 1
Diagramme de classes : Les contraintes : exemples Chapitre Livre 1 1 0 * {Ordonnée} 1
Diagramme de classes : Les contraintes : exemples Chapitre Livre 1 1 0 * {Ordonnée} 1
Chapitre Livre 1 1 0 * {Ordonnée} 1 * 1 1 Inscrit dans Section Etudiant
Chapitre
Livre
1
1
0
*
{Ordonnée}
1
*
1
1
Inscrit dans
Section
Etudiant
{Sous-ensemble}
0
1
1
1
0 *
0
*
Reçoit
Représente
Equipe
Match
{Ou exclusif}
1
1
0
*
Se déplace

UML : Modélisation statique

16

MCOO - LFI2

Diagramme de classes :

A. Abdellatif

Association d’agrégation

de classes : A. Abdellatif Association d’agrégation Une agrégation est une association qui représente une

Une agrégation est une association qui représente une relation d’inclusion structurelle ou comportementale d’un élément dans un ensemble.

Agrégé Agrégat 0 1 Véhicule Entreprise 0 *
Agrégé
Agrégat
0 1
Véhicule
Entreprise
0 *

UML : Modélisation statique

17

MCOO - LFI2

Diagramme de classes :

A. Abdellatif

Association de composition

de classes : A. Abdellatif Association de composition Une composition est une association qui décrit une
de classes : A. Abdellatif Association de composition Une composition est une association qui décrit une
de classes : A. Abdellatif Association de composition Une composition est une association qui décrit une
de classes : A. Abdellatif Association de composition Une composition est une association qui décrit une
Une composition est une association qui décrit une contenance structurelle Vehicule entre instances. Composite 1
Une composition est une association
qui décrit une contenance structurelle
Vehicule
entre instances.
Composite
1
1
1
1
Composants
1
1
Remarque :
La destruction de l’objet
composite entraîne la
destruction des objets
composants
1
1
4 4
1
1
Moteur
BoiteVitesse
Roue

UML : Modélisation statique

18

MCOO - LFI2 A. Abdellatif Diagramme de classes : Association de qualification Permet de partitionner
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Association de qualification
Permet de partitionner les objets
d’une classe par rapport à certaines
propriétés de l’autre classe.
Class_1
Class_2
Clé
Répertoire
Fichier
0 *
Nom_repertoire
19
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Association n-aire
Association reliant plus que deux
classes.
A
B
Remarque :
Class_assoc
Les associations n-aires
C
sont
généralement
remplacées
par
une
classe.
20
UML : Modélisation statique
MCOO - LFI2 A. Abdellatif Diagramme de classes : Association n-aire (Exemple) Section Module Salle

MCOO - LFI2

A. Abdellatif

Diagramme de classes :

Association n-aire (Exemple)

Diagramme de classes : Association n-aire (Exemple) Section Module Salle Jour Emploi du temps + H
Section Module Salle Jour Emploi du temps + H début : int + H fin
Section
Module
Salle
Jour
Emploi du temps
+ H début
: int
+ H fin
: int
Replacé par
Replacé par
Section 1 1 0 *
Section
1
1
0 *
Module 1 1
Module
1
1

0 *

Emploi du temps + H début : int + H fin : int 0 *
Emploi du temps
+ H
début
:
int
+ H
fin
:
int
0
*
0
*
1
1
Salle
Jour
1
1

UML : Modélisation statique

21

Diagramme de classes :

Association d’héritage

Diagramme de classes : Association d’héritage Représente une relation d’héritage entre super classes et sous
Diagramme de classes : Association d’héritage Représente une relation d’héritage entre super classes et sous
Diagramme de classes : Association d’héritage Représente une relation d’héritage entre super classes et sous
Diagramme de classes : Association d’héritage Représente une relation d’héritage entre super classes et sous

Représente une relation d’héritage entre super classes et sous classes.

A C B
A
C
B
Personne + CIN + Nom + Prénom + Date naissance + Age () : int
Personne
+ CIN
+ Nom
+ Prénom
+ Date naissance
+ Age ()
: int
Passager
Pilote
+
Numero billet
+ Date embauche

UML : Modélisation statique

22

MCOO - LFI2

A. Abdellatif

MCOO - LFI2 A. Abdellatif Diagramme de classes : Association d’héritage multiple Moyen transport Terrestre
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Association d’héritage multiple
Moyen transport
Terrestre
Aérien
Maritime
Voiture
Avion
Hydravion
Bateau
23
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Association d’héritage exclusif
Client
{Exclusif}
Exclusif
Particulier
24
UML : Modélisation statique
MCOO - LFI2 A. Abdellatif Diagramme de classes : Association d’héritage :règles Une association d’héritage
MCOO - LFI2
A. Abdellatif
Diagramme de classes :
Association d’héritage :règles
Une association d’héritage ne peut pas
être :
Class_1A
Réflexive :
Symétrique :
B
A
A
B
C
Transitive :
25
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Exemple de diagramme de classes:

Système de réservation de vols

de diagramme de classes: Système de réservation de vols Source : UML par la pratique :
de diagramme de classes: Système de réservation de vols Source : UML par la pratique :
de diagramme de classes: Système de réservation de vols Source : UML par la pratique :
de diagramme de classes: Système de réservation de vols Source : UML par la pratique :

Source :

UML par la pratique :

études de cas et exercices corrigés Pascal Roques Eyrolles

: UML par la pratique : études de cas et exercices corrigés Pascal Roques Eyrolles UML

UML : Modélisation statique

26

MCOO - LFI2

A. Abdellatif

Exemple de diagramme de classes:

Système de réservation de vols

 

Énoncé :

1. Des compagnies aériennes proposent différents vols.

 

2. Un vol est ouvert à la réservation et refermé sur ordre de la compagnie.

3. Un client peut réserver un ou plusieurs vols, pour des passagers différents.

4. Une réservation concerne un seul vol et un seul passager.

5. Une réservation peut être annulée ou confirmée.

 

6. Un vol a un jour et une heure de départ , et un jour et une heure d’arrivée.

7. Un vol a un aéroport de départ et un aéroport d’arrivée.

8. Un vol peut comporter des escales dans des aéroports.

9. Une escale a une heure d’arrivée et une heure de départ.

10. Chaque aéroport dessert une ou plusieurs villes.

 

UML : Modélisation statique

27

MCOO - LFI2

A. Abdellatif

Exemple de diagramme de classes:

Système de réservation de vols

CompagnieAerienne Client nomCompagnie codeClient nomClient prenomClient * 1 adresseClient numTel numFax Propose
CompagnieAerienne
Client
nomCompagnie
codeClient
nomClient
prenomClient
* 1
adresseClient
numTel
numFax
Propose
* 1
1
1
relier 1
0
*
1
1
Aeroprt
effectuer
Vol
depart
0
*
nomAeroprt
numeroVol
dateDepart
Reservation
relier2
1
1
0
*
heureDeprt
<concerner
arrivee
dateReservation
dateArrivee
numeroReservation
1
1
0 *
heureArrivee
confirmer ()
0
*
infoescale
0
*
ouvrirReservation ()
annuler ()
escale
fermerReservation ()
{ordonnée}
0
*
0 *
concerne
dessert
1
1
0 *
Passager
InfosEscale
Ville
nomPassager
heureArrivee
nomVille
prenomPassager
heureDepart

UML : Modélisation statique

28

MCOO - LFI2

A. Abdellatif

Exemple de diagramme de classes:

Système de réservation de vols

CompagnieAerienne Client nomCompagnie codeClient nomClient prenomClient * 1 adresseClient numTel numFax Propose
CompagnieAerienne
Client
nomCompagnie
codeClient
nomClient
prenomClient
* 1
adresseClient
numTel
numFax
Propose
* 1
1
1
relier 1
0
*
1
1
Aeroprt
effectuer
Vol
depart
0
*
nomAeroprt
numeroVol
dateDepart
Reservation
relier2
1
1
0
*
heureDeprt
<concerner
arrivee
dateReservation
dateArrivee
numeroReservation
1
1
0 *
heureArrivee
confirmer ()
0
*
infoescale
0
*
ouvrirReservation ()
annuler ()
escale
fermerReservation ()
{ordonnée}
0
*
0 *
concerne
dessert
1
1
0 *
Passager
InfosEscale
Ville
nomPassager
heureArrivee
nomVille
prenomPassager
heureDepart
Vols
Réservation s

UML : Modélisation statique

29

Diagramme d’objets

Dia g ramme d’ob j ets
Dia g ramme d’ob j ets
Dia g ramme d’ob j ets
Dia g ramme d’ob j ets

MCOO - LFI2

Diagramme d’objets :

Présentation

A. Abdellatif

- LFI2 Diagramme d’objets : Présentation A. Abdellatif C’est un diagramme de classes appliqué concr è

C’est un diagramme de classes appliqué concrètement à quelques objets. Appelé aussi diagramme d’instances. Permet de préciser un diagramme de classes en l’illustrant par des exemples Permet de vérifier l’adéquation du diagramme de classes à des cas particuliers.

UML : Modélisation statique

31

MCOO - LFI2

Diagramme d’objets :

Concepts de base

A. Abdellatif

- LFI2 Diagramme d’objets : Concepts de base A. Abdellatif Le diagramme de classes se base
- LFI2 Diagramme d’objets : Concepts de base A. Abdellatif Le diagramme de classes se base
- LFI2 Diagramme d’objets : Concepts de base A. Abdellatif Le diagramme de classes se base
- LFI2 Diagramme d’objets : Concepts de base A. Abdellatif Le diagramme de classes se base

Le diagramme de classes se base sur les concepts suivants :

Objet : Description d’un objet du monde réel (instance de classe). Lien : Relation sémantique entre deux ou plusieurs objets (instance d’association). Valeur : Valeur d’une propriété relative à un objet.

UML : Modélisation statique

32

MCOO - LFI2 A. Abdellatif Correspondance entre diagrammes de classes et diagrammes d’objets 1 *
MCOO - LFI2
A. Abdellatif
Correspondance entre diagrammes
de classes et diagrammes d’objets
1
*
0
*
Diagramme classes
Diagramme objets
1
*
1
*
1
*
1
*
1
*
1
*
1
Association
Lien
0
*
0
*
0
*
1
*
1
*
1
*
1
*
Classe
Objet
1
0
*
33
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme d’objets :

Représentation d’un objet

Diagramme d’objets : Représentation d’un objet Trois représentations possibles : Nom objet Objet nommé Exemples :
Diagramme d’objets : Représentation d’un objet Trois représentations possibles : Nom objet Objet nommé Exemples :
Diagramme d’objets : Représentation d’un objet Trois représentations possibles : Nom objet Objet nommé Exemples :
Diagramme d’objets : Représentation d’un objet Trois représentations possibles : Nom objet Objet nommé Exemples :

Trois représentations possibles :

Nom objet d’un objet Trois représentations possibles : Objet nommé Exemples : C250 Nom objet:Nom classe Objet

Objet nommé

Exemples : C250
Exemples :
C250

Nom objet:Nom classe

Nom objet:Nom classe

Objet nommé avec sa classe

C250:Modèle voiture

C250:Modèle voiture

:Nom classe

Objet anonyme

:Modèle voiture

UML : Modélisation statique

34

MCOO - LFI2

Diagramme d’objets :

Représentation détaillée d’un objet

A. Abdellatif

: Représentation détaillée d’un objet A. Abdellatif Nom objet:Nom classe Nom propriété = valeur Nom
Nom objet:Nom classe Nom propriété = valeur Nom propriété de la classe Valeur propriété pour
Nom objet:Nom classe
Nom propriété
= valeur
Nom propriété
de la classe
Valeur
propriété pour
l’objet

C250:Modèle voiture

Marque

Année

= Mercedes

= 2002

UML : Modélisation statique

35

MCOO - LFI2

Diagramme d’objets :

Représentation des liens

A. Abdellatif

d’objets : Représentation des liens A. Abdellatif Objet 1 Objet 2 Remarques : •Pas de cardinalités
d’objets : Représentation des liens A. Abdellatif Objet 1 Objet 2 Remarques : •Pas de cardinalités
d’objets : Représentation des liens A. Abdellatif Objet 1 Objet 2 Remarques : •Pas de cardinalités
d’objets : Représentation des liens A. Abdellatif Objet 1 Objet 2 Remarques : •Pas de cardinalités
Objet 1 Objet 2
Objet 1
Objet 2

Remarques :

•Pas de cardinalités

•Possibilité de nommer le lien

UML : Modélisation statique

36

MCOO - LFI2 A. Abdellatif Diagramme d’objets : Représentation des liens : exemple Diagramme de
MCOO - LFI2
A. Abdellatif
Diagramme d’objets :
Représentation des liens : exemple
Diagramme de classes :
Moteur
Vehicule
Roue
1
1
1
*
1
1
1
4
Diagramme d’objets :
Voiture
Moteur
Roue AV D
Roue AG
Roue AR D
Roue AR G
37
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme d’objets :

Représentation des liens : exemple

Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : 0 * Dirigé par
Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : 0 * Dirigé par
Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : 0 * Dirigé par
Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : 0 * Dirigé par

Diagramme de classes :

0 *

Dirigé par

Employé

0 1

Dirige

Diagramme d’objets :

Mohamed:Employé

Dirige

Ali:Employé

UML : Modélisation statique

38

MCOO - LFI2 A. Abdellatif Diagramme d’objets : Objets multiples Lorsqu’un objet est lié à
MCOO - LFI2
A. Abdellatif
Diagramme d’objets :
Objets multiples
Lorsqu’un objet est lié à plusieurs autres
objets, on peut :
Représenter explicitement tous ces objets :
Objet B1
Objet A
Objet B2
Objet B3
Représenter ces objets par un objet multiple:
Objet A
:Classe C
39
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme d’objets :

Objets multiples : exemple

Diagramme d’objets : Objets multiples : exemple Diagramme de classes : 0 * Dirigé par Employé
Diagramme d’objets : Objets multiples : exemple Diagramme de classes : 0 * Dirigé par Employé
Diagramme d’objets : Objets multiples : exemple Diagramme de classes : 0 * Dirigé par Employé
Diagramme d’objets : Objets multiples : exemple Diagramme de classes : 0 * Dirigé par Employé

Diagramme de classes :

0 *

Dirigé par

Employé

0 1

Dirige

Diagramme d’objets :

Mohamed:Employé

:Employé

Dirige

UML : Modélisation statique

40

MCOO - LFI2 A. Abdellatif Diagramme d’objets : Objets composites Un objet composite est une
MCOO - LFI2
A. Abdellatif
Diagramme d’objets :
Objets composites
Un objet composite est une instance
d’une classe ayant une association de
composition.
Classe A
:Classe A
0 1
1:Classe B
2:Classe B
3:Classe B
0 *
Classe B
41
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme d’objets :

Objets composites : exemple

Diagramme d’objets : Objets composites : exemple Fenetre 1 1 1 2 1 1 Barre défilement
Diagramme d’objets : Objets composites : exemple Fenetre 1 1 1 2 1 1 Barre défilement
Diagramme d’objets : Objets composites : exemple Fenetre 1 1 1 2 1 1 Barre défilement
Diagramme d’objets : Objets composites : exemple Fenetre 1 1 1 2 1 1 Barre défilement
Fenetre 1 1 1 2 1 1 Barre défilement Zone travail Palette d'outils Diagramm e
Fenetre
1
1
1
2
1
1
Barre défilement
Zone
travail
Palette d'outils
Diagramm e
de classe s

Diagramm e

D’objets

:Fenetre

1:Barre défilement

2:Barre défilement

:Zone travail

:Palette d'outils

UML : Modélisation statique

42

Diagramme de composants

Dia g ramme de com p osants
Dia g ramme de com p osants
Dia g ramme de com p osants
Dia g ramme de com p osants

MCOO - LFI2

Diagramme de composants :

Présentation

A. Abdellatif

- LFI2 Diagramme de composants : Présentation A. Abdellatif Un diagramme de composant décrit la fa
- LFI2 Diagramme de composants : Présentation A. Abdellatif Un diagramme de composant décrit la fa
- LFI2 Diagramme de composants : Présentation A. Abdellatif Un diagramme de composant décrit la fa
- LFI2 Diagramme de composants : Présentation A. Abdellatif Un diagramme de composant décrit la fa

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évelo

eurs)

pp

.

UML : Modélisation statique

44

MCOO - LFI2

A. Abdellatif

 

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 d’un logiciel.

 

Dépendance

entre

composants

:

Relation

de

dépendance entre deux ou plusieurs composants.

Programme principal : Constitue le point d’entrée dans une application.

Sous-programme

:

Procédure

ou

fonction

ne

contenant aucune classe. Sous-système : Regroupement d’un ensemble de composants.

UML : Modélisation statique

45

MCOO - LFI2

A. Abdellatif

 

Diagramme de composants :

Les composants

Diagramme de composants : Les composants Les composants représentent toute sortes d’éléments physiques permettant
Diagramme de composants : Les composants Les composants représentent toute sortes d’éléments physiques permettant
Diagramme de composants : Les composants Les composants représentent toute sortes d’éléments physiques permettant
Diagramme de composants : Les composants Les composants représentent toute sortes d’éléments physiques permettant

Les composants représentent toute sortes d’éléments physiques permettant la réalisation d’un logiciel. Un composant est appelé aussi module. Un composant se présente sous forme de fichier. Dans l’approche objet, chaque classe constitue un composant. Chaque classe (composant) est représentée par deux éléments : une spécification et un corps.

UML : Modélisation statique

46

MCOO - LFI2 A. Abdellatif Diagramme de composants : Les composants: représentation Trois représentations possibles
MCOO - LFI2
A. Abdellatif
Diagramme de composants :
Les composants: représentation
Trois représentations possibles :
Composant A
<<Composant>>
Composant A
xx
Composant A
47
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif

Diagramme de composants :

Les composants: Exemple

Diagramme de composants : Les composants: Exemple Vérificateur d'orthographe <<Composant>>
Diagramme de composants : Les composants: Exemple Vérificateur d'orthographe <<Composant>>
Diagramme de composants : Les composants: Exemple Vérificateur d'orthographe <<Composant>>
Diagramme de composants : Les composants: Exemple Vérificateur d'orthographe <<Composant>>
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe
Vérificateur d'orthographe

Vérificateur d'orthographe

Vérificateur d'orthographe
Vérificateur d'orthographe

<<Composant>>

Vérificateur

d’orthographe

xx Vérificateur d’orthographe
xx
Vérificateur
d’orthographe

UML : Modélisation statique

48

MCOO - LFI2

A. Abdellatif

Diagramme de composants :

 

Dépendance entre composants

Dans un diagramme de composants, la relation de pendance est utilisée pour indiquer qu’un 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.

UML : Modélisation statique

49

MCOO - LFI2

A. Abdellatif

Diagramme de composants :

Dépendance: représentation

Diagramme de composants : Dépendance: représentation Composant B Composant A Exemple : Editeur texte Vérificateur
Diagramme de composants : Dépendance: représentation Composant B Composant A Exemple : Editeur texte Vérificateur
Diagramme de composants : Dépendance: représentation Composant B Composant A Exemple : Editeur texte Vérificateur
Diagramme de composants : Dépendance: représentation Composant B Composant A Exemple : Editeur texte Vérificateur
Composant B Composant A
Composant B
Composant A
Exemple : Editeur texte Vérificateur d'orthographe Vérificateur grammaire
Exemple :
Editeur texte
Vérificateur d'orthographe
Vérificateur grammaire

UML : Modélisation statique

50

MCOO - LFI2 A. Abdellatif Diagramme de composants : Programme principal Chaque application a un
MCOO - LFI2
A. Abdellatif
Diagramme de composants :
Programme principal
Chaque application a un point d’entrée
appelé programme principal (main).
Main
51
UML : Modélisation statique
MCOO - LFI2
A. Abdellatif
Diagramme de composants :
Les sous-programmes
Les sous-programmes regroupent les
procédures et les fonctions qui
n’appartiennent à aucune classe.
F1
52
UML : Modélisation statique

MCOO - LFI2

A. Abdellatif

Diagramme de composants :

Les sous-systèmes

A. Abdellatif Diagramme de composants : Les sous-systèmes Dans ensemble de composants peuvent être regroupés dans
A. Abdellatif Diagramme de composants : Les sous-systèmes Dans ensemble de composants peuvent être regroupés dans
A. Abdellatif Diagramme de composants : Les sous-systèmes Dans ensemble de composants peuvent être regroupés dans
A. Abdellatif Diagramme de composants : Les sous-systèmes Dans ensemble de composants peuvent être regroupés dans

Dans

ensemble de composants peuvent être regroupés dans un sous-système. Constitue la notion de bibliothèque.

Utilise le formalisme de paquetage.

un

le cas de systèmes complexes,

Sous-système 1 Composant A Composant B
Sous-système 1
Composant A
Composant B

UML : Modélisation statique

53

Diagramme de déploiement

Dia g ramme de dé p loiement
Dia g ramme de dé p loiement
Dia g ramme de dé p loiement
Dia g ramme de dé p loiement

MCOO - LFI2

Diagramme de déploiement :

Présentation

A. Abdellatif

LFI2 Diagramme de déploiement : Présentation A. Abdellatif Représente la structure physique du syst è me

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

UML : Modélisation statique

55

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Concepts de base

A. Abdellatif Diagramme de déploiement : Concepts de base Le diagramme de déploiement se base sur
A. Abdellatif Diagramme de déploiement : Concepts de base Le diagramme de déploiement se base sur
A. Abdellatif Diagramme de déploiement : Concepts de base Le diagramme de déploiement se base sur
A. Abdellatif Diagramme de déploiement : Concepts de base Le diagramme de déploiement se base sur

Le diagramme de déploiement se base sur les concepts suivants :

Noeud : Description d’un dispositif matériel. Composant : Composante logicielle. Association de noeud : Relation entre deux noeuds. Instance de noeud : C’est une occurrence d’un dispositif matériel.

UML : Modélisation statique

56

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

 

Les noeuds

 

Chaque

dispositif

matériel

est

représenté par un noeud. Un nœud est décrit par :

Un nom (obligatoire)

 

Un

stéréotype

(serveur,

client,

imprimante, routeur, …)

Une adresse réseau Une cardinalité

 

UML : Modélisation statique

57

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les nœuds : représentation

Diagramme de déploiement : Les nœuds : représentation <<Serveur de données>> SD 190.190.10.10 1 Type
Diagramme de déploiement : Les nœuds : représentation <<Serveur de données>> SD 190.190.10.10 1 Type
Diagramme de déploiement : Les nœuds : représentation <<Serveur de données>> SD 190.190.10.10 1 Type
Diagramme de déploiement : Les nœuds : représentation <<Serveur de données>> SD 190.190.10.10 1 Type
<<Serveur de données>> SD 190.190.10.10
<<Serveur de données>>
SD
190.190.10.10

1

Type de dispositif
Type de dispositif
Nom du noeud
Nom du noeud
Adresse réseau Cardinalité
Adresse réseau
Cardinalité

UML : Modélisation statique

58

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

 

Les composants

Dans chaque nœud, on peut indiquer les composants logiciels qui vont y être installés.

On utilise le même formalisme celui du diagramme de composants.

que

UML : Modélisation statique

59

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les composants: représentation

Diagramme de déploiement : Les composants: représentation <<Serveur de données>> SD 190.190.10.10
Diagramme de déploiement : Les composants: représentation <<Serveur de données>> SD 190.190.10.10
Diagramme de déploiement : Les composants: représentation <<Serveur de données>> SD 190.190.10.10
Diagramme de déploiement : Les composants: représentation <<Serveur de données>> SD 190.190.10.10
<<Serveur de données>> SD 190.190.10.10 SGBD Oracle 1
<<Serveur de données>>
SD
190.190.10.10
SGBD Oracle
1

UML : Modélisation statique

60

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les associations

A. Abdellatif Diagramme de déploiement : Les associations Les nœuds assoc iati ons. sont inter reliés

Les

nœuds

associations.

sont

inter

reliés

par

des

nœuds

représente l’existence d’un support de communication entre eux. Pour chaque association, on peut préciser :

Chaque

association

entre

deux

Le nom Le rôle de chaque côté La cardinalité

UML : Modélisation statique

61

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les associations:représentation

Diagramme de déploiement : Les associations:représentation Noeud 1 Noeud 2 1 1 Rôle 1 Nom association
Diagramme de déploiement : Les associations:représentation Noeud 1 Noeud 2 1 1 Rôle 1 Nom association
Diagramme de déploiement : Les associations:représentation Noeud 1 Noeud 2 1 1 Rôle 1 Nom association
Diagramme de déploiement : Les associations:représentation Noeud 1 Noeud 2 1 1 Rôle 1 Nom association
Noeud 1
Noeud 1
Noeud 2
Noeud 2

1

1

Rôle 1

Nom association

1

*

Rôle 2

UML : Modélisation statique

62

MCOO - LFI2 A. Abdellatif Diagramme de déploiement : Les associations:exemple OAS IIS Serveur de

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les associations:exemple

Diagramme de déploiement : Les associations:exemple OAS IIS Serveur de données 1 3 TCP-IP Serveur
OAS IIS Serveur de données 1 3 TCP-IP Serveur Applications 1 1 SGBD Oracle CRM
OAS
IIS
Serveur de données
1
3
TCP-IP
Serveur Applications
1
1
SGBD Oracle
CRM
1
1
Internet
0 *
USB
Imprimante
Client
Navigateur

UML : Modélisation statique

63

Diagramme de déploiement :

Instances de noeud

Diagramme de déploiement : Instances de noeud Dans un diagramme de déploiement, on peut repr é
Diagramme de déploiement : Instances de noeud Dans un diagramme de déploiement, on peut repr é
Diagramme de déploiement : Instances de noeud Dans un diagramme de déploiement, on peut repr é
Diagramme de déploiement : Instances de noeud Dans un diagramme de déploiement, on peut repr é

Dans un diagramme de déploiement, on peut représenter les instances des nœuds.

Cette possibilité est utilisée surtout pour représenter de façon exhaustive des parties du diagramme de déploiement. Les instances de nœuds se distinguent des

t

d

l

e

f

a

it

l

eurs

nœu s

soulignés.

par

que

noms

son

UML : Modélisation statique

64

MCOO - LFI2

A. Abdellatif

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les associations:représentation

Diagramme de déploiement : Les associations:représentation Instance de nœud UML : Modélisation statique 6 5
Instance de nœud
Instance de nœud

UML : Modélisation statique

65

MCOO - LFI2

A. Abdellatif

Diagramme de déploiement :

Les associations:exemple

Diagramme de déploiement : Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur
Diagramme de déploiement : Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur
Diagramme de déploiement : Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur
Diagramme de déploiement : Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur
Serveur app 1 Serveur app 2 Serveur app 3
Serveur app 1
Serveur app 2
Serveur app 3
Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur de données UML :
Serveur de données
Serveur de données
Les associations:exemple Serveur app 1 Serveur app 2 Serveur app 3 Serveur de données UML :

UML : Modélisation statique

66

MCOO - LFI2

Synthèse

A. Abdellatif

MCOO - LFI2 Synthèse A. Abdellatif Utiliser les diagrammes de classes pour décrire des composantes structurelles
MCOO - LFI2 Synthèse A. Abdellatif Utiliser les diagrammes de classes pour décrire des composantes structurelles
MCOO - LFI2 Synthèse A. Abdellatif Utiliser les diagrammes de classes pour décrire des composantes structurelles
MCOO - LFI2 Synthèse A. Abdellatif Utiliser les diagrammes de classes pour décrire des composantes structurelles

Utiliser les diagrammes de classes pour décrire des composantes structurelles d’un SI. Utiliser les diagrammes d’objets pour illustrer et tester les diagrammes de classes. Utiliser les diagrammes de composants pour montrer la façon selon laquelle le logiciel sera découpé en composantes. Utiliser les diagrammes de déploiement pour envisager les différentes façons selon lesquelles le logiciel peut être exploité.

UML : Modélisation statique

67