Académique Documents
Professionnel Documents
Culture Documents
Comité Formation
CELLULE SOUTIEN
Unified Modeling Language
Pr.TIKITO
Pr.TIKITO 2
PLAN
Introduction
Modélisation de la structure
• Diagramme de classe
• Diagramme d’objet
Modélisation du comportement
• Diagramme de cas d’utilisation
• Diagrammes d’interaction
Etude de cas
Conclusion
Pr.TIKITO 3
Introduction
Pr.TIKITO 4
C’est quoi UML ?
Méthodes Booch’93
de G. Booch :
notions de partitions
en sous-systèmes
OOSE (Object-
Oriented Software OMT-2 (Object
Engineering) d’I. Modeling
Jacobson : Technique) de J.
expression des Rumbaugh :
besoins par les notion de
interactions entre classes et
les utilisateurs et le d’associations
système
Pr.TIKITO 5
Histoire
Pr.TIKITO 7
UML aujourd’hui ?
Pr.TIKITO 8
Pourquoi modéliser?
Pr.TIKITO 10
Modèle vs Méthode
Pr.TIKITO 11
Quelle Méthode alors ?
Pr.TIKITO 12
Unified Process
• 4 phases :
– Création
– Elaboration
– Construction
– Transition
Source : Guide to the Unified Process featuring UML, Java and Design
Patterns (John Hunt) Ed. Springer Science & Business Media
Pr.TIKITO 13
Unified Process
Source : Guide to the Unified Process featuring UML, Java and Design
Patterns (John Hunt) Ed. Springer Science & Business Media
Pr.TIKITO 14
Le formalisme UML
Pr.TIKITO 15
Les Vues
• Vue logique
• Vue des processus
• Vue d’implémentation
• Vue de déploiement
• Vue des cas d’utilisation
Source : Concept de
vue et génie logiciel
[SIGONNEAU 2003]
Pr.TIKITO 16
Diagrammes
• Notion de Classe
• Classe abstraite
• Encapsulation
• Interface
• Relations:
• Association
• Agrégation
• Composition
• Héritage (cf. Polymorphisme)
– Généralisation
– Spécification
• Dépendance
Pr.TIKITO 18
Diagramme de Classe
Spécification
• les interfaces des
classes plutôt que Conceptuel
leurs contenus
• manière éventuelle
d'implémenter les
concepts du domaine
et à leurs relations
Implémentation
• contenu et
implémentation de
chaque classe
Pr.TIKITO 19
Diagramme de Classe
Concepts de
l’orienté objet:
• Encapsulation:
regrouper les données et les
traitements associés.
• Héritage: créer de
nouvelles classes à partir de
classes déjà existantes afin de
réutiliser leurs attributs et leurs
comportements
• Polymorphisme: le
même service, aussi appelé
opération ou méthode, peut
avoir un comportement
différent selon les situations.
Source: UML & Together 2006 tutorial. Hong Qing Yu. 2006
Pr.TIKITO 20
Diagramme de Classe / La Classe
Pr.TIKITO 21
Diagramme de Classe / Les attributs
Pr.TIKITO 22
Diagramme de Classe / Les attributs
• Exemple:
La fameuse classe « Voiture »
• La classe Voiture :
o Passager
o Roue
o Puissance
o Couleur
o Stickers
Pr.TIKITO 23
Diagramme de Classe / Les attributs
Pr.TIKITO 24
Diagramme de Classe / Les relations
Association
• Une association décrit une relation stable entre les
classes.
• Il peut exister plusieurs associations possibles entre deux
classes : rôles multiples
• Les liens entre les objets doivent exister en dehors de
l’exécution d’une méthode.
Pr.TIKITO 25
Diagramme de Classe / Les relations
Association
Source: Conception et
réalisation de bases de
données : De UML à
SQL. Jacques Guyot.
Editions Systèmes et
Information. 2008
Pr.TIKITO 26
Diagramme de Classe / Les relations
Association
• La navigabilité: Pour contraindre l’association à n’être
parcourue que dans un sens.
Source: Conception et réalisation de bases de données : De UML à SQL. Jacques Guyot. Editions Systèmes et Information. 2008
Pr.TIKITO 27
Diagramme de Classe / Les relations
Association
• La multiplicité:
Multiplicité de A Multiplicité de B
Classe A Classe B
Rôle de A Rôle de B
Pr.TIKITO 28
Diagramme de Classe / Les relations
Association
Article Catégorie
Livre Auteur
Etudiant Cour
Pr.TIKITO 29
Diagramme de Classe / Les relations
Association
0..* 1
Article Catégorie
1..* 0..1
Est employé par
Personne Entreprise
Employé Employeur
1..* *
Livre Auteur
5..28 1..7
Etudiant Cour
Pr.TIKITO 30
Diagramme de Classe / Les relations
Association Réflexive
conjointe Personne
conjoint
Marié à
Personne
Ami de
Pr.TIKITO 31
Diagramme de Classe / Les relations
Association Réflexive
0..1
conjointe Personne
0..1
conjoint
Marié à
Pr.TIKITO 32
Diagramme de Classe / Les relations
Classe-Association
• L’association a ses propres attributs et méthodes.
Pr.TIKITO 33
Diagramme de Classe / Les relations
Classe-Association
Source: Conception et réalisation de bases de données : De UML à SQL. Jacques Guyot. Editions Systèmes et Information. 2008
Pr.TIKITO 34
Diagramme de Classe / Les relations
Classe-Association n-aire
Pr.TIKITO 35
Diagramme de Classe / Les relations
Agrégation
• Forme particulière de l’association
• Relation d’inclusion d’un élément à un ensemble
• Une classe appartient à une collection
Pr.TIKITO 36
Diagramme de Classe / Les relations
Composition
• « Agrégation Forte »
• La destruction d’un composite implique la destruction de
ses composants.
• Un composant appartient à au plus une composite
Pr.TIKITO 37
Diagramme de Classe / Les relations
Spécialisation / Généralisation
• Notion d’héritage.
Pr.TIKITO 38
Diagramme de Classe / Les relations
Dépendance
• Une ou plusieurs méthodes reçoivent un objet d'un type
d'une autre classe.
• Lorsqu’un changement intervient dans la classe cible, la
classe source est affectée.
Pr.TIKITO 39
Diagramme de Classe / Les relations
Dépendance
Source: http://www.uml-diagrams.org/dependency.html
Pr.TIKITO 40
Diagramme de Classe
Interface
• Classe sans attribut, dont toutes ses opérations sont
abstraites
• On utilise une relation de type réalisation entre une
interface et une classe qui l'implémente.
Relations
Inheritance Composition
Realize
Pr.TIKITO 42
Diagramme d’Objet
Pr.TIKITO 43
Diagramme de Classe / Objet
Pr.TIKITO 44
Diagramme de Classe
Pr.TIKITO 45
Diagramme de Classe
Pr.TIKITO 46
Diagramme de Classe
Pr.TIKITO 47
Diagramme de Classe
Pr.TIKITO 48
Exercice
Pr.TIKITO 49
Diagramme de Paquetage
Pr.TIKITO 50
Diagramme de Paquetage
Pr.TIKITO 51
Diagramme de Composant
Pr.TIKITO 52
Diagramme de Composant
Pr.TIKITO 53
Diagramme de Composant
Pr.TIKITO 54
Diagramme de Composant
Pr.TIKITO 55
Diagramme de Déploiement
Pr.TIKITO 56
Diagramme de Déploiement
Pr.TIKITO 57
Diagramme de Cas d’utilisation
Source : Concept de
vue et génie logiciel
[SIGONNEAU 2003]
Pr.TIKITO 58
Use Case Diagram
Pr.TIKITO 59
Use Case Diagram
Modélisation UML.
Christine Solnon
Pr.TIKITO 60
Use Case Diagram
Pr.TIKITO 61
Use Case Diagram
https://www.andrew.cmu.edu/
course/90-754/camera.jpg
Pr.TIKITO 62
Use Case Diagram
• Acteur
• Les acteurs doivent être en mesure de prendre des
décisions, mais pas besoin d'être humain
• «Un acteur peut être une personne, une entreprise ou
une organisation, un programme informatique ou un
ordinateur système matériel, des logiciels, ou les deux. »
• Attention: une personne utilisant un système peut être
représentée comme différents acteurs parce qu’elle joue
des rôles différents (ex: banquier)
Pr.TIKITO 63
Use Case Diagram
• Extension
Pr.TIKITO 64
Use Case Diagram
Pr.TIKITO 65
Exercice
Pr.TIKITO 66
Séances
Séance Contenu
1 Introduction
Diagramme d'Objet
2
Diagramme de Classe
Modélisation de
Diagramme de Paquetage la Structure
3 Diagramme de Composant
Diagramme de Déploiement
Outils de modélisation
7
MDA
8 Etude de cas
9 Etude de cas
Pr.TIKITO 67
Diagrammes d’Interactions
Pr.TIKITO 68
Diagrammes d’Interactions
Pr.TIKITO 69
Diagrammes de Séquence
Pr.TIKITO 71
Diagrammes de Séquence
Pr.TIKITO 72
Diagrammes de Séquence
Pr.TIKITO 73
Diagrammes de Séquence
Message asynchrone
Pr.TIKITO 74
Diagrammes de Séquence
Message asynchrone
Pr.TIKITO 75
Diagrammes de Séquence
Message synchrone
Pr.TIKITO 76
Diagrammes de Séquence
Message synchrone
Pr.TIKITO 77
Diagrammes de Séquence
Condition (If)
Pr.TIKITO 78
Diagrammes de Séquence
Alternative (Switch)
Pr.TIKITO 79
Diagrammes de Séquence
Alternative (Switch)
Pr.TIKITO 80
Diagrammes de Séquence
Boucle
Pr.TIKITO 81
Diagrammes de Séquence
Break
Pr.TIKITO 82
Diagrammes de Séquence
Parallélisme
Pr.TIKITO 83
Diagrammes de Séquence
Référence
Pr.TIKITO 84
Diagrammes de Séquence
Exercice
• Le déroulement normal d’utilisation d’un distributeur automatique de
billets est le suivant :
• 1. le client introduit sa carte bancaire
• 2. la machine vérifie alors la validité de la carte et demande le code
au client
• 3. si le code est correct, elle envoie une demande d’autorisation de
prélèvement au groupement de banques. Ce dernier renvoie le solde
autorisé à prélever.
• 4. le distributeur propose alors plusieurs montants à prélever
• 5. le client saisit le montant à retirer
• 6. après contrôle du montant par rapport au solde autorisé, le
distributeur demande au client s’il désire un ticket
• 7. Après la réponse du client, la carte est éjectée et récupérée par le
client
• 8. les billets sont alors délivrés (ainsi que le ticket)
• 9. le client récupère enfin les billets et son ticket
Pr.TIKITO 85
Diagrammes de Séquence
Pr.TIKITO 86
Diagrammes d’Interactions
Pr.TIKITO 87
Diagrammes de Communication
(Collaboration)
Pr.TIKITO 88
Diagrammes de Communication
(Collaboration)
Exemple
Pour faciliter sa gestion, un entrepôt de stockage envisage de
s’informatiser. Le logiciel à produire doit allouer automatique un
emplacement pour le chargement des camions qui convoient le
stock à entreposer. Le fonctionnent du système informatique doit
être le suivant :
• Déchargement d’un camion : lors de l’arrivée d’un camion, un
employé doit saisir dans le système les caractéristiques de
chaque article ; le système produit alors une liste où figure un
emplacement pour chaque article ;
• Chargement d’un camion : les caractéristiques des articles à
charger dans un camion sont saisies par un employé afin
d’indiquer au système de libérer des emplacements.
Le chargement et le déchargement sont réalisés manuellement.
Pr.TIKITO 89
Diagrammes de Communication
(Collaboration)
Pr.TIKITO 90
Exercice complet
Pr.TIKITO 91
Exercice complet
Pr.TIKITO 92
Exercice complet
Pr.TIKITO 93
Use Case Diagram
Pr.TIKITO 94
Use Case Diagram
Pr.TIKITO 95
Use Case Diagram
Pr.TIKITO 96
Diagramme de Séquence
Pr.TIKITO 97
Diagramme de Séquence
Pr.TIKITO 98
Diagramme de Classe (l’agence)
Pr.TIKITO 99