MFormations
Modern Information Systems Engineering

Chapitre 3

03-UML : Use Cases et Diagrammes de Classes

03-UML : Use Cases et Diagrammes de Classes

Cours 03 : UML - Use Cases et Diagrammes de Classes

1. Histoire d'UML

Les trois amigos

UML (Unified Modeling Language) est né de la fusion de trois méthodes orientées objet :

Diagramme en cours de génération...
MéthodeCréateurConcepts clés
BoochGrady BoochClasses, modules, processeurs
OMTJim RumbaughObjets, relations, états
ObjectoryIvar JacobsonUse Cases, acteurs

Objectifs d'UML

  • Unifier les notations existantes
  • Standardiser par l'OMG
  • Couvrir l'ensemble du cycle de développement
  • Être extensible (profils, stéréotypes)

Les 14 diagrammes UML 2.x

Diagramme en cours de génération...

2. Diagramme de Use Case

Définition

Le diagramme de Use Case (cas d'utilisation) décrit les fonctionnalités du système du point de vue des acteurs externes.

Diagramme en cours de génération...

Les acteurs

Un acteur est un rôle joué par une entité externe qui interagit avec le système.

TypeExempleNotation
Acteur primaireClientstick figure
Acteur secondaireBanque (API)stick figure
Système externePasserelle de paiementstick figure + « system »

Les relations entre Use Cases

Diagramme en cours de génération...

Include : le use case de base inclut obligatoirement le use case inclus (ex: "Passer commande" inclut "Authentifier")

Extend : le use case d'extension s'ajoute optionnellement au use case de base (ex: "Passer commande" ← "Appliquer réduction")

Generalization : un use case enfant hérite du comportement du parent (ex: "Paiement" → "Paiement CB", "Paiement PayPal")

Exemple complet : SI de e-commerce

Diagramme en cours de génération...

3. Diagramme de Classes

Éléments d'une classe

Diagramme en cours de génération...
VisibilitéSymboleSignification
Public+Accessible partout
Privé-Accessible dans la classe
Protégé#Accessible dans les sous-classes
Package~Accessible dans le package

Attributs et méthodes

Format UML : visibilité nom: type [multiplicité] = valeur_par_défaut
Format UML : visibilité nom(paramètres): type_retour

Associations

Diagramme en cours de génération...

Multiplicités

NotationSignification
1Exactement un
0..1Zéro ou un
* ou 0..*Zéro ou plusieurs
1..*Au moins un
0..5Zéro à cinq
1..5,10..*1 à 5 ou 10 ou plus

Agrégation, Composition et Héritage

Diagramme en cours de génération...

Héritage (flèche vide triangle) : "est-un" (Voiture est un Véhicule)

  • Symboles : <|--

Composition (losange plein) : "est-partie-de" avec cycle de vie lié

  • Symboles : *--
  • Si le véhicule est détruit, le moteur aussi

Agrégation (losange vide) : "est-partie-de" sans cycle de vie lié

  • Symboles : o--
  • Si le véhicule est détruit, les roues peuvent être réutilisées

Association simple : lien sémantique

  • Symboles : -->

Association de classe

Diagramme en cours de génération...

Classe abstraite et interface

Diagramme en cours de génération...

4. Relations avancées

Dépendance

La dépendance est une relation d'utilisation temporaire (flèche pointillée).

Diagramme en cours de génération...

Association navigable

Diagramme en cours de génération...

Contraintes

Diagramme en cours de génération...

5. Exemple complet : système de réservation hôtelière

Diagramme en cours de génération...

Résumé

Diagramme en cours de génération...

Pour aller plus loin

  • "UML Distilled" - Martin Fowler
  • "The Unified Modeling Language Reference Manual" - Rumbaugh, Jacobson, Booch
  • Spécification OMG UML 2.5.1