« La constance bat le talent »
Contact
Cours interactif — 14 diagrammes UML
U

UML

Unified Modeling Language

« Bien penser avant de construire ». Apprenez à modéliser des systèmes logiciels avec 14 diagrammes : classes, cas d'utilisation, séquence, états, activités, et plus. Cours complet avec quiz interactifs, glossaire, mode sombre/clair et couleurs personnalisables.

14
Diagrammes
2
Familles
20
Questions quiz
Photo de Baba Niang

Auteur du cours

Baba Niang

« La constance bat le talent »

🌱 UML depuis zéro

Le parcours débutant — 11 étapes

Tu n'y connais rien à UML ? Parfait. Ce parcours te mène de zéro jusqu'à modéliser un système complet. Chaque étape suit la même méthode : Comprendre → Exemple → Différence → Erreur → Mini-quiz, avec 3 niveaux : 🟢 je comprends, 🟡 je sais lire, 🔴 je sais faire.

🎓 Fil rouge : un système de gestion d'université

Pendant tout le cours, on utilise le MÊME système : une université avec des Étudiants, des Professeurs et des Cours. Tu apprends une nouvelle notion ? Tu la vois appliquée à l'université. Résultat : tu connais déjà le système, tu te concentres uniquement sur la nouvelle manière de le représenter.

Comment suivre ce parcours

Ouvre chaque étape dans l'ordre. Commence par le niveau 🟢 « Je comprends », puis passe à 🟡 « Je sais lire », puis à 🔴 « Je sais faire ». Réponds au mini-quiz avant de passer à l'étape suivante. À la fin, le grand exercice réutilise TOUT ce que tu as appris.
UML — Parcours débutantÉtape 1 / 11
01
Étape 1 / 11⏱ 5 min

Découvrir UML

UML, c'est quoi ? Et pourquoi l'utiliser ?

Étape 1

Comprendre

UML est un langage graphique qui permet de représenter un système avant ou pendant sa conception — comme un architecte dessine le plan d'une maison.

Problème

On veut construire un système informatique.

Un système devient complexe : beaucoup d'éléments, de liens, d'acteurs.

UML

On représente le système avec des dessins standardisés.

Ces dessins sont lus par tous les acteurs du projet :

Étudiant
Développeur
Université
Système

Du problème à la solution : UML aide à représenter un système complexe.

Étape 2

Exemple réel

Pour construire une maison, on ne pose pas les briques au hasard : on dessine d'abord les plans. Pour construire un logiciel, c'est pareil : on dessine d'abord avec UML. Plusieurs développeurs peuvent ainsi se mettre d'accord avant d'écrire une seule ligne de code.

Idée
Comprendre
Modéliser
Communiquer
Développer

UML intervient surtout à l'étape de MODÉLISATION et COMMUNICATION.

Étape 3

Différence

UML vs langage de programmation

UMLLangage de programmation
Langage GRAPHIQUELangage de CODE
On MODÉLISEOn PROGRAMME
Avant de coderPendant qu'on code
Étape 4

Erreur fréquente

UML sert à écrire du code.

UML sert à RÉFLÉCHIR sur le code avant de l'écrire. Ce n'est pas un langage de programmation.

Étape 5

Mini quiz

UML est-il un langage de programmation ?

02
Étape 2 / 11⏱ 8 min

Comprendre une classe

Le modèle qui décrit un type d'objet

Étape 1

Comprendre

Une classe est un MODÈLE qui décrit un type d'objet. Elle regroupe des données (les attributs) et des actions (les méthodes).

Étudiant
- nom : string
- email : string
- âge : int
+ s'inscrire(cours)
+ consulterNotes() : list

La classe Étudiant décrit TOUT ce que peuvent avoir les étudiants.

La classe Étudiant : un rectangle à 3 compartiments (Nom / Attributs / Méthodes).

Étape 2

Exemple réel

Dans notre université, un Étudiant a un nom, un email et un âge (attributs). Il peut s'inscrire à un cours et consulter ses notes (méthodes). La classe Étudiant décrit TOUT ce que peuvent avoir les étudiants — c'est le modèle général.

Étudiant
- nom : string
- email : string
- âge : int
+ s'inscrire(cours)
+ consulterNotes() : list

La classe Étudiant décrit TOUT ce que peuvent avoir les étudiants.

Étape 3

Différence

Classe vs Objet

ClasseObjet
Le MODÈLEUne INSTANCE concrète
ÉtudiantBaba
GénéralParticulier
Le plan d'une maisonLa maison construite
Étape 4

Erreur fréquente

Une classe EST une personne réelle.

Une classe DÉCRIPT ce que peuvent avoir les objets. Étudiant n'est pas une personne — c'est le modèle de toutes les personnes étudiantes.

Étape 5

Mini quiz

Ali est-il une classe ou un objet ?

03
Étape 3 / 11⏱ 6 min

Comprendre un objet

Classe ≠ objet : le modèle vs l'instance

Étape 1

Comprendre

Un objet est une INSTANCE concrète d'une classe, à un instant donné. Le nom d'un objet est souligné et s'écrit : nomObjet : Classe.

baba : Étudiant
nom =« Baba Niang »
email =« baba@univ.edu »
âge =22
awa : Étudiant
nom =« Awa Diop »
email =« awa@univ.edu »
âge =20

Deux OBJETS de la classe Étudiant. Le nom est souligné : ce sont des instances.

Deux objets de la classe Étudiant : baba et awa, avec leurs valeurs concrètes.

Étape 2

Exemple réel

La classe Étudiant dit 'un étudiant a un nom'. Les objets concrets sont : baba:Étudiant (nom = 'Baba Niang', email = 'baba@univ.edu') et awa:Étudiant (nom = 'Awa Diop', email = 'awa@univ.edu'). On peut créer autant d'objets qu'on veut à partir d'une seule classe.

baba : Étudiant
nom =« Baba Niang »
email =« baba@univ.edu »
âge =22
awa : Étudiant
nom =« Awa Diop »
email =« awa@univ.edu »
âge =20

Deux OBJETS de la classe Étudiant. Le nom est souligné : ce sont des instances.

Étape 3

Différence

Classe vs Objet (rappel visuel)

Classe (le modèle)Objet (l'instance)
Étudiantbaba : Étudiant
Attributs abstraits (nom, email)Valeurs concrètes (nom = 'Baba')
Une seule définitionAutant d'instances qu'on veut
Étape 4

Erreur fréquente

Écrire 'Étudiant' (sans soulignement) pour représenter un objet.

Le nom d'un objet est SOULIGNÉ et s'écrit 'nomObjet : Classe' (ex: baba : Étudiant). Le soulignement indique une instance.

Étape 5

Mini quiz

Comment différencier visuellement un objet d'une classe en UML ?

04
Étape 4 / 11⏱ 10 min

Relier les classes

Association, rôles et multiplicités

Étape 1

Comprendre

Une ASSOCIATION est un lien simple entre deux classes. On peut y ajouter un RÔLE (le rôle joué par chaque côté) et une MULTIPLICITÉ (combien d'objets sont liés).

Étudiant
- nom : string
Cours
- intitulé : string

Un Étudiant suit 1 à plusieurs Cours. Un Cours est suivi par 0 à plusieurs Étudiants.

Un Étudiant suit 1 à plusieurs Cours. Un Cours est suivi par 0 à plusieurs Étudiants.

Étape 2

Exemple réel

Dans l'université : un Étudiant 'suit' des Cours (rôle = 'suit'), et un Cours est 'suivi par' des Étudiants. La multiplicité '1..*' côté Cours signifie qu'un étudiant suit AU MOINS 1 cours. La multiplicité '*' côté Étudiant signifie qu'un cours peut avoir 0 ou plusieurs étudiants.

Étudiant
- nom : string
Cours
- intitulé : string

Un Étudiant suit 1 à plusieurs Cours. Un Cours est suivi par 0 à plusieurs Étudiants.

Étape 3

Différence

Les 4 multiplicités à connaître

SymboleSignification
1Exactement UN
0..1ZÉRO ou UN
* (ou 0..*)ZÉRO ou PLUSIEURS
1..*UN ou PLUSIEURS
Étape 4

Erreur fréquente

Mettre la multiplicité du mauvais côté de la relation.

La multiplicité se lit du CÔTÉ OPPOSÉ à la classe de référence. 'Étudiant 1 ─ 0..* Cours' se lit : 'Un Étudiant possède 0 à plusieurs Cours'.

Étape 5

Mini quiz

Comment lit-on « Étudiant 1 ──── 0..* Cours » ?

05
Étape 5 / 11⏱ 12 min

Les relations importantes

Généralisation, agrégation, composition

Étape 1

Comprendre

Au-delà de l'association simple, il existe 3 relations importantes : la GÉNÉRALISATION (héritage), l'AGRÉGATION (contient, faible) et la COMPOSITION (possède, fort).

▷ Héritage

Généralisation (héritage)

PersonneÉtudiantProfesseur

Étudiant et Professeur SONT des Personne (héritage).

◇ Lien faible

Agrégation

UniversitéDépartement

L'Université REGROUPE des Départements (lien faible — un département peut exister ailleurs).

◆ Lien fort

Composition

UniversitéBâtiment

L'Université POSSÈDE ses Bâtiments (lien fort — pas de bâtiment sans université).

Généralisation (Personne ▷ Étudiant), Agrégation (Université ◇ Département), Composition (Université ◆ Bâtiment).

Étape 2

Exemple réel

Dans l'université : (1) GÉNÉRALISATION — Étudiant et Professeur sont des Personne (héritage). (2) AGRÉGATION — l'Université regroupe des Départements (un département peut exister sans l'université). (3) COMPOSITION — l'Université possède ses Bâtiments (pas de bâtiment sans université).

▷ Héritage

Généralisation (héritage)

PersonneÉtudiantProfesseur

Étudiant et Professeur SONT des Personne (héritage).

◇ Lien faible

Agrégation

UniversitéDépartement

L'Université REGROUPE des Départements (lien faible — un département peut exister ailleurs).

◆ Lien fort

Composition

UniversitéBâtiment

L'Université POSSÈDE ses Bâtiments (lien fort — pas de bâtiment sans université).

Étape 3

Différence

Agrégation ◇ vs Composition ◆

Agrégation ◇ (losange vide)Composition ◆ (losange plein)
Contient (FAIBLE)Possède (FORT)
L'enfant survit au parentL'enfant meurt avec le parent
Université ◇── DépartementUniversité ◆── Bâtiment
Étape 4

Erreur fréquente

Utiliser la composition ◆ quand l'élément peut exister seul.

Composition = lien FORT (l'enfant meurt avec le parent). Agrégation = lien FAIBLE (l'enfant survit). Demande-toi : 'X peut-il exister sans Y ?'

Étape 5

Mini quiz

Une Équipe ◇── Joueurs. Si l'équipe disparaît, les joueurs...

06
Étape 6 / 11⏱ 10 min

Décrire les besoins

Le diagramme de cas d'utilisation

Étape 1

Comprendre

Le diagramme de cas d'utilisation montre les FONCTIONNALITÉS offertes par le système, vues par les ACTEURS (personnes ou systèmes externes).

Système : Gestion UniversitaireÉtudiantProfesseurS'inscrire àun coursConsulter sesnotesSaisir desnotesConsulter saclasse
Acteur (bâtonnet)Cas d'utilisation (ellipse)reliés par une ligne pleine

L'étudiant peut s'inscrire à un cours et consulter ses notes.

Étape 2

Exemple réel

Dans l'université : l'Étudiant (acteur) peut 'S'inscrire à un cours' et 'Consulter ses notes' (cas d'utilisation). Le Professeur (acteur) peut 'Saisir des notes' et 'Consulter sa classe'. Ces cas d'utilisation sont dans la frontière du système 'Gestion Universitaire'.

Système : Gestion UniversitaireÉtudiantProfesseurS'inscrire àun coursConsulter sesnotesSaisir desnotesConsulter saclasse
Acteur (bâtonnet)Cas d'utilisation (ellipse)reliés par une ligne pleine
Étape 3

Différence

include <<include>> vs extend <<extend>>

<<include>><<extend>>
TOUJOURS exécuté (obligatoire)PARFOIS exécuté (sous condition)
S'inscrire INCLUDE Vérifier éligibilitéPayer EXTEND Appliquer code promo
A a BESOIN de BA AJOUTE un comportement à B
Étape 4

Erreur fréquente

Utiliser <<extend>> pour une action obligatoire.

include = TOUJOURS (obligatoire). extend = PARFOIS (optionnel, sous condition). Si l'action est obligatoire → include.

Étape 5

Mini quiz

Dans un système universitaire, 'S'inscrire' exécute TOUJOURS 'Vérifier les prérequis'. Quelle relation ?

07
Étape 7 / 11⏱ 12 min

Montrer les interactions

Séquence + communication

Étape 1

Comprendre

Le diagramme de SÉQUENCE montre QUI envoie QUEL message à QUI, et dans quel ORDRE (le temps va de haut en bas). Le diagramme de COMMUNICATION montre la même chose mais en mettant l'accent sur la STRUCTURE des objets.

ÉtudiantApplicationBaseDeDonnées1: login(email, mdp)2: vérifier(mdp)3: OK4: Bienvenue

L'étudiant se connecte : 4 messages dans l'ordre chronologique (de haut en bas).

L'étudiant se connecte : séquence des messages entre Étudiant, Application et Base de données.

Étape 2

Exemple réel

Quand l'étudiant se connecte à l'application universitaire : (1) l'Étudiant envoie 'login(email, mdp)' à l'Application, (2) l'Application envoie 'vérifier(mdp)' à la Base de données, (3) la Base répond 'OK', (4) l'Application affiche 'Bienvenue'. Le temps s'écoule de haut en bas.

ÉtudiantApplicationBaseDeDonnées1: login(email, mdp)2: vérifier(mdp)3: OK4: Bienvenue

L'étudiant se connecte : 4 messages dans l'ordre chronologique (de haut en bas).

Étape 3

Différence

Séquence vs Communication

SéquenceCommunication
Insiste sur l'ORDRE (le temps)Insiste sur la STRUCTURE des objets
Lignes de vie verticales + flèches horizontalesObjets + flèches numérotées
Temps de haut en basOrdre par numérotation 1, 2, 3...
Étape 4

Erreur fréquente

Placer les messages dans le désordre dans une séquence.

Le temps va de HAUT en BAS. Les numéros des messages (1, 2, 3...) doivent suivre l'ordre chronologique.

Étape 5

Mini quiz

Dans un diagramme de séquence, dans quelle direction s'écoule le temps ?

08
Étape 8 / 11⏱ 12 min

Décrire les comportements

États + activités

Étape 1

Comprendre

Le diagramme d'ÉTATS montre le CYCLE DE VIE d'un objet (comment il change dans le temps). Le diagramme d'ACTIVITÉS montre un PROCESSUS / workflow (les étapes, dans quel ordre, avec quelles décisions).

[validée par prof][payée][annulée]En attenteValidéeConfirméeAnnulée

Cycle de vie d'une Inscription : En attente → Validée → Confirmée (ou Annulée).

Cycle de vie d'une inscription : En attente → Validée → Confirmée (ou Annulée).

Étape 2

Exemple réel

Dans l'université : (1) ÉTATS — une Inscription passe de 'En attente' à 'Validée' (si le professeur valide) puis à 'Confirmée' (après paiement), ou à 'Annulée'. (2) ACTIVITÉS — le processus d'inscription : Saisir le formulaire → Vérifier les prérequis → [décision : OK ?] → Payer les frais → Confirmer.

[oui][non]Remplir le formulaireDocuments OK ?Payer les fraisConfirmer l'inscription

Processus d'inscription : un workflow avec décision (oui / non).

Étape 3

Différence

État vs Activité

États (cycle de vie)Activités (processus)
Comment un OBJET changeLes ÉTAPES d'un processus
Inscription : En attente → ValidéeSaisir → Vérifier → Payer → Confirmer
États stables + transitionsActions + décisions (◇)
Étape 4

Erreur fréquente

Confondre états et activités.

États = cycle de VIE d'un objet (comment il change dans le temps). Activités = les ÉTAPES d'un processus (ce qu'on fait, dans quel ordre).

Étape 5

Mini quiz

Vous voulez montrer le processus d'inscription (étapes avec décision). Quel diagramme ?

09
Étape 9 / 11⏱ 10 min

Décrire l'architecture

Composants + déploiement + paquetages

Étape 1

Comprendre

Les diagrammes d'ARCHITECTURE montrent comment le système est ORGANISÉ : COMPOSANTS (modules logiciels), DÉPLOIEMENT (machines physiques) et PAQUETAGES (regroupements logiques).

1. Composants (logiciels)

Interface Web
Frontend
Service Inscription
Logique métier
Base de données
Persistance
déployé sur

2. Déploiement (machines physiques)

«node»Poste Client(Navigateur)
HTTP
«node»Serveur Web(Application)
TCP/IP
«node»Serveur BD(PostgreSQL)

Architecture : 3 composants logiciels déployés sur 3 machines physiques.

Architecture de l'université : Interface Web → Service Inscription → Base de données, déployée sur 3 machines.

Étape 2

Exemple réel

Dans l'université : (1) COMPOSANTS — Interface Web, Service Inscription, Base de données, chacun avec un rôle précis. (2) DÉPLOIEMENT — Poste Client (navigateur de l'étudiant) → Serveur Web (Application) → Serveur BD (PostgreSQL). (3) PAQUETAGES — les classes sont regroupées : 'ihm', 'métier', 'accès-données'.

1. Composants (logiciels)

Interface Web
Frontend
Service Inscription
Logique métier
Base de données
Persistance
déployé sur

2. Déploiement (machines physiques)

«node»Poste Client(Navigateur)
HTTP
«node»Serveur Web(Application)
TCP/IP
«node»Serveur BD(PostgreSQL)

Architecture : 3 composants logiciels déployés sur 3 machines physiques.

Étape 3

Différence

Composant vs Nœud de déploiement

Composant ( logiciel)Nœud (matériel)
Module LOGICIELMACHINE physique
Service InscriptionServeur Web (Apache)
Expose des interfacesHéberge des artefacts (JAR, WAR)
Étape 4

Erreur fréquente

Confondre composants (logiciels) et nœuds (matériels).

Composant = module logiciel (Service Inscription). Nœud = machine physique (Serveur Web). Les composants sont DÉPLOYÉS sur les nœuds.

Étape 5

Mini quiz

Lequel est un NŒUD de déploiement (machine) ?

10
Étape 10 / 11⏱ 8 min

Les autres diagrammes

Structure composite, profils, vue d'ensemble, temps

Étape 1

Comprendre

UML a 4 diagrammes plus avancés : la STRUCTURE COMPOSITE (intérieur d'une classe), les PROFILS (extensions UML), la VUE D'ENSEMBLE (combinaison d'interactions) et le TEMPS (chronologie avec contraintes temporelles).

Université« structure composite »

Parties internes (rôles) :

Direction
multiplicité :1
dirige l'université
Département
multiplicité :1..*
regroupe les formations
Salle
multiplicité :1..*
accueille les cours

Connecteurs (composition)

  • ◆── Université → 1 Direction
  • ◆── Université → 1..* Département
  • ◆── Université → 1..* Salle

La classe Université contient 1 Direction, plusieurs Départements, plusieurs Salles.

Structure composite : l'Université contient 1 Direction, plusieurs Départements, plusieurs Salles.

Étape 2

Exemple réel

Dans l'université : (1) STRUCTURE COMPOSITE — la classe Université contient 1 Direction, plusieurs Départements, plusieurs Salles. (2) PROFILS — on peut stéréotyper une classe '«service»' pour marquer que c'est une API REST. (3) VUE D'ENSEMBLE — combine plusieurs séquences en une vue globale. (4) TEMPS — montre précisément à quel moment un étudiant reçoit sa confirmation (ex: à t=200ms).

Université« structure composite »

Parties internes (rôles) :

Direction
multiplicité :1
dirige l'université
Département
multiplicité :1..*
regroupe les formations
Salle
multiplicité :1..*
accueille les cours

Connecteurs (composition)

  • ◆── Université → 1 Direction
  • ◆── Université → 1..* Département
  • ◆── Université → 1..* Salle

La classe Université contient 1 Direction, plusieurs Départements, plusieurs Salles.

Étape 3

Différence

Les 4 diagrammes avancés

DiagrammeUsage
Structure compositeIntérieur d'une classe complexe
ProfilsÉtendre UML avec des stéréotypes
Vue d'ensembleCombiner plusieurs interactions
TempsChronologie avec contraintes temporelles
Étape 4

Erreur fréquente

Penser que ces 4 diagrammes sont inutiles.

Ils sont plus avancés mais précieux : la structure composite pour détailler une classe complexe, les profils pour adapter UML à un domaine, etc.

Étape 5

Mini quiz

Quel diagramme montre la chronologie précise des changements d'état (en ms) ?

11
Étape 11 / 11

Exercices complets

Construisons ensemble le système d'une université, en réutilisant TOUT ce que tu as appris.

Construisons ensemble le système d'une université

Tu vas progressivement produire 10 diagrammes pour modéliser un système complet. Ouvre chaque étape, observe le diagramme, puis marque-la comme faite. À la fin, tu auras modélisé un système universitaire complet avec UML !

Progression :0 / 10

On commence par identifier les classes principales du système : Étudiant, Professeur, Cours, Personne.

Étudiant
- nom : string
- email : string
- âge : int
+ s'inscrire(cours)
+ consulterNotes() : list

La classe Étudiant décrit TOUT ce que peuvent avoir les étudiants.

Évaluation finale

Quiz final — Teste tes connaissances

20 questions pour vérifier ta compréhension d'UML. Ton score est sauvegardé automatiquement.

Votre progression

0 / 20 questions répondues

Score : 0 / 20
Question 1 sur 20

Que signifie l'acronyme UML ?

Aide-mémoire

Glossaire UML

Plus de 50 termes UML avec leurs définitions. Recherche et filtres par catégorie.

51 termes trouvés

*

Relation

Multiplicité : zéro ou plusieurs objets (alias 0..*).

0..1

Relation

Multiplicité : zéro ou un objet.

1

Relation

Multiplicité : exactement un objet.

1..*

Relation

Multiplicité : un ou plusieurs objets.

Acteur

Comportemental

Personne ou système externe qui interagit avec le système. Représenté par un bâtonnet.

Activité

Comportemental

Étape d'un processus dans un diagramme d'activités. Représentée par un rectangle arrondi.

Agrégation

Relation

Relation « contient » faible (losange vide ◇). L'élément contenu peut exister sans le conteneur. Ex : Panier ◇ Produits.

alt

Comportemental

Fragment « Alternative » dans un diagramme de séquence — équivalent à if/else.

Artefact

Structurel

Fichier logiciel (JAR, WAR, EXE) déployé sur un nœud dans un diagramme de déploiement.

Association

Relation

Relation simple entre deux classes (ligne pleine). Ex : Client — Compte.

Attribut

Structurel

Donnée d'une classe. S'écrit : visibilité nom : type (ex : - solde : double).

Cas d'utilisation

Comportemental

Fonctionnalité offerte à un acteur. Représentée par une ellipse.

Classe

Structurel

Modèle regroupant des attributs (données) et des méthodes (actions). Représentée par un rectangle à 3 compartiments.

Compartiment

Structurel

Une des 3 zones d'une classe UML : Nom, Attributs, Méthodes.

Composant

Structurel

Module logiciel avec un rôle précis, exposant/requérant des interfaces. Rectangle avec pictogramme composant.

Composition

Relation

Relation « possède » forte (losange plein ◆). L'élément contenu ne peut pas exister sans le conteneur. Ex : Maison ◆ Pièces.

Décision

Comportemental

Losange ◇ dans un diagramme d'activités représentant un choix (oui/non).

Diagramme comportemental

Comportemental

Famille de 7 diagrammes qui décrivent « ce que le système FAIT » (cas d'utilisation, séquence, communication, états, activités, vue d'ensemble, temps).

Diagramme structurel

Structurel

Famille de 7 diagrammes qui décrivent « ce que le système EST » (classes, objets, composants, déploiement, paquetages, structure composite, profils).

Encapsulation

Général

Principe qui consiste à cacher les détails internes (attributs privés) et n'exposer que des méthodes publiques.

État

Comportemental

Situation stable d'un objet dans un diagramme d'états-transitions. Représenté par un rectangle arrondi.

État final

Comportemental

Point d'arrivée d'un diagramme d'états. Représenté par un cercle cerclé ◉.

État initial

Comportemental

Point de départ d'un diagramme d'états. Représenté par un disque plein ●.

Extension (<<extend>>)

Comportemental

Relation entre cas : le cas d'extension s'exécute SOUS CONDITION (optionnel).

Fork / Join

Comportemental

Trait épais ▬ dans un diagramme d'activités pour diviser (fork) ou synchroniser (join) des branches parallèles.

Fragment combiné

Comportemental

Cadre dans un diagramme de séquence pour exprimer un comportement conditionnel ou répétitif : alt, opt, loop, par, ref.

Frontière du système

Comportemental

Rectangle qui englobe les cas d'utilisation, délimitant le système de son extérieur.

Garde

Comportemental

Condition (entre crochets [...]) qui doit être vraie pour franchir une transition.

Généralisation d'acteur

Comportemental

Un acteur spécialisé hérite du comportement d'un acteur général. Ex : Client VIP ▷ Client.

Héritage

Relation

Relation « est un » (flèche triangulaire vide ▷). La sous-classe hérite des attributs et méthodes de la super-classe. Ex : Chien ▷ Animal.

Inclusion (<<include>>)

Comportemental

Relation entre cas : le cas de base exécute TOUJOURS le cas inclus (obligatoire).

Instance

Structurel

Objet réel créé à partir d'une classe (la maison construite vs le plan).

Interface

Structurel

Contrat d'utilisation d'un composant : ce qu'il offre (fourni) ou ce dont il a besoin (requis).

Ligne de vie

Comportemental

Ligne pointillée verticale sous un objet dans un diagramme de séquence, représentant sa durée de vie.

loop

Comportemental

Fragment « Répétition » dans un diagramme de séquence — équivalent à while/for.

Message

Comportemental

Flèche horizontale entre lignes de vie dans un diagramme de séquence. Plein = appel synchrone, pointillé = retour.

Méthode

Structurel

Action d'une classe. S'écrit : visibilité nom(): typeRetour (ex : + consulterSolde() : double).

Multiplicité

Relation

Nombre d'objets liés d'un côté d'une relation. Se lit du côté opposé à la classe de référence.

Nœud

Structurel

Machine ou environnement d'exécution dans un diagramme de déploiement.

Objet

Structurel

Instance concrète d'une classe à un instant T. Nom souligné : nomObjet : Classe.

OMG

Général

Object Management Group — organisme qui maintient le standard UML.

opt

Comportemental

Fragment « Optionnelle » dans un diagramme de séquence — équivalent à if (une branche conditionnelle).

Paquetage

Structurel

Regroupement logique de classes, représenté par un dossier avec onglet. Les dépendances se notent par flèche pointillée.

Paquetage (~)

Visibilité

Accessible uniquement dans le même paquetage.

par

Comportemental

Fragment « Parallèle » dans un diagramme de séquence — exécution concurrente.

Privé (-)

Visibilité

Accessible uniquement à l'intérieur de la classe (encapsulation).

Protégé (#)

Visibilité

Accessible dans la classe et ses sous-classes (héritage).

Public (+)

Visibilité

Accessible partout, y compris à l'extérieur de la classe.

Transition

Comportemental

Changement d'état déclenché par un événement dans un diagramme d'états-transitions.

UML

Général

Unified Modeling Language — langage graphique normalisé pour modéliser des systèmes logiciels.

Visibilité

Visibilité

Niveau d'accessibilité d'un attribut ou d'une méthode : + public, - privé, # protégé, ~ paquetage.

Conclusion

Tu sais maintenant modéliser avec UML

Tu es passé de zéro à la modélisation complète d'un système universitaire. Tu comprends les 14 diagrammes, les relations, les comportements et l'architecture. UML n'est plus un mystère pour toi — c'est devenu un outil de réflexion.

« La modélisation, c'est comme la lecture : on commence par les lettres, puis les mots, puis les phrases, puis ses propres histoires. »