Vous êtes sur la page 1sur 55

UML

2022-2023 COURS UML 106


UML : Unified Modeling Language

2022-2023 COURS UML 107


L’OMG

L’Object Management Group (OMG) est:

Une organisation fondée en 1989 par l’ensemble des acteurs industriels du


monde logiciel.
 Buts : Lutter contre l’ hétérogénéité et l’incompatibilité des technologies et des
outils.
 Moyens : Proposer des standards garantissant la compatibilité entre des
applications programmées à l'aide de langages objet et fonctionnant sur des
réseaux hétérogènes (de différents types).

2022-2023 COURS UML 108


Vers l’apparition de UML
Les premières méthodes d'analyse (années 70)
 Découpe cartésienne (fonctionnelle et hiérarchique) d'un système.

L'approche systémique (années 80)


 Modélisation des données + modélisation des traitements (Merise, Axial, IE...).

L'émergence des méthodes objet (1990-1995)


 Prise de conscience de l'importance d'une méthode spécifiquement objet :
Comment structurer un système sans centrer l'analyse uniquement sur les données
ou uniquement sur les traitements (mais sur les deux) ?
 Plus de 50 méthodes objet sont apparues durant cette période (Booch, Classe-
Relation, Fusion, HOOD, OMT, OOA, OOD, OOM, OOSE...) !
 Aucun méthode ne s'est réellement imposée.

2022-2023 COURS UML 109


Vers l’apparition de UML

2022-2023 COURS UML 110


Vers l’apparition de UML

2022-2023 COURS UML 111


Vers l’apparition de UML

2022-2023 COURS UML 112


Vers l’apparition de UML

 UML est le fruit de l’unification de 3 méthodes de modélisation orientées


objet
 Prend le meilleur de chacune des méthodes:
 OOSE (Jacobson): Use Cases
 OMT (Rumbaugh): Analyse
 Booch: Conception, Architecture

2022-2023 COURS UML 113


UML n’est pas une méthode

 UML n’est pas une méthode, ce n’est qu’une notation


 attente de la part des utilisateurs d’une normalisation du formalisme
 définir un processus de développement logiciel universel est illusoire

 UML est indépendant de toute démarche


 ce qui en fait un langage universel
 mais favorise la mise en œuvre d’un processus itératif et incrémental, fondé
sur les cas d’utilisation et centré sur l’architecture

2022-2023 COURS UML 114


Evolutions d’UML

2022-2023 COURS UML 115


Axes de Modélisation

2022-2023 COURS UML 116


Diagrammes

2022-2023 COURS UML 117


Diagrammes

2022-2023 COURS UML 118


Vues

Vue logique Vue d’implémentation

Vue des cas d’utilisation

Vue des processus Vue de déploiement

2022-2023 COURS UML 119


Notations communes

2022-2023 COURS UML 120


Les flèches en UML

2022-2023 COURS UML 121


Points Forts
UML est un langage formel et normalisé
 Gain de précision
 Gage de stabilité
 Encourage l'utilisation d'outils

UML est un support de communication performant


Il cadre l'analyse
Il facilite la compréhension de représentations abstraites complexes
Son caractère polyvalent et sa souplesse en font un langage universel

2022-2023 COURS UML 122


Points Faibles

 La mise en pratique d'UML nécessite un apprentissage et passe par une


période d'adaptation.
 Le processus (non couvert par UML) est une autre clé de la réussite d'un
projet.

2022-2023 COURS UML 123


Guide pour application
 Recueillir les besoins de l'utilisateur final

 Adopter le point de vue de l'utilisateur final

 Penser à la réutilisation

 Ne préciser que les caractéristiques utiles des classes

 Généralement dans le cahier des charges, les noms sont des classes ou des
attributs de classes et les verbes sont des méthodes

 Raffiner la modélisation en éliminant les redondances dues aux synonymes, les


informations dérivées qui peuvent être déduites, et en s'efforçant de ne pas
introduire de détails d'implémentation

2022-2023 COURS UML 124


Quelques Outils Pour UML

ArgoUML Power Designer Astah Visual Paradigm

PlantUML BOUML StarUML


Draw.io

2022-2023 COURS UML 125


Merise vs UML

2022-2023 COURS UML 126


Diagramme de Cas
d’Utilisation

2022-2023 COURS UML 127


Introduction

A quoi sert ce système ?

Système Utilisateur

Un système est destiné à être utilisé par des utilisateurs


Souvent le client qui commande un logiciel ou ses utilisateurs ne sont pas
des informaticiens.

2022-2023 COURS UML 128


Introduction

Le point de vue des utilisateurs est important pour comprendre :


Le fonctionnement du système
Les services rendus par le système

UML permet de décrire d’un point de vue utilisateur, le système étudié


(existant ou futur) par un diagramme spécial : le diagramme de Cas
d’Utilisation.

2022-2023 COURS UML 129


Fonctionnalités du système

Les fonctionnalités du système peuvent être exprimés sous forme de


phrases simples, tels que :
Ajouter un produit au panier dans un site de e-Commerce
Remplir l’essence dans une station de service
Créer une nouvelle réservation dans un cabinet médical

2022-2023 COURS UML 130


Fonctionnalités du système
Problèmes
Insuffisant pour comprendre le système
Ne facilite pas la communication entre les concepteurs
Nécessite un langage formel

Solution
La modélisation des fonctions du système en utilisant des notations
graphiques permet de mieux comprendre le système d’un point de vue
fonctionnel et favorise la communication.

2022-2023 COURS UML 131


Utilité

 Les cas d’utilisations permettent de recueillir, d’analyser et d’organiser les


besoins, et de recenser les grandes fonctionnalités d’un système.
 Un diagramme de cas d’utilisation capture le comportement d’un système
du point de vue de l’utilisateur.
 Ils décrivent le comportement du système sous forme d’actions et de
réactions.

2022-2023 COURS UML 132


Utilité

 Les cas d’utilisations partitionnent l’ensemble des besoins d’un système.

2022-2023 COURS UML 133


Cas d’utilisation

Un Cas d’Utilisation (use case) représente une unité cohérente d’une
fonctionnalité fournie par un système (ou sous-système) spécifiée par une
séquence d’actions que le système peut exécuter en interagissant avec les
acteurs du système.
La séquence d’actions définit un service de bout en bout, avec un
déclenchement, un déroulement et une fin, pour l'acteur qui l'initie.
L’acteur décrit le rôle qu’un utilisateur joue par rapport au système.

Acteur != Utilisateur

2022-2023 COURS UML 134


Cas d’utilisation
Graphiquement, un CU est représenté sous forme d’une ellipse.

La fonction réalisée par le CU est représentée sous forme d’un verbe à
l’infinitif.

Les fonctionnalités du système exprimées textuellement seront modélisés


à l’aide des cas d’utilisations.

2022-2023 COURS UML 135


Cas d’utilisation
Exemples :

Ajouter un produit au panier dans un site Ajouter Produit à

de e-Commerce Son Panier

Remplir l’essence dans une station de service Remplir l’Essence

Créer une nouvelle réservation dans un cabinet Créer Réservation


médical

2022-2023 COURS UML 136


Eléments Constituants un Diagramme
de cas d’utilisation

La représentation graphique des CU n’est pas suffisante pour comprendre


le fonctionnement du système.

Qu’est-ce qui manque ?


 Système
Acteurs
Relations

2022-2023 COURS UML 137


Système
Le système est représenté sous forme d’un rectangle qui contient un libellé
qui correspond au nom du système à modéliser
Le système sert à délimiter le système par rapport à son environnement et
aux autres systèmes
Le système est un ensemble de CU. De cette manière, UML modélise le
système et les services rendus par le système
Site Web e-commerce

Ajouter Produit à Son


Panier

Lister les Payer la


Produits transaction

2022-2023 COURS UML 138


Acteurs

Un acteur joue le rôle d’une personne qui interagit avec le système.
 Il se représente par un petit bonhomme avec son nom inscrit dessous.

2022-2023 COURS UML 139


Acteurs

Il est également possible de représenter un acteur sous la forme d’une


classe avec le stéréotype<< actor >>

2022-2023 COURS UML 140


Acteurs

Il se détermine en observant les utilisateurs directs du système :


ceux responsables de son exploitation
de sa maintenance
les autres systèmes qui interagissent avec le système.

2022-2023 COURS UML 141


Acteurs

2022-2023 COURS UML 142


Acteurs

La relation d’association entre acteur et un cas d’utilisation représente la


possibilité pour l’acteur de déclencher le cas.

Site Web e-commerce

Ajouter Produit
à Son Panier

2022-2023 COURS UML 143


Acteurs

2022-2023 COURS UML 144


Acteurs
Site Web e-commerce Stéréotype
« Primary » Ajouter Produit
à Son Panier

Payer la « Secondary »
Transaction
Lister les
Produits

Acteur principal Acteur secondaire


(à gauche) (à droite)

 L’acteur principal : Il utilise le système comme outil pour réaliser son but
 L’acteur secondaire ou auxiliaire: Il offre généralement ses services au
système.

2022-2023 COURS UML 145


Acteurs
La seule relation qui peut exister entre les acteurs est la relation de
généralisation.
L’acteur qui hérite peut faire tout ce que l’acteur père peut faire.

Site Web e-commerce


Acteur père
Lister les
produits

Ajouter Produit
Acteur fils à Son Panier
Il peut faire tout ce
que fait le visiteur
+ ses propres CU

2022-2023 COURS UML 146


Acteurs
Catégories d’acteurs:

2022-2023 COURS UML 147


Relations entre cas d’utilisation
Le visiteur qui veut gérer son panier (entre autres l’ajout du produit) doit
d’abord devenir un client, en remplissant un formulaire d’inscription.
Après l’inscription, le visiteur devient un client doté de paramètres
d’identifications (login et mot de passe).
Site Web e-commerce Modèle qui ne reflète pas la réalité !

S’inscrire

S’identifier Réalité : L’identification du client est un


CU qui fait partie du CU ajout du
produit
Ajouter Produit
Modèle : le client peut ajouter le
à Son Panier produit sans passer par l’identification

2022-2023 COURS UML 148


Relations entre cas d’utilisation
UML propose deux catégories de relations entre les cas d’utilisation :

2022-2023 COURS UML 149


Relations entre cas d’utilisation

2022-2023 COURS UML 150


Relations entre cas d’utilisation

2022-2023 COURS UML 151


Relations entre cas d’utilisation

2022-2023 COURS UML 152


Relations entre cas d’utilisation

2022-2023 COURS UML 153


Relations entre cas d’utilisation

2022-2023 COURS UML 154


Relations entre cas d’utilisation

2022-2023 COURS UML 155


Relations entre cas d’utilisation

2022-2023 COURS UML 156


Relations entre cas d’utilisation

2022-2023 COURS UML 157


Comment identifier les acteurs ?

2022-2023 COURS UML 158


Comment recenser les cas d’utilisation ?

2022-2023 COURS UML 159


Comment construire un diagramme de
cas d’utilisation?

2022-2023 COURS UML 160

Vous aimerez peut-être aussi