SlideShare une entreprise Scribd logo
1
Génie logiciel et méthodes de
conception orientées objetp j
UML
Modélisation statique
A. ABDELLATIF
abdelaziz.abdellatif@fst.rnu.tn
2012-2013
GL & MCOO A. Abdellatif
Sommaire
Introduction
Diagramme de classes
Diagramme d’objets
Diagramme de composants
Diagramme de déploiement
UML : Modélisation statique 2
Synthèse
2
GL & MCOO A. Abdellatif
Introduction
La modélisation statique d’un système
consiste à décrire les composantes de ceconsiste à décrire les composantes de ce
dernier sans tenir compte de leur évolution
dans le temps.
Elle se fait à l’aide des diagrammes
suivants :
Diagramme de classes
Diagramme d’objets
Diag amme de composants
UML : Modélisation statique 3
Diagramme de composants
Diagramme de déploiement
Diagramme de classesg
3
GL & MCOO A. Abdellatif
Diagramme de classes :
Présentation
Représente les classes constituant le
système et les associations entre ellessystè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.
d é é l b d d é
UML : Modélisation statique 5
Permet de générer la base de données et
les classes utilisées dans la programmation
des applications.
GL & MCOO A. Abdellatif
Diagramme de classes :
Concepts de base
Le diagramme de classes se base sur les
concepts suivants :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.
Propriété (attribut) : élément permettant de
décrire une classe ou une association.
é é é é
UML : Modélisation statique 6
Méthode : Opération réalisée par les objets d’une
classe.
Paquetage : Décomposition du diagramme de
classes
4
GL & MCOO A. Abdellatif
Diagramme de classes :
Représentation d’une classe
Nom classe
Attributs
Personne
Matricule
Nom
Prenom
Date naissance
UML : Modélisation statique 7
Méthodes
Date_naissance
Age ()
Forme minimale
GL & MCOO A. Abdellatif
Diagramme de classes :
Représentation détaillée d’une classe
Personne
+
+
+
-
#
Matricule
Nom
Prenom
Date_naissance
Permanant
: int
: char
: char
: date
: boolean = vrai
+ Age () : intVisibilité :
+ Public
Type de
données
Valeur
initiale
UML : Modélisation statique 8
+ Public
- Privé
# Protégé
Type de
valeur de
retour
5
GL & MCOO A. Abdellatif
Diagramme de classes :
Représentation d’une association
Classe A Classe BClasse A Classe B
Avec possibilité de préciser :
•Un nom d’association
UML : Modélisation statique 9
•Une décoration
•Le rôle de chaque classe
•Des cardinalités
GL & MCOO A. Abdellatif
Diagramme de classes :
Représentation d’une association
Tra va ille r d a n s
E m p lo y é E n tre p ris e
Tra va ille r d a n s >
E m p lo y é E n tre p ris e
Travaille dansE m ploy é E ntrepris e
Nom d’association
Décoration
UML : Modélisation statique 10
Travaille dans
Fait travailler
E m ploy é E ntrepris e
Rôle
6
GL & MCOO A. Abdellatif
Cardinalités possibles :
Diagramme de classes :
Cardinalités (multiplicité)
Employé
1 Un et un seul
1..1 Un et un seul
0..1 Zéro ou un (optionnel)
m..n De m à n
0..* Zéro ou plusieurs
0..*
1..1
UML : Modélisation statique 11
p
* Zéro ou plusieurs
1..* Un à plusieurs
Entreprise
GL & MCOO A. Abdellatif
Diagramme de classes :
Navigabilité d’association
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.
0..* 1..*
Commande Article
UML : Modélisation statique 12
Signification :
Une occurrence de Commande stocke une liste des Articles.
Une occurrence d’Article ne stocke pas une liste des
commandes.
7
GL & MCOO 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.
0..* 1..*
Commande Article
UML : Modélisation statique 13
LigcoCommande
+ quantite : int
GL & MCOO A. Abdellatif
Diagramme de classes :
Les contraintes
Lorsque les cardinalités ne sont pas
ffi t t d i l è l dsuffisantes pour traduire les règles de
gestion, un digramme de classe peut
être complété par des contraintes.
{contrainte}
UML : Modélisation statique 14
Une contrainte concerne une ou
plusieurs associations.
8
GL & MCOO A. Abdellatif
Diagramme de classes :
Les contraintes
Toute règle peut être représentée sous
f d iforme 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
UML : Modélisation statique 15
est incluse dans une autre.
{Ou exclusif} : Signifie la participation
exclusive d’un objet à l’une ou l’autre des
associations.
GL & MCOO A. Abdellatif
Diagramme de classes :
Les contraintes : exemples
1..1 0 *
Livre
Chapitre
1..1 0..
{Ordonnée}
0..1
0..*
1..1
1..*
Inscrit dans
Section Etudiant
{Sous-ensemble}
1..1
0 *
UML : Modélisation statique 16
Représente
1..1
Se déplace 0..*
Reçoit
0..
Equipe Match
{Ou exclusif}
9
GL & MCOO A. Abdellatif
Diagramme de classes :
Association d’agrégation
Une agrégation est une association
qui représente une relation d’inclusion
structurelle ou comportementale d’un
élément dans un ensemble.
0..1
Entreprise Véhicule
Agrégat Agrégé
UML : Modélisation statique 17
0..*
Entreprise
GL & MCOO A. Abdellatif
Diagramme de classes :
Association de composition
Une composition est une association
qui décrit une contenance structurelle
entre instances. Composite
Composants 1..1
1..1
1..1
Vehicule
UML : Modélisation statique 18
Remarque :
La destruction de l’objet
composite entraîne la
destruction des objets
composants
4..41..11..1
Moteur BoiteVitesse Roue
10
GL & MCOO A. Abdellatif
Diagramme de classes :
Association de qualification
Permet de partitionner les objets
d’ l t à t id’une classe par rapport à certaines
propriétés de l’autre classe.
Class_1 Class_2
Clé
UML : Modélisation statique 19
0..*
Répertoire Fichier
Nom_repertoire
GL & MCOO A. Abdellatif
Diagramme de classes :
Association n-aire
Association reliant plus que deux
classes.
A B
UML : Modélisation statique 20
Remarque :
Les associations n-aires
sont généralement
remplacées par une
classe.
Class_assoc
C
11
GL & MCOO A. Abdellatif
Diagramme de classes :
Association n-aire (Exemple)
Section
Module
0 *0 *
1..1
0..*
1..1
0..*
Section
Module
Emploi du temps
+
+
H début
H fin
: int
: int
Replacé par
Salle
Jour
Emploi du temps
+ H début : int
UML : Modélisation statique 21
1..1
0..
1..1
0..
Salle
Jour
+ H fin : int
GL & MCOO A. Abdellatif
Diagramme de classes :
Association d’héritage
Représente une relation d’héritage
entre super classes et sous classes.
A Personne
+
+
+
+
CIN
Nom
Prénom
Date naissance
+ Age () : int
UML : Modélisation statique 22
BC
Pilote
+ Date embauche
Passager
+ Numero billet
12
GL & MCOO A. Abdellatif
Diagramme de classes :
Association d’héritage multiple
Moyen transport
Terrestre Aérien Maritime
UML : Modélisation statique 23
Voiture Avion BateauHydravion
GL & MCOO A. Abdellatif
Diagramme de classes :
Association d’héritage exclusif
Client
{Exclusif}
UML : Modélisation statique 24
Particulier Exclusif
13
GL & MCOO A. Abdellatif
Diagramme de classes :
Association d’héritage :règles
Une association d’héritage ne peut pas
être :
Réflexive :
Symétrique :
Class_1A
B A
UML : Modélisation statique 25
Transitive :
BA C
GL & MCOO A. Abdellatif
Exemple de diagramme de classes:
Système de réservation de vols
Source :
UML par la pratique :
études de cas et
exercices corrigés
Pascal Roques
Eyrolles
UML : Modélisation statique 26
y
14
GL & MCOO A. Abdellatif
Exemple de diagramme de classes:
Système de réservation de vols
Énoncé :
1. Des compagnies aériennes proposent différents vols.p g p p
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
UML : Modélisation statique 27
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.
GL & MCOO A. Abdellatif
Exemple de diagramme de classes:
Système de réservation de vols
CompagnieAerienne
nomCompagnie
Client
codeClient
nomClient
infoescale0..*
escale
0..*
relier21..1
arrivee
0..*
relier 11..1
depart
0..*
<concerner
1..1 0..*
effectuer
1..1
0..*
Propose
1..*
1..*
Vol
numeroVol
dateDepart
heureDeprt
dateArrivee
heureArrivee
ouvrirReservation ()
fermerReservation ()
prenomClient
adresseClient
numTel
numFax
Reservation
dateReservation
numeroReservation
confirmer ()
annuler ()
Aeroprt
nomAeroprt
UML : Modélisation statique 28
dessert
0..*
0..*
concerne
0..*
1..1
Passager
nomPassager
prenomPassager
Ville
nomVille
InfosEscale
heureArrivee
heureDepart
{ordonnée}
15
GL & MCOO A. Abdellatif
Exemple de diagramme de classes:
Système de réservation de vols
CompagnieAerienne
nomCompagnie
Client
codeClient
nomClient
infoescale0..*
escale
0..*
relier21..1
arrivee
0..*
relier 11..1
depart
0..*
<concerner
1..1 0..*
effectuer
1..1
0..*
Propose
1..*
1..*
Vol
numeroVol
dateDepart
heureDeprt
dateArrivee
heureArrivee
ouvrirReservation ()
fermerReservation ()
prenomClient
adresseClient
numTel
numFax
Reservation
dateReservation
numeroReservation
confirmer ()
annuler ()
Aeroprt
nomAeroprt
ns
UML : Modélisation statique 29
dessert
0..*
0..*
concerne
0..*
1..1
Passager
nomPassager
prenomPassager
Ville
nomVille
InfosEscale
heureArrivee
heureDepart
{ordonnée}
Vols
Réservation
Diagramme d’objetsg j
16
GL & MCOO A. Abdellatif
Diagramme d’objets :
Présentation
C’est un diagramme de classes appliqué
è à l bjconcrè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
UML : Modélisation statique 31
diagramme de classes à des cas
particuliers.
GL & MCOO A. Abdellatif
Diagramme d’objets :
Concepts de 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).
UML : Modélisation statique 32
Valeur : Valeur d’une propriété relative à un
objet.
17
GL & MCOO A. Abdellatif
Correspondance entre diagrammes
de classes et diagrammes d’objets
1..* 0..*
1
0..*
0..*
1..*
1..*1..*
1..*
0..*
1 *
1..*1..*
Diagramme classes Diagramme objets
LienAssociation
UML : Modélisation statique 33
1 0..*
1..*
1..*
1..*
1..*
ObjetClasse
GL & MCOO A. Abdellatif
Diagramme d’objets :
Représentation d’un objet
N bj t
Trois représentations possibles :
Nom objet Nom objet:Nom classe :Nom classe
Exemples :
Objet nommé
Objet nommé avec sa classe Objet anonyme
UML : Modélisation statique 34
C250 C250:Modèle voiture :Modèle voiture
18
GL & MCOO A. Abdellatif
Diagramme d’objets :
Représentation détaillée d’un objet
Nom objet:Nom classe
Nom propriété = valeur
Nom propriété
de la classe
Valeur
propriété pour
l’objet
UML : Modélisation statique 35
C250:Modèle voiture
Marque
Année
= Mercedes
= 2002
GL & MCOO A. Abdellatif
Diagramme d’objets :
Représentation des liens
Objet 1 Objet 2
Remarques :
•Pas de cardinalités
j j
UML : Modélisation statique 36
•Possibilité de nommer le lien
19
GL & MCOO A. Abdellatif
Diagramme d’objets :
Représentation des liens : exemple
Diagramme de classes :
Diagramme d’objets :
1..*
1..4
1..1
1..1
Vehicule RoueMoteur
Voiture Moteur
UML : Modélisation statique 37
Roue AV D Roue AG Roue AR D Roue AR G
GL & MCOO A. Abdellatif
Diagramme d’objets :
Représentation des liens : exemple
Diagramme de classes :
0..1
Dirige
0..*
Dirigé parEmployé
UML : Modélisation statique 38
Diagramme d’objets :
DirigeMohamed:Employé Ali:Employé
20
GL & MCOO A. Abdellatif
Diagramme d’objets :
Objets multiples
Lorsqu’un objet est lié à plusieurs autres
objets, on peut :
Représenter explicitement tous ces objets :
Objet A
Objet B1
Objet B2
Objet B3
UML : Modélisation statique 39
Représenter ces objets par un objet multiple:
Objet A
:Classe C
GL & MCOO A. Abdellatif
Diagramme d’objets :
Objets multiples : exemple
Diagramme de classes :
0..1
Dirige
0..*
Dirigé parEmployé
UML : Modélisation statique 40
Diagramme d’objets :
DirigeMohamed:Employé
:Employé
21
GL & MCOO A. Abdellatif
Diagramme d’objets :
Objets composites
Un objet composite est une instance
d’une classe ayant une association de
composition.
0..1
Classe A
:Classe A
1:Classe B 2:Classe B 3:Classe B
UML : Modélisation statique 41
0..*
Classe B
1:Classe B 2:Classe B 3:Classe B
GL & MCOO A. Abdellatif
Diagramme d’objets :
Objets composites : exemple
Fenetre
me
s
1
1
1
2 1
1
Zone travailBarre défilement Palette d'outils
F t
Diagramm
declasses
e
UML : Modélisation statique 42
:Fenetre
:Palette d'outils1:Barre défilement :Zone travail2:Barre défilement
Diagramme
D’objets
22
Diagramme de composantsg p
GL & MCOO A. Abdellatif
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)
UML : Modélisation statique 44
(développeurs).
23
GL & MCOO A. Abdellatif
Diagramme de composants :
Concepts de base
Le diagramme de composants se base sur les
concepts suivants :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.
UML : Modélisation statique 45
Sous-programme : Procédure ou fonction ne
contenant aucune classe.
Sous-système : Regroupement d’un ensemble de
composants.
GL & MCOO A. Abdellatif
Diagramme de composants :
Les composants
Les composants représentent toute sortes d’éléments
physiques permettant la réalisation d’un logicielphysiques 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
éléments : une spécification et un corps.
24
GL & MCOO A. Abdellatif
Diagramme de composants :
Les composants: représentation
Trois représentations possibles :
Composant A
<<Composant>>
Composant A
UML : Modélisation statique 47
Composant A
xx
GL & MCOO A. Abdellatif
Diagramme de composants :
Les composants: Exemple
<<Composant>>
Vérificateur
d’orthographe
Vérificateur d'orthographe
UML : Modélisation statique 48
Vérificateur
d’orthographe
xx
25
GL & MCOO A. Abdellatif
Diagramme de composants :
Dépendance entre composants
Dans un diagramme de composants, la
l i d dé d ili érelation de dé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
composants.
GL & MCOO A. Abdellatif
Diagramme de composants :
Dépendance: représentation
Composant A Composant B
Exemple :
Editeur texte
UML : Modélisation statique 50
Vérificateur d'orthographe Vérificateur grammaire
26
GL & MCOO A. Abdellatif
Diagramme de composants :
Programme principal
Chaque application a un point d’entrée
appelé programme principal (main).
Main
UML : Modélisation statique 51
GL & MCOO A. Abdellatif
Diagramme de composants :
Les sous-programmes
Les sous-programmes regroupent les
procédures et les fonctions qui
n’appartiennent à aucune classe.
F1
UML : Modélisation statique 52
27
GL & MCOO A. Abdellatif
Diagramme de composants :
Les sous-systèmes
Dans le cas de systèmes complexes, un
ensemble de composants peuvent êtreensemble de composants peuvent être
regroupés dans un sous-système.
Constitue la notion de bibliothèque.
Utilise le formalisme de paquetage.
UML : Modélisation statique 53
Sous-système 1
Composant A Composant B
Diagramme de déploiementg p
28
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Présentation
Représente la structure physique du
è i f i l é i i dsystè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
UML : Modélisation statique 55
Architecture centralisée
Architecture client/serveur à deux niveaux
Architecture client/serveur à trois niveaux
Architecture client/serveur à n niveaux
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Concepts de base
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.
UML : Modélisation statique 56
Instance de noeud : C’est une occurrence
d’un dispositif matériel.
29
GL & MCOO 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, …)
UML : Modélisation statique 57
p , , )
Une adresse réseau
Une cardinalité
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les nœuds : représentation
<<Serveur de données>>
SD
190.190.10.10
Nom du noeud
Type de dispositif
UML : Modélisation statique 58
Adresse réseau
1
Cardinalité
30
GL & MCOO 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 que
celui du diagramme de composants.
UML : Modélisation statique 59
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les composants: représentation
<<Serveur de données>>
SD
190.190.10.10
UML : Modélisation statique 60
1
SGBD Oracle
31
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les associations
Les nœuds sont inter reliés par des
i iassociations.
Chaque association entre deux nœuds
représente l’existence d’un support de
communication entre eux.
Pour chaque association, on peut préciser :
Le nom
UML : Modélisation statique 61
Le nom
Le rôle de chaque côté
La cardinalité
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les associations:représentation
Nom association
1..1
Rôle 1
1..*
Rôle 2
Noeud 1 Noeud 2
UML : Modélisation statique 62
32
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les associations:exemple
OAS
TCP-IP1..3
1..1
Internet
1..1
Serveur Applications
Serveur de données
SGBD Oracle
IIS
CRM
UML : Modélisation statique 63
0..*
USB
Client Imprimante
Navigateur
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Instances de noeud
Dans un diagramme de déploiement, on peut
é l i d drepré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
nœuds par le fait que leurs noms sont
UML : Modélisation statique 64
nœuds par le fait que leurs noms sont
soulignés.
33
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les associations:représentation
Instance de nœud
UML : Modélisation statique 65
GL & MCOO A. Abdellatif
Diagramme de déploiement :
Les associations:exemple
Serveur app 1
Serveur app 2 Serveur de données
UML : Modélisation statique 66
Serveur app 3
34
GL & MCOO A. Abdellatif
Synthèse
Utiliser les diagrammes de classes pour
décrire des composantes structurelles d’undé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
UML : Modélisation statique 67
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é.

Contenu connexe

Tendances

Chp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'UtilisationChp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'Utilisation
Lilia Sfaxi
 
exercices Corrigées du merise
exercices Corrigées du  meriseexercices Corrigées du  merise
exercices Corrigées du merise
Yassine Badri
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
Nassim Amine
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
Lilia Sfaxi
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
Heithem Abbes
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
AmineMouhout1
 
qcm développement informatique
qcm développement informatiqueqcm développement informatique
qcm développement informatique
beware_17
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classe
Amir Souissi
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
mouafekmazia
 
Rapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobileRapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobile
Nader Somrani
 
Présentation PFE Mastère PRO
Présentation PFE Mastère PROPrésentation PFE Mastère PRO
Présentation PFE Mastère PRO
ahmedmiha
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
Lilia Sfaxi
 
Rapport d'une application mobile de recommendation de livres
Rapport d'une application mobile de recommendation de livresRapport d'une application mobile de recommendation de livres
Rapport d'une application mobile de recommendation de livres
kaies Labiedh
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMajid CHADAD
 
Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5
YounessLaaouane
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
Amir Souissi
 
Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique
Georges Amichia
 

Tendances (20)

Chp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'UtilisationChp2 - Diagramme des Cas d'Utilisation
Chp2 - Diagramme des Cas d'Utilisation
 
exercices Corrigées du merise
exercices Corrigées du  meriseexercices Corrigées du  merise
exercices Corrigées du merise
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
 
qcm développement informatique
qcm développement informatiqueqcm développement informatique
qcm développement informatique
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classe
 
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
Rapport Projet De Fin D'étude de Conception et développement d’une applicatio...
 
Rapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobileRapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobile
 
Présentation PFE Mastère PRO
Présentation PFE Mastère PROPrésentation PFE Mastère PRO
Présentation PFE Mastère PRO
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Rapport d'une application mobile de recommendation de livres
Rapport d'une application mobile de recommendation de livresRapport d'une application mobile de recommendation de livres
Rapport d'une application mobile de recommendation de livres
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigés
 
Uml
UmlUml
Uml
 
Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Modele rapport pfe esprit
Modele rapport pfe  espritModele rapport pfe  esprit
Modele rapport pfe esprit
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique Etude d'une application de gestion d'une bibliothèque numérique
Etude d'une application de gestion d'une bibliothèque numérique
 

En vedette

UML 2
UML 2UML 2
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
Amir Souissi
 
Cours d'Introduction à Uml
Cours d'Introduction à UmlCours d'Introduction à Uml
Cours d'Introduction à Uml
Christophe Vaudry
 
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
megaplanet20
 
Diagrammes de classes
Diagrammes de classesDiagrammes de classes
Diagrammes de classes
Mireille Blay-Fornarino
 
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
Michel Héon PhD
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite completChahrawoods Dmz
 

En vedette (8)

UML 2
UML 2UML 2
UML 2
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
Cours d'Introduction à Uml
Cours d'Introduction à UmlCours d'Introduction à Uml
Cours d'Introduction à Uml
 
UML4
UML4UML4
UML4
 
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
Uml : Diagrammes de Cas dutilisation -- Modele preliminaire -- 23
 
Diagrammes de classes
Diagrammes de classesDiagrammes de classes
Diagrammes de classes
 
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
G-OWL : Vers un langage de modélisation graphique, polymorphique et typé pour...
 
Cours algorithmique et complexite complet
Cours algorithmique et complexite completCours algorithmique et complexite complet
Cours algorithmique et complexite complet
 

Similaire à UML Diagrammes Statiques

Contraintes uml
Contraintes umlContraintes uml
Contraintes uml
meriem sari
 
Chap7 developpement modele statique
Chap7 developpement modele statiqueChap7 developpement modele statique
Chap7 developpement modele statiquevangogue
 
srep_cours_05.pdf
srep_cours_05.pdfsrep_cours_05.pdf
srep_cours_05.pdf
SamirAwad14
 
Splpv2 annexes-c
Splpv2 annexes-cSplpv2 annexes-c
Splpv2 annexes-cxerty
 
Uml: Diagrammes de classes -- Concepts De Base 41
Uml: Diagrammes de classes -- Concepts De Base 41Uml: Diagrammes de classes -- Concepts De Base 41
Uml: Diagrammes de classes -- Concepts De Base 41
megaplanet20
 
Modélisation avec UML
Modélisation avec UMLModélisation avec UML
Modélisation avec UML
ECAM Brussels Engineering School
 
UMl_language_de modélisation_eninformatique.ppt
UMl_language_de modélisation_eninformatique.pptUMl_language_de modélisation_eninformatique.ppt
UMl_language_de modélisation_eninformatique.ppt
ATOMI5
 
Igl cours 3 - introduction à uml
Igl   cours 3 - introduction à umlIgl   cours 3 - introduction à uml
Igl cours 3 - introduction à uml
Mohammed Amine Mostefai
 
UML.pptx
UML.pptxUML.pptx
Introduction à Sysml
Introduction à SysmlIntroduction à Sysml
Introduction à Sysml
Yassine SIDKI
 
Diagramme de Classe
Diagramme de ClasseDiagramme de Classe
Diagramme de Classe
abdoMarocco
 
generation_code.pdf
generation_code.pdfgeneration_code.pdf
generation_code.pdf
elmustafaayoub
 
Uml: Diagrammes de classes -- Concepts avances --- 27
Uml: Diagrammes de classes -- Concepts avances --- 27Uml: Diagrammes de classes -- Concepts avances --- 27
Uml: Diagrammes de classes -- Concepts avances --- 27
megaplanet20
 
cours2diagStatiq.pdf
cours2diagStatiq.pdfcours2diagStatiq.pdf
cours2diagStatiq.pdf
torrenttorrent
 
dokumen.tips_uml-diagramme-de-classes.pptx
dokumen.tips_uml-diagramme-de-classes.pptxdokumen.tips_uml-diagramme-de-classes.pptx
dokumen.tips_uml-diagramme-de-classes.pptx
viyipim509
 
Présentation UML.ppt
Présentation UML.pptPrésentation UML.ppt
Présentation UML.ppt
NajiHita1
 
Cours Coosi
Cours CoosiCours Coosi
Cours Coosi
guest2a09ec
 
Support de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfSupport de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdf
YasushiTsubakik
 

Similaire à UML Diagrammes Statiques (20)

UML3
UML3UML3
UML3
 
UML v2
UML v2UML v2
UML v2
 
Contraintes uml
Contraintes umlContraintes uml
Contraintes uml
 
Chap7 developpement modele statique
Chap7 developpement modele statiqueChap7 developpement modele statique
Chap7 developpement modele statique
 
srep_cours_05.pdf
srep_cours_05.pdfsrep_cours_05.pdf
srep_cours_05.pdf
 
Splpv2 annexes-c
Splpv2 annexes-cSplpv2 annexes-c
Splpv2 annexes-c
 
Uml: Diagrammes de classes -- Concepts De Base 41
Uml: Diagrammes de classes -- Concepts De Base 41Uml: Diagrammes de classes -- Concepts De Base 41
Uml: Diagrammes de classes -- Concepts De Base 41
 
Modélisation avec UML
Modélisation avec UMLModélisation avec UML
Modélisation avec UML
 
UMl_language_de modélisation_eninformatique.ppt
UMl_language_de modélisation_eninformatique.pptUMl_language_de modélisation_eninformatique.ppt
UMl_language_de modélisation_eninformatique.ppt
 
Igl cours 3 - introduction à uml
Igl   cours 3 - introduction à umlIgl   cours 3 - introduction à uml
Igl cours 3 - introduction à uml
 
UML.pptx
UML.pptxUML.pptx
UML.pptx
 
Introduction à Sysml
Introduction à SysmlIntroduction à Sysml
Introduction à Sysml
 
Diagramme de Classe
Diagramme de ClasseDiagramme de Classe
Diagramme de Classe
 
generation_code.pdf
generation_code.pdfgeneration_code.pdf
generation_code.pdf
 
Uml: Diagrammes de classes -- Concepts avances --- 27
Uml: Diagrammes de classes -- Concepts avances --- 27Uml: Diagrammes de classes -- Concepts avances --- 27
Uml: Diagrammes de classes -- Concepts avances --- 27
 
cours2diagStatiq.pdf
cours2diagStatiq.pdfcours2diagStatiq.pdf
cours2diagStatiq.pdf
 
dokumen.tips_uml-diagramme-de-classes.pptx
dokumen.tips_uml-diagramme-de-classes.pptxdokumen.tips_uml-diagramme-de-classes.pptx
dokumen.tips_uml-diagramme-de-classes.pptx
 
Présentation UML.ppt
Présentation UML.pptPrésentation UML.ppt
Présentation UML.ppt
 
Cours Coosi
Cours CoosiCours Coosi
Cours Coosi
 
Support de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdfSupport de cours Conception orientée objets - partie 1.pdf
Support de cours Conception orientée objets - partie 1.pdf
 

Plus de 'Farouk' 'BEN GHARSSALLAH'

Custom PrimeFaces components
Custom PrimeFaces componentsCustom PrimeFaces components
Custom PrimeFaces components
'Farouk' 'BEN GHARSSALLAH'
 
Custom JSF components
Custom JSF componentsCustom JSF components
Custom JSF components
'Farouk' 'BEN GHARSSALLAH'
 
Business Models
Business ModelsBusiness Models
People Orientated Approaches
People Orientated ApproachesPeople Orientated Approaches
People Orientated Approaches
'Farouk' 'BEN GHARSSALLAH'
 
Leadership strategy
Leadership strategyLeadership strategy
Leadership strategy
'Farouk' 'BEN GHARSSALLAH'
 

Plus de 'Farouk' 'BEN GHARSSALLAH' (14)

Chap1 2 dw (1)
Chap1 2 dw (1)Chap1 2 dw (1)
Chap1 2 dw (1)
 
UML2
UML2UML2
UML2
 
UML1
UML1UML1
UML1
 
IPV6
IPV6IPV6
IPV6
 
Transmission de signal
Transmission de signalTransmission de signal
Transmission de signal
 
Custom PrimeFaces components
Custom PrimeFaces componentsCustom PrimeFaces components
Custom PrimeFaces components
 
Custom JSF components
Custom JSF componentsCustom JSF components
Custom JSF components
 
Hibernate
HibernateHibernate
Hibernate
 
Java Server Faces 2
Java Server Faces 2Java Server Faces 2
Java Server Faces 2
 
Business Models
Business ModelsBusiness Models
Business Models
 
People Orientated Approaches
People Orientated ApproachesPeople Orientated Approaches
People Orientated Approaches
 
Leadership strategy
Leadership strategyLeadership strategy
Leadership strategy
 
HTML
HTMLHTML
HTML
 
Css
CssCss
Css
 

UML Diagrammes Statiques

  • 1. 1 Génie logiciel et méthodes de conception orientées objetp j UML Modélisation statique A. ABDELLATIF abdelaziz.abdellatif@fst.rnu.tn 2012-2013 GL & MCOO A. Abdellatif Sommaire Introduction Diagramme de classes Diagramme d’objets Diagramme de composants Diagramme de déploiement UML : Modélisation statique 2 Synthèse
  • 2. 2 GL & MCOO A. Abdellatif Introduction La modélisation statique d’un système consiste à décrire les composantes de ceconsiste à décrire les composantes de ce dernier sans tenir compte de leur évolution dans le temps. Elle se fait à l’aide des diagrammes suivants : Diagramme de classes Diagramme d’objets Diag amme de composants UML : Modélisation statique 3 Diagramme de composants Diagramme de déploiement Diagramme de classesg
  • 3. 3 GL & MCOO A. Abdellatif Diagramme de classes : Présentation Représente les classes constituant le système et les associations entre ellessystè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. d é é l b d d é UML : Modélisation statique 5 Permet de générer la base de données et les classes utilisées dans la programmation des applications. GL & MCOO A. Abdellatif Diagramme de classes : Concepts de base Le diagramme de classes se base sur les concepts suivants :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. Propriété (attribut) : élément permettant de décrire une classe ou une association. é é é é UML : Modélisation statique 6 Méthode : Opération réalisée par les objets d’une classe. Paquetage : Décomposition du diagramme de classes
  • 4. 4 GL & MCOO A. Abdellatif Diagramme de classes : Représentation d’une classe Nom classe Attributs Personne Matricule Nom Prenom Date naissance UML : Modélisation statique 7 Méthodes Date_naissance Age () Forme minimale GL & MCOO A. Abdellatif Diagramme de classes : Représentation détaillée d’une classe Personne + + + - # Matricule Nom Prenom Date_naissance Permanant : int : char : char : date : boolean = vrai + Age () : intVisibilité : + Public Type de données Valeur initiale UML : Modélisation statique 8 + Public - Privé # Protégé Type de valeur de retour
  • 5. 5 GL & MCOO A. Abdellatif Diagramme de classes : Représentation d’une association Classe A Classe BClasse A Classe B Avec possibilité de préciser : •Un nom d’association UML : Modélisation statique 9 •Une décoration •Le rôle de chaque classe •Des cardinalités GL & MCOO A. Abdellatif Diagramme de classes : Représentation d’une association Tra va ille r d a n s E m p lo y é E n tre p ris e Tra va ille r d a n s > E m p lo y é E n tre p ris e Travaille dansE m ploy é E ntrepris e Nom d’association Décoration UML : Modélisation statique 10 Travaille dans Fait travailler E m ploy é E ntrepris e Rôle
  • 6. 6 GL & MCOO A. Abdellatif Cardinalités possibles : Diagramme de classes : Cardinalités (multiplicité) Employé 1 Un et un seul 1..1 Un et un seul 0..1 Zéro ou un (optionnel) m..n De m à n 0..* Zéro ou plusieurs 0..* 1..1 UML : Modélisation statique 11 p * Zéro ou plusieurs 1..* Un à plusieurs Entreprise GL & MCOO A. Abdellatif Diagramme de classes : Navigabilité d’association 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. 0..* 1..* Commande Article UML : Modélisation statique 12 Signification : Une occurrence de Commande stocke une liste des Articles. Une occurrence d’Article ne stocke pas une liste des commandes.
  • 7. 7 GL & MCOO 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. 0..* 1..* Commande Article UML : Modélisation statique 13 LigcoCommande + quantite : int GL & MCOO A. Abdellatif Diagramme de classes : Les contraintes Lorsque les cardinalités ne sont pas ffi t t d i l è l dsuffisantes pour traduire les règles de gestion, un digramme de classe peut être complété par des contraintes. {contrainte} UML : Modélisation statique 14 Une contrainte concerne une ou plusieurs associations.
  • 8. 8 GL & MCOO A. Abdellatif Diagramme de classes : Les contraintes Toute règle peut être représentée sous f d iforme 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 UML : Modélisation statique 15 est incluse dans une autre. {Ou exclusif} : Signifie la participation exclusive d’un objet à l’une ou l’autre des associations. GL & MCOO A. Abdellatif Diagramme de classes : Les contraintes : exemples 1..1 0 * Livre Chapitre 1..1 0.. {Ordonnée} 0..1 0..* 1..1 1..* Inscrit dans Section Etudiant {Sous-ensemble} 1..1 0 * UML : Modélisation statique 16 Représente 1..1 Se déplace 0..* Reçoit 0.. Equipe Match {Ou exclusif}
  • 9. 9 GL & MCOO A. Abdellatif Diagramme de classes : Association d’agrégation Une agrégation est une association qui représente une relation d’inclusion structurelle ou comportementale d’un élément dans un ensemble. 0..1 Entreprise Véhicule Agrégat Agrégé UML : Modélisation statique 17 0..* Entreprise GL & MCOO A. Abdellatif Diagramme de classes : Association de composition Une composition est une association qui décrit une contenance structurelle entre instances. Composite Composants 1..1 1..1 1..1 Vehicule UML : Modélisation statique 18 Remarque : La destruction de l’objet composite entraîne la destruction des objets composants 4..41..11..1 Moteur BoiteVitesse Roue
  • 10. 10 GL & MCOO A. Abdellatif Diagramme de classes : Association de qualification Permet de partitionner les objets d’ l t à t id’une classe par rapport à certaines propriétés de l’autre classe. Class_1 Class_2 Clé UML : Modélisation statique 19 0..* Répertoire Fichier Nom_repertoire GL & MCOO A. Abdellatif Diagramme de classes : Association n-aire Association reliant plus que deux classes. A B UML : Modélisation statique 20 Remarque : Les associations n-aires sont généralement remplacées par une classe. Class_assoc C
  • 11. 11 GL & MCOO A. Abdellatif Diagramme de classes : Association n-aire (Exemple) Section Module 0 *0 * 1..1 0..* 1..1 0..* Section Module Emploi du temps + + H début H fin : int : int Replacé par Salle Jour Emploi du temps + H début : int UML : Modélisation statique 21 1..1 0.. 1..1 0.. Salle Jour + H fin : int GL & MCOO A. Abdellatif Diagramme de classes : Association d’héritage Représente une relation d’héritage entre super classes et sous classes. A Personne + + + + CIN Nom Prénom Date naissance + Age () : int UML : Modélisation statique 22 BC Pilote + Date embauche Passager + Numero billet
  • 12. 12 GL & MCOO A. Abdellatif Diagramme de classes : Association d’héritage multiple Moyen transport Terrestre Aérien Maritime UML : Modélisation statique 23 Voiture Avion BateauHydravion GL & MCOO A. Abdellatif Diagramme de classes : Association d’héritage exclusif Client {Exclusif} UML : Modélisation statique 24 Particulier Exclusif
  • 13. 13 GL & MCOO A. Abdellatif Diagramme de classes : Association d’héritage :règles Une association d’héritage ne peut pas être : Réflexive : Symétrique : Class_1A B A UML : Modélisation statique 25 Transitive : BA C GL & MCOO A. Abdellatif Exemple de diagramme de classes: Système de réservation de vols Source : UML par la pratique : études de cas et exercices corrigés Pascal Roques Eyrolles UML : Modélisation statique 26 y
  • 14. 14 GL & MCOO A. Abdellatif Exemple de diagramme de classes: Système de réservation de vols Énoncé : 1. Des compagnies aériennes proposent différents vols.p g p p 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 UML : Modélisation statique 27 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. GL & MCOO A. Abdellatif Exemple de diagramme de classes: Système de réservation de vols CompagnieAerienne nomCompagnie Client codeClient nomClient infoescale0..* escale 0..* relier21..1 arrivee 0..* relier 11..1 depart 0..* <concerner 1..1 0..* effectuer 1..1 0..* Propose 1..* 1..* Vol numeroVol dateDepart heureDeprt dateArrivee heureArrivee ouvrirReservation () fermerReservation () prenomClient adresseClient numTel numFax Reservation dateReservation numeroReservation confirmer () annuler () Aeroprt nomAeroprt UML : Modélisation statique 28 dessert 0..* 0..* concerne 0..* 1..1 Passager nomPassager prenomPassager Ville nomVille InfosEscale heureArrivee heureDepart {ordonnée}
  • 15. 15 GL & MCOO A. Abdellatif Exemple de diagramme de classes: Système de réservation de vols CompagnieAerienne nomCompagnie Client codeClient nomClient infoescale0..* escale 0..* relier21..1 arrivee 0..* relier 11..1 depart 0..* <concerner 1..1 0..* effectuer 1..1 0..* Propose 1..* 1..* Vol numeroVol dateDepart heureDeprt dateArrivee heureArrivee ouvrirReservation () fermerReservation () prenomClient adresseClient numTel numFax Reservation dateReservation numeroReservation confirmer () annuler () Aeroprt nomAeroprt ns UML : Modélisation statique 29 dessert 0..* 0..* concerne 0..* 1..1 Passager nomPassager prenomPassager Ville nomVille InfosEscale heureArrivee heureDepart {ordonnée} Vols Réservation Diagramme d’objetsg j
  • 16. 16 GL & MCOO A. Abdellatif Diagramme d’objets : Présentation C’est un diagramme de classes appliqué è à l bjconcrè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 UML : Modélisation statique 31 diagramme de classes à des cas particuliers. GL & MCOO A. Abdellatif Diagramme d’objets : Concepts de 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). UML : Modélisation statique 32 Valeur : Valeur d’une propriété relative à un objet.
  • 17. 17 GL & MCOO A. Abdellatif Correspondance entre diagrammes de classes et diagrammes d’objets 1..* 0..* 1 0..* 0..* 1..* 1..*1..* 1..* 0..* 1 * 1..*1..* Diagramme classes Diagramme objets LienAssociation UML : Modélisation statique 33 1 0..* 1..* 1..* 1..* 1..* ObjetClasse GL & MCOO A. Abdellatif Diagramme d’objets : Représentation d’un objet N bj t Trois représentations possibles : Nom objet Nom objet:Nom classe :Nom classe Exemples : Objet nommé Objet nommé avec sa classe Objet anonyme UML : Modélisation statique 34 C250 C250:Modèle voiture :Modèle voiture
  • 18. 18 GL & MCOO A. Abdellatif Diagramme d’objets : Représentation détaillée d’un objet Nom objet:Nom classe Nom propriété = valeur Nom propriété de la classe Valeur propriété pour l’objet UML : Modélisation statique 35 C250:Modèle voiture Marque Année = Mercedes = 2002 GL & MCOO A. Abdellatif Diagramme d’objets : Représentation des liens Objet 1 Objet 2 Remarques : •Pas de cardinalités j j UML : Modélisation statique 36 •Possibilité de nommer le lien
  • 19. 19 GL & MCOO A. Abdellatif Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : Diagramme d’objets : 1..* 1..4 1..1 1..1 Vehicule RoueMoteur Voiture Moteur UML : Modélisation statique 37 Roue AV D Roue AG Roue AR D Roue AR G GL & MCOO A. Abdellatif Diagramme d’objets : Représentation des liens : exemple Diagramme de classes : 0..1 Dirige 0..* Dirigé parEmployé UML : Modélisation statique 38 Diagramme d’objets : DirigeMohamed:Employé Ali:Employé
  • 20. 20 GL & MCOO A. Abdellatif Diagramme d’objets : Objets multiples Lorsqu’un objet est lié à plusieurs autres objets, on peut : Représenter explicitement tous ces objets : Objet A Objet B1 Objet B2 Objet B3 UML : Modélisation statique 39 Représenter ces objets par un objet multiple: Objet A :Classe C GL & MCOO A. Abdellatif Diagramme d’objets : Objets multiples : exemple Diagramme de classes : 0..1 Dirige 0..* Dirigé parEmployé UML : Modélisation statique 40 Diagramme d’objets : DirigeMohamed:Employé :Employé
  • 21. 21 GL & MCOO A. Abdellatif Diagramme d’objets : Objets composites Un objet composite est une instance d’une classe ayant une association de composition. 0..1 Classe A :Classe A 1:Classe B 2:Classe B 3:Classe B UML : Modélisation statique 41 0..* Classe B 1:Classe B 2:Classe B 3:Classe B GL & MCOO A. Abdellatif Diagramme d’objets : Objets composites : exemple Fenetre me s 1 1 1 2 1 1 Zone travailBarre défilement Palette d'outils F t Diagramm declasses e UML : Modélisation statique 42 :Fenetre :Palette d'outils1:Barre défilement :Zone travail2:Barre défilement Diagramme D’objets
  • 22. 22 Diagramme de composantsg p GL & MCOO A. Abdellatif 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) UML : Modélisation statique 44 (développeurs).
  • 23. 23 GL & MCOO A. Abdellatif Diagramme de composants : Concepts de base Le diagramme de composants se base sur les concepts suivants :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. UML : Modélisation statique 45 Sous-programme : Procédure ou fonction ne contenant aucune classe. Sous-système : Regroupement d’un ensemble de composants. GL & MCOO A. Abdellatif Diagramme de composants : Les composants Les composants représentent toute sortes d’éléments physiques permettant la réalisation d’un logicielphysiques 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 éléments : une spécification et un corps.
  • 24. 24 GL & MCOO A. Abdellatif Diagramme de composants : Les composants: représentation Trois représentations possibles : Composant A <<Composant>> Composant A UML : Modélisation statique 47 Composant A xx GL & MCOO A. Abdellatif Diagramme de composants : Les composants: Exemple <<Composant>> Vérificateur d’orthographe Vérificateur d'orthographe UML : Modélisation statique 48 Vérificateur d’orthographe xx
  • 25. 25 GL & MCOO A. Abdellatif Diagramme de composants : Dépendance entre composants Dans un diagramme de composants, la l i d dé d ili érelation de dé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 composants. GL & MCOO A. Abdellatif Diagramme de composants : Dépendance: représentation Composant A Composant B Exemple : Editeur texte UML : Modélisation statique 50 Vérificateur d'orthographe Vérificateur grammaire
  • 26. 26 GL & MCOO A. Abdellatif Diagramme de composants : Programme principal Chaque application a un point d’entrée appelé programme principal (main). Main UML : Modélisation statique 51 GL & MCOO A. Abdellatif Diagramme de composants : Les sous-programmes Les sous-programmes regroupent les procédures et les fonctions qui n’appartiennent à aucune classe. F1 UML : Modélisation statique 52
  • 27. 27 GL & MCOO A. Abdellatif Diagramme de composants : Les sous-systèmes Dans le cas de systèmes complexes, un ensemble de composants peuvent êtreensemble de composants peuvent être regroupés dans un sous-système. Constitue la notion de bibliothèque. Utilise le formalisme de paquetage. UML : Modélisation statique 53 Sous-système 1 Composant A Composant B Diagramme de déploiementg p
  • 28. 28 GL & MCOO A. Abdellatif Diagramme de déploiement : Présentation Représente la structure physique du è i f i l é i i dsystè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 UML : Modélisation statique 55 Architecture centralisée Architecture client/serveur à deux niveaux Architecture client/serveur à trois niveaux Architecture client/serveur à n niveaux GL & MCOO A. Abdellatif Diagramme de déploiement : Concepts de base 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. UML : Modélisation statique 56 Instance de noeud : C’est une occurrence d’un dispositif matériel.
  • 29. 29 GL & MCOO 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, …) UML : Modélisation statique 57 p , , ) Une adresse réseau Une cardinalité GL & MCOO A. Abdellatif Diagramme de déploiement : Les nœuds : représentation <<Serveur de données>> SD 190.190.10.10 Nom du noeud Type de dispositif UML : Modélisation statique 58 Adresse réseau 1 Cardinalité
  • 30. 30 GL & MCOO 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 que celui du diagramme de composants. UML : Modélisation statique 59 GL & MCOO A. Abdellatif Diagramme de déploiement : Les composants: représentation <<Serveur de données>> SD 190.190.10.10 UML : Modélisation statique 60 1 SGBD Oracle
  • 31. 31 GL & MCOO A. Abdellatif Diagramme de déploiement : Les associations Les nœuds sont inter reliés par des i iassociations. Chaque association entre deux nœuds représente l’existence d’un support de communication entre eux. Pour chaque association, on peut préciser : Le nom UML : Modélisation statique 61 Le nom Le rôle de chaque côté La cardinalité GL & MCOO A. Abdellatif Diagramme de déploiement : Les associations:représentation Nom association 1..1 Rôle 1 1..* Rôle 2 Noeud 1 Noeud 2 UML : Modélisation statique 62
  • 32. 32 GL & MCOO A. Abdellatif Diagramme de déploiement : Les associations:exemple OAS TCP-IP1..3 1..1 Internet 1..1 Serveur Applications Serveur de données SGBD Oracle IIS CRM UML : Modélisation statique 63 0..* USB Client Imprimante Navigateur GL & MCOO A. Abdellatif Diagramme de déploiement : Instances de noeud Dans un diagramme de déploiement, on peut é l i d drepré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 nœuds par le fait que leurs noms sont UML : Modélisation statique 64 nœuds par le fait que leurs noms sont soulignés.
  • 33. 33 GL & MCOO A. Abdellatif Diagramme de déploiement : Les associations:représentation Instance de nœud UML : Modélisation statique 65 GL & MCOO A. Abdellatif Diagramme de déploiement : Les associations:exemple Serveur app 1 Serveur app 2 Serveur de données UML : Modélisation statique 66 Serveur app 3
  • 34. 34 GL & MCOO A. Abdellatif Synthèse Utiliser les diagrammes de classes pour décrire des composantes structurelles d’undé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 UML : Modélisation statique 67 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é.