Archyno
UMLFondamentaux

Quel diagramme UML utiliser

Les quatorze types de diagrammes UML côte à côte, classés par la question à laquelle chacun répond - pour choisir en trente secondes au lieu de dessiner le mauvais diagramme pendant une heure.

9 min de lectureUML 2.5.13 sur 35

La réponse courte

  • Les diagrammes de classes et de séquence portent l'essentiel des discussions de conception : de quoi le système est fait, et ce qui se passe à l'exécution.
  • L'activité, c'est le travail ; la séquence, la conversation. Demandez de quoi parle le diagramme avant de choisir.
  • Aucun diagramme UML ne montre un schéma de base de données. Le plus proche est le diagramme de classes, mais pour les tables et les clés, prenez un diagramme entité-association en pied-de-corbeau.
  • La plupart des systèmes ont besoin de trois ou quatre diagrammes, pas de quatorze. Chacun en plus est un artefact de plus à garder vrai.
Quatre paires. La question « quels types existent et comment sont-ils liés » mène au diagramme de classes ; « qui utilise le système et pour quoi » au diagramme de cas d'utilisation ; « que se passe-t-il, dans quel ordre » au diagramme de séquence ; et « qu'est-ce qui tourne où » au diagramme de déploiement.
Les quatre questions dont relèvent la plupart des diagrammes réels, et le diagramme que chacune réclame.

01Partez de la question, pas du catalogue#

Quatorze types de diagrammes, c'est un menu, et un menu est le mauvais outil quand on sait déjà ce qu'on veut dire. La voie fiable est d'écrire la question en une phrase et de laisser la phrase choisir le diagramme. Presque toute question réelle se ramène à l'une des quatre.

ÉlémentNotationCe que cela signifie
De quoi est-ce fait ?ClassesLes types, leurs attributs et leurs liens. Le diagramme de classes est la réponse par défaut à toute question structurelle, et celui dont les autres empruntent la notation.
Qui en attend quoi ?Cas d'utilisationActeurs, buts et frontière du système. Un diagramme de cas d'utilisation est un accord de périmètre, pas une conception.
Que se passe-t-il, dans quel ordre ?SéquenceLes participants et les messages entre eux, de haut en bas. Prenez un diagramme de séquence quand c'est l'ordre qui est difficile.
Qu'est-ce qui tourne où ?DéploiementNœuds, artefacts et chemins entre eux. Le diagramme de déploiement est ce dont une revue d'infrastructure ou de sécurité a réellement besoin.

Les quatre questions qui couvrent l'essentiel du travail.

02Les sept diagrammes de structure#

Un diagramme de structure montre de quoi le système est fait, et rien n'y change au cours du temps. Les sept réutilisent la notation du diagramme de classes, si bien que le sixième coûte bien moins cher que le premier.

ÉlémentNotationCe que cela signifie
ClassesQuotidienTypes, attributs, opérations et relations. Celui qu'on apprend en premier et celui qu'on dessinera le plus.
ObjetsOccasionnelUn instantané d'instances réelles. Un diagramme d'objets est la façon de montrer qu'un diagramme de classes déroutant tient bel et bien debout.
ComposantsCourantLes unités déployables et les interfaces qu'elles fournissent et requièrent. Le diagramme de composants est ce qu'UML offre de plus proche d'une image d'architecture.
DéploiementCourantNœuds, artefacts, et quel artefact est déployé sur quel nœud.
PaquetagesOccasionnelEspaces de noms et dépendances entre eux. Un diagramme de paquetages est ce qui rend visible un cycle entre modules.
Structure compositeRareL'intérieur d'un classificateur : parties, ports et connecteurs. Utile en embarqué et en ingénierie système, rarement ailleurs.
ProfilRareComment UML lui-même s'étend : stéréotypes et valeurs marquées. On lit un diagramme de profil beaucoup plus souvent qu'on n'en dessine.

03Les sept diagrammes de comportement#

Un diagramme de comportement montre ce qui se passe, dans quel ordre et sous quelles conditions. S'il y a un quand dans votre question, vous êtes ici. Quatre des sept sont des diagrammes d'interaction, qui diffèrent surtout par ce qu'ils mettent sur quel axe.

ÉlémentNotationCe que cela signifie
Cas d'utilisationCourantActeurs, buts et périmètre. Il ne dit délibérément rien du comment.
ActivitéQuotidienÉtapes, branches, concurrence et responsabilité. Le diagramme d'activité est l'organigramme d'UML, avec une vraie sémantique attachée.
ÉtatsCourantLe cycle de vie d'un objet : états, événements et transitions. Un diagramme d'états gagne sa place dès qu'une colonne de statut existe.
SéquenceQuotidienMessages entre participants, ordonnés vers le bas de la page.
CommunicationOccasionnelLa même interaction dessinée en réseau, avec des messages numérotés. Un diagramme de communication montre qui parle à qui plutôt que quand.
TempsRareL'état sur un axe de temps. Un diagramme de temps sert quand le délai lui-même est l'exigence.
Vue d'ensemble des interactionsRareUn diagramme d'activité dont les nœuds sont des interactions entières : la page de sommaire d'un ensemble de diagrammes de séquence.

04Les quatre qui portent la charge#

La plupart des équipes dessinent quatre types et en lisent un cinquième. Ce n'est pas un manque d'ambition : c'est ce qui arrive quand chaque diagramme doit rester vrai. Les dix autres valent la peine d'être lisibles quand on en croise un, ce qui est un investissement bien plus petit que de savoir en dessiner un de tête.

À utiliser quand

  • Classes - le domaine, une fois, tenu à jour. Le diagramme le plus susceptible d'être encore vrai un an plus tard.
  • Séquence - les un ou deux flux vraiment difficiles à expliquer en un paragraphe.
  • Activité - un processus qui traverse les équipes, où le couloir est tout l'intérêt.
  • Déploiement - tout système dont l'infrastructure ne saute pas aux yeux depuis le dépôt.

Préférer autre chose quand

  • Structure composite, sauf en embarqué ou en ingénierie système.
  • Temps, sauf si un délai en millisecondes fait partie de l'exigence.
  • Vue d'ensemble des interactions, sauf si vous avez déjà plusieurs diagrammes de séquence à indexer.
  • Profil, sauf si vous étendez UML lui-même au lieu de l'utiliser.

Si vous apprenez plutôt que vous ne choisissez, l'ordre est le même : classes d'abord, parce que six des diagrammes de structure réutilisent sa notation ; puis séquence, parce que c'est celui qu'on demande par son nom ; puis activité et cas d'utilisation, qui sont peu coûteux dès qu'on sait lire une garde. La référence des symboles couvre le vocabulaire qu'ils partagent tous.

05Quand la réponse n'est pas UML du tout#

Trois questions ressemblent à des questions UML sans en être. Se tromper de notation coûte plus cher que se tromper de diagramme, parce que le public ne sait pas la lire non plus.

ÉlémentNotationCe que cela signifie
Un schéma de base de donnéesERPrenez un diagramme entité-association en notation pied-de-corbeau. Les tables et les clés ne sont pas des classes et des opérations.
Un processus métierBPMNPrenez BPMN quand le public est constitué d'analystes métier ou que le modèle est destiné à un moteur. Un diagramme d'activité n'est la bonne réponse que si le public est fait d'ingénieurs.
Un paysage d'entrepriseArchiMatePrenez ArchiMate quand le sujet couvre le métier, l'applicatif et la technologie. UML n'a pas de vocabulaire pour une capacité métier.

06Ce qu'il faut retenir#

En une ligne chacun

  1. 01Écrivez d'abord la question en une phrase. C'est la phrase qui choisit le diagramme, jamais le catalogue.
  2. 02Les diagrammes de structure répondent de quoi c'est fait ; ceux de comportement, ce qui se passe. Un quand dans la question veut dire comportement.
  3. 03Quatre types portent l'essentiel du travail réel : classes, séquence, activité et déploiement.
  4. 04L'activité parle de travail et de responsabilité ; la séquence, de messages et de leur ordre.
  5. 05Si le sujet est un schéma, un processus métier ou un paysage d'entreprise, la réponse est ER, BPMN ou ArchiMate plutôt qu'UML.

07Questions fréquentes#

Quel diagramme UML est le plus utilisé en pratique ?

Le diagramme de classes, très largement, puis le diagramme de séquence. Ensemble ils couvrent l'essentiel des discussions de conception : de quoi le système est fait, et ce qui se passe à l'exécution. Viennent ensuite les cas d'utilisation et les activités, plutôt côté exigences que conception.

Quel diagramme UML montre le déroulement d'un processus ?

Le diagramme d'activité. Il a des actions, des décisions avec gardes, des barres de parallélisme et des couloirs pour la responsabilité : exactement le vocabulaire d'un processus. Prenez un diagramme de séquence quand l'important est qui envoie quel message.

Diagramme d'activité ou diagramme de séquence ?

Demandez de quoi parle le diagramme. S'il parle des étapes d'un processus et de qui en est responsable, prenez un diagramme d'activité. S'il parle des messages échangés entre participants précis et de leur ordre, prenez un diagramme de séquence. L'activité, c'est le travail ; la séquence, la conversation.

Quel diagramme UML montre la structure de la base de données ?

Aucun directement. Le diagramme de classes s'en approche et sert souvent de modèle de domaine, mais il décrit des types et des comportements, pas des tables et des clés. Pour un schéma, utilisez un diagramme entité-association en notation pied-de-corbeau, conçue pour cela.

Combien de diagrammes UML faut-il pour un système ?

Trois ou quatre en général, pas quatorze. Un diagramme de classes pour le domaine, un diagramme de séquence pour le ou les flux difficiles, et un diagramme de déploiement si l'infrastructure n'est pas évidente. Chaque diagramme de plus est un artefact de plus à garder vrai.

Dans cette série

À lire aussi

Tous les articles