1. 1
Génie logiciel et méthodes de
conception orientées objet
UML
A. ABDELLATIF
abdelaziz.abdellatif@fst.rnu.tn
2012-2013
Vue d’ensemble
GL & MCOO A. Abdellatif
Sommaire
UML : Pourquoi ?
Historique d’UML
UML : C’est quoi ?
Notion de modèle et de métamodèle
Modèles et diagrammes UML
Classification des diagrammes UML
UML : Vue d’ensemble 2
Présentation générale des diagrammes
Éléments de base de la modélisation
UML
2. 2
GL & MCOO A. Abdellatif
UML : Pourquoi ?
Diversité des méthodes d’analyse et de
conception objetconception objet
Notations différentes pour les mêmes
concepts
La « guerre » des MCOO ne fait pas
avancer la technologie objet
Trois méthodes couvrent 50% du marché
d é h d b
UML : Vue d’ensemble 3
des méthodes objet : OMT, BOOCH et
OOSE
Nécessité de normalisation UML
GL & MCOO A. Abdellatif
Historique d’UML
MéthodeMéthode
UnifiéeUnifiée
UMLUML
0.90.9
OMOM
TTRumbaugh
OOOO
DDBooch
UMLUML
1.0 &1.0 &
AdhésionAdhésion
de grandesde grandes
entreprisesentreprises
UMLUML
2.02.0
UML : Vue d’ensemble 4
1994 1995 1996 1997 1998 20061994 1995 1996 1997 1998 2006
OOSEOOSE
Jacobson
1.11.1
OMG
entreprisesentreprises
Microsoft, IBM,
Oracle, ...
OMG
3. 3
GL & MCOO A. Abdellatif
UML : c’est quoi ?
Unified Modelling Language
UML n’est pas une méthodeUML n est pas une méthode
UML est une notation
UML est un langage de modélisation basé
sur un méta modèle
UML est dans le domaine public
UML est utilisable avec toute méthode de
conception :
UML : Vue d’ensemble 5
conception :
Itérative et incrémentale
Guidée par les besoins des utilisateurs
Centrée sur l’architecture logicielle
GL & MCOO A. Abdellatif
Notion de modèle
C’est une représentation abstraite
i lifié d’ tè d’ou simplifiée d’un système ou d’un
processus.
Permet de comprendre et de
simuler ce système ou ce processus.
Exemples :
dèl é
UML : Vue d’ensemble 6
Modèle économique,
MCD, MCT, …
MCC, Modèle de cycle de vie, …
4. 4
GL & MCOO A. Abdellatif
Notion de métamodèle
Permet de décrire 0,n
1,n
Entité Décrite par
de manière
formelle (à l’aide
de formalisme)
différents modèles.
Se base sur une
1,n
0,1
0,n
0,1
Propriété
Association Porteuse de
Participe
Diagramme UML
UML : Vue d’ensemble 7
syntaxe et une
sémantique.
Diagramme statique Diagramme dynamique
Classes Objets Composants Cas d'utilisation Séquences Collaboration
GL & MCOO A. Abdellatif
Modélisation
Consiste à décrire :
1. Un problème
2. La solution à ce problème
Dans le domaine du GL :
La modélisation du problème s’appelle
Analyse
UML : Vue d’ensemble 8
Analyse
La modélisation de la solution s’appelle
Conception
5. 5
GL & MCOO A. Abdellatif
Modèles d’UML
UML propose plusieurs modèles :
Modèle des classes (structure statique)
Modèle des états (comportement dynamique des
objets)
Modèle des cas d’utilisation (besoins des
utilisateurs)
Modèle d’interaction (échange de messages)
UML : Vue d’ensemble 9
Modèle de réalisation (unités de travail)
Modèle de déploiement (répartition des
composants)
GL & MCOO A. Abdellatif
Modèles et diagrammes UML
Chaque modèle est représenté par un
ou plusieurs diagrammes
Chaque digramme constitue une vue
du système ou de processus.
Le nombre de diagramme évolue avec
les versions d’UML :
UML : Vue d’ensemble 10
les versions d UML :
9 diagrammes dans UML 1
13 diagrammes dans UML 2
6. 6
GL & MCOO A. Abdellatif
Les diagrammes d’UML 1
Diagramme des classes
Digramme d’objets
Diagramme de cas d’utilisation
Diagramme de séquence
Diagramme de collaboration (de communication)
Diagramme d’états-transitions
Diagramme d’activités
UML : Vue d’ensemble 11
Diagramme d’activités
Diagramme de composants
Diagrammes de déploiement
GL & MCOO A. Abdellatif
Les diagrammes d’UML 2
Diagramme de paquetage
Digramme de structures composites
Diagramme global d’interaction
Diagramme de temps
UML : Vue d’ensemble 12
7. 7
GL & MCOO A. Abdellatif
Classification des diagrammes UML
Diagrammes statiques (structurels) :
Diagramme de classes
Diagramme d’objets
Diagramme de composants
Diagramme de déploiement
Diagramme de paquetages
UML : Vue d’ensemble 13
g p q g
Diagramme de structures composites
GL & MCOO A. Abdellatif
Classification des diagrammes UML
Diagrammes dynamiques (comportementaux):
Diagramme de cas d’utilisation
Diagramme d’activité
Diagramme d’états-transitions
Diagramme de séquence
Diagramme de collaboration (de communication)
Diagramme global d’interaction
UML : Vue d’ensemble 14
g g
Diagramme de temps
8. 8
GL & MCOO A. Abdellatif
Diagrammes statiques :
Diagramme de classes (Class
di )diagram) :
Représente les classes et les associations
entre les classes constituant le système.
Diagramme d’objets (Object
diagram) :
Permet de détailler la structure des classes
UML : Vue d’ensemble 15
Permet de détailler la structure des classes
complexes en représentant des
occurrences de classes et les associations
entre elles.
GL & MCOO A. Abdellatif
Diagrammes statiques :
Diagramme de composants
(C di )(Component diagram) :
Représente les composantes techniques et
logicielles constituant le système et les liens entre
eux.
Diagramme de déploiement
(Deployment diagram) :
UML : Vue d’ensemble 16
Représente le réseau informatique qui va
supporter le système et la répartition des
composantes matérielles et logicielles sur ce
réseau.
9. 9
GL & MCOO A. Abdellatif
Diagrammes statiques (UML 2) :
Diagramme de paquetages
(Package Diagram) :
Représente les relations entre les
paquetages.
Diagramme des structures
composites (Composite Structure
UML : Vue d’ensemble 17
p ( p
Diagram) :
Représente les relations entre les
composants.
GL & MCOO A. Abdellatif
Diagrammes dynamiques :
Diagramme de cas d’utilisation (Use
C Di )Case Diagram) :
Décrit l’utilisation du système par les différents
acteurs.
Diagramme de séquence (Sequence
Diagram) :
Représente de façon détaillée les différents
UML : Vue d’ensemble 18
p ç
scénarios d’utilisation du système.
Donne une vision temporelles des interactions
entre acteurs.
10. 10
GL & MCOO A. Abdellatif
Diagrammes dynamiques :
Diagramme de collaboration
(C ll b ti di )(Collaboration diagram) :
Décrit les interactions entre les objets du
système.
Donne une vision spatiale des interactions
entre objets.
Diagramme d’états-transitions
UML : Vue d’ensemble 19
Diagramme d états transitions
(State Machine Diagram) :
Décrit comment un objet se comporte et
évolue dans le temps.
GL & MCOO A. Abdellatif
Diagrammes dynamiques :
Diagramme d’activités (Activity
Diagram) :
Décrit l’enchaînement des activités du
système.
UML : Vue d’ensemble 20
11. 11
GL & MCOO A. Abdellatif
Diagrammes dynamiques (UML 2):
Diagramme global d’interaction
(Interaction Overview Diagram) :
Permet de décrire les enchaînements
possibles entre les scénarios représentés
sous forme de diagrammes de séquences.
Diagramme temps (Timing
UML : Vue d’ensemble 21
Diagram) :
Permet de décrire les variations d'une
donnée au cours du temps.
GL & MCOO A. Abdellatif
Éléments de base de la
modélisation UML
Objet : Object_1
Un objet du monde réel ou
virtuel
Classe :
Ensemble d’objets similaires
Ét t
Class_1
UML : Vue d’ensemble 22
État :
Une étapes dans la vie d’un
objet
State_1
12. 12
GL & MCOO A. Abdellatif
Éléments de base de la
modélisation UML
Cas d’utilisation :
Utilisation du système par un
acteur
Collaboration :
Réalisation d’un cas d’utilisation
par un ensemble d’objets
C t
Case_1
UML : Vue d’ensemble 23
Composant :
Module contenant des entités de
réalisation
Component_1
GL & MCOO A. Abdellatif
Éléments de base de la
modélisation UML
Noeud : Node_1
Dispositif matériel
Paquetage :
Un sous-ensemble du modèle
Note :
Package_1
UML : Vue d’ensemble 24
Texte libre pour commenter,
expliquer ou annoter un objet
Note
13. 13
GL & MCOO A. Abdellatif
Éléments de base de la
modélisation UML : les relations
Association :
Lien sémantique entre
éléments de diagramme
Généralisation :
Relation de classification
Dé d
UML : Vue d’ensemble 25
Dépendance :
Utilisation d’un élément par
un autre