Computing">
Chapitre 2 - Le Diagramme Des Cas D'utilisations
Chapitre 2 - Le Diagramme Des Cas D'utilisations
Chapitre 2 - Le Diagramme Des Cas D'utilisations
DIAGRAMME DE CAS
1 d’UTILISATION
Axes de modélisation d ’un système
Fonctionnel
(ce que le système FAIT)
Dynamique
(comment le système
EVOLUE)
Statique (ce que le système EST)
• diagramme de séquence
•… • diagramme de classes
•diagramme de déploiement
•… 2
Bien recueillir les besoins
3
Bien souvent, la maîtrise d’ouvrage et les utilisateurs ne sont pas des
informaticiens.
Il leur faut donc un moyen simple d’exprimer leurs besoins. C’est précisément
le rôle des diagrammes de cas d’utilisation qui permettent de recueillir,
d’analyser et d’organiser les besoins, et de recenser les grandes
fonctionnalités d’un système.
Il s’agit donc de la première étape UML, d’analyse d’un système.
Un diagramme de cas d’utilisation capture le comportement d’un système,
d’un sous-système, d’une classe ou d’un composant tel qu’un utilisateur
extérieur le voit.
Il scinde la fonctionnalité du système en unités cohérentes,
Les cas d’utilisation, ayant un sens pour les acteurs.
Les cas d’utilisation permettent d’exprimer le besoin des utilisateurs d’un système,
ils sont donc une vision orientée utilisateur de ce besoin, au contraire d’une
vision informatique.
Compréhensibles par toutes les personnes, même par les non-informaticiens.
Définition
4
o acteur : un rôle joué par une personne, un service, etc. qui interagit avec le
système étudié
Acteur humain : il s’agit ici d’un rôle et non d’un acteur identifié.
ou
Acteurs : diagramme de cas d’utilisation
7
On distingue 4 catégories d ’acteurs:
o les acteurs principaux (ex: usager, client, etc.)
o les acteurs secondaires (ex: opérateur de maintenance, administrateur, etc.)
o le matériel externe (capteurs, imprimantes, périphériques divers, etc.)
o les autres systèmes (serveur central, service ou organisation, etc.)
Circuler à
bicyclette
Cycliste
Distribuer le
courrier
Facteur
CAS D ’UTILISATION Identification (1)
8
Un cas d’utilisation représente un processus de « haut niveau » se déroulant de
bout en bout et incluant plusieurs étapes successives.
Ce n’est pas une opération élémentaire ou une transaction.
5) Elaborer un diagramme.
6) Vérifier que tous les besoins identifiés ont été alloués à un cas
d ’utilisation.
•Général •Détaillé
Brève description Description précise et
structurée
3-5 phrases
Description des
alternatives
Calculer un itinéraire
d ’événements de A peut intervenir, de façon facultative, Remplir ordre et montant Régler par chèque
facultatif
Relation d’inclusion
14
Un cas A inclut un cas B si le comportement décrit par le cas A inclut le
comportement du cas B : le cas A dépend de B.
Lorsque A est sollicité, B l’est obligatoirement, comme une partie de A. Cette
dépendance est symbolisée par le stéréotype << include >>
Les inclusions permettent essentiellement de factoriser une partie de la
description d’un cas d’utilisation qui serait commune à d’autres cas
d’utilisation.
Les inclusions permettent également de décomposer un cas complexe en
sous-cas plus simples.
Relation d’extension
15
Un cas d’utilisation A étend un cas d’utilisation B lorsque le cas d’utilisation A
peut être appelé au cours de l’exécution du cas d’utilisation B.
Exécuter B peut éventuellement entraîner l’exécution de A : contrairement à
l’inclusion, l’extension est optionnelle. Cette dépendance est symbolisée par le
stéréotype << extend >> .
L’extension peut intervenir à un point précis du cas étendu. Ce point s’appelle
le point d’extension.
mot clef (stéréotype)
<<extend>> Rechercher
demande de remplacement Extension points
de chaque occurrence trouvée • définition du remplaçant: avant début
Remplacer
de recherche
• substitution: à chaque occurrence
trouvée
Condition d’extension
Points d’extension
Relation de généralisation
16
Un cas A est une généralisation d’un cas B, si B est un cas particulier de A.
La seule relation possible entre deux acteurs est la généralisation : un acteur A est
une généralisation d’un acteur B si l’acteur A peut être substitué par l’acteur B.
Dans ce cas, tous les cas d’utilisation accessibles à A le sont aussi à B, mais
l’inverse n’est pas vrai.
Comment recenser les cas d’utilisation
18
L’ensemble des cas d’utilisation décrit exhaustivement les exigences fonctionnelles
du système.
Chaque cas d’utilisation correspond à une fonction métier du système, selon le
point de vue d’un de ses acteurs
(exemple du distributeur de billet : Retirer de l’argent ou Distribuer de l’argent ).
Aussi, pour identifier les cas d’utilisation, il faut se placer du point de vue de
chaque acteur et déterminer comment et surtout pourquoi il se sert du système.
Il faut éviter les redondances et limiter le nombre de cas en se situant à un bon
niveau d’abstraction.
Nommez les cas d’utilisation avec un verbe à l’infinitif suivi d’un complément en
vous plaçant du point de vue de l’acteur, et non pas de celui du système.
Dans tous les cas, il faut bien garder à l’esprit qu’il n’y a pas de notion temporelle
dans un diagramme de cas d’utilisation.
Exemple 1
19
Exemple 2
20
Une agence de voyages organise des voyages où l’hébergement se fait en
hôtel. Le client doit disposer d’un taxi quand il arrive à la gare pour se rendre à
l’hôtel
Certains clients demandent à l’agent de voyages d’établir une facture
détaillée. Cela donne lieu à un nouveau cas d’utilisation appelé « Etablir une
facture détaillée». Comment mettre ce cas en relation avec les cas existants
Le voyage se fait soit par avion, soit par train. Comment modéliser cela
Organiser un
voyage
Agent de
voyage
Exemple 2 (Correction)
21
22 Exemple 3
Distributeur de billets