Read this post in: de_DEen_USes_EShi_INid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Guide complet sur les diagrammes d’activité UML

Le diagramme d’activité aide à décrire le flux de contrôle du système cible, par exemple en explorant des règles et des opérations commerciales complexes, en décrivant des cas d’utilisation et en modélisant des processus métiers.

Introduction

Les diagrammes d’activité font partie intégrante du langage de modélisation unifié (UML) et sont utilisés pour modéliser les aspects dynamiques d’un système. Ils se concentrent sur le séquence et les conditions pour coordonner les comportements de niveau inférieur, plutôt que sur les classificateurs qui détiennent ces comportements. Ceux-ci sont couramment appelés flux de contrôle et modèles de flux d’objets.

Les comportements coordonnés par ces modèles peuvent être initiés parce que :

  • D’autres comportements terminent leur exécution

  • Les objets et les données deviennent disponibles

  • Des événements se produisent en dehors du flux

    visual Paradigm Activity Diagram Tool
    Outil de diagramme d’activité de visual Paradigm


Objectif et applications

Les diagrammes d’activité servent à plusieurs fins de modélisation :

🔹 Calcul procédural: Les activités agissent comme des méthodes correspondant aux opérations sur les classes dans les modèles orientés objet.

🔹 Ingénierie des processus métiers: Appliqué à la modélisation organisationnelle pour la conception de flux de travail, où les événements peuvent provenir à l’intérieur du système (achèvement d’une tâche) ou à l’extérieur (interactions avec les clients).

🔹 Modélisation des systèmes d’information: Utilisé pour spécifier les processus au niveau du système et coordonner des règles commerciales complexes.

🔹 Élaboration des cas d’utilisation: Aident à décrire le flux interne des opérations au sein d’un scénario de cas d’utilisation.


Diagramme d’activité exemple

Activity Diagram Sample

Exemple d’un diagramme d’activité typique montrant le flux de contrôle, les points de décision et le traitement parallèle.


Référence complète des notations

Ci-dessous se trouve une référence complète de toutes les notations du diagramme d’activité, incluant des icônes visuelles, des définitions et des propriétés clés.

Éléments fondamentaux

Activité

Activity

Définition: Une activité spécifie la coordination des exécutions de comportements secondaires, en utilisant un modèle de flux de contrôle et de données. Le flux d’exécution est modélisé sous forme de nœuds d’activité reliés par des arêtes d’activité.

Propriétés clés:

Propriété Description
Nom Le nom de l’activité
Langage Langage de modélisation utilisé
Précondition Contraintes qui doivent être remplies lors de l’appel
Postcondition Contraintes remplies après la fin de l’exécution
Exécution unique Si vrai, toutes les invocations sont gérées par la même exécution
Lecture seule Si vrai, l’activité ne peut pas effectuer de modifications non locales
Réentrant Si le comportement peut être appelé pendant son exécution
Paramètres Ordre et type des arguments pour l’appel

Nœud de paramètre d’activité

Activity Parameter Node

Définition: Des nœuds d’objet situés au début et à la fin des flux, qui fournissent un moyen d’accepter les entrées d’une activité et de produire des sorties de l’activité, via les paramètres d’activité.

Propriétés clés:

Propriété Description
Paramètre Le paramètre pour lequel le nœud accepte/fournit des valeurs
Limite supérieure Nombre maximum de jetons autorisés dans le nœud
Type d’ordonnancement La manière dont les jetons sont ordonnés pour la sélection
Direction Indique si le paramètre est d’entrée ou de sortie (par défaut : entrée)
Type Le type du nœud de paramètre d’activité
Doit être isolé Si vrai, les actions s’exécutent en isolation (par défaut : faux)

Action

Action

Définition: Représente une étape unique au sein d’une activité qui n’est pas décomposée davantage. Une action ne commencera pas son exécution tant que toutes les conditions d’entrée ne seront pas satisfaites.

Propriétés clés:

Propriété Description
Nom Le nom de l’action
Visibilité Accessibilité au sein des espaces de noms
Type Appel d’une action de comportement ou d’une action d’appel d’opération
Effet L’effet de la complétion de l’action
Doit isoler Isole les effets des actions situées à l’extérieur du groupe

Actions de gestion des événements

Action d’acceptation d’événement

Accept Event Action

Définition: Une action qui attend la survenue d’un événement répondant à des conditions spécifiées.


Action d’acceptation d’événement temporel

Accept Time Event Action

Définition: Si la survenue est un événement temporel, la valeur de résultat contient l’heure à laquelle la survenue s’est produite. Appelé informellement une « action d’attente de temps ».


Action d’envoi de signal

Send Signal Action

Définition: Crée une instance de signal à partir des entrées et la transmet à l’objet cible, pouvant provoquer une transition dans une machine à états ou l’exécution d’une activité. Le demandeur continue immédiatement ; les réponses sont ignorées.


Nœuds de contrôle

Nœud initial

Initial Node

Définition: Un nœud de contrôle à partir duquel le flux commence lorsque l’activité est appelée. Une activité peut avoir plus d’un nœud initial.


Nœud final d’activité

Activity Final Node

Définition: Une activité peut avoir plus d’un nœud final d’activité. Le premier atteint arrêtetous les flux dans l’activité.


Nœud final de flux

Flow Final Node

Définition: Un nœud final de flux détruit tous les jetons qui y arrivent. Il n’a pasd’effet sur les autres flux de l’activité.


Nœud de décision

Decision Node

Définition: Accepte les jetons sur une arête entrante et les présente à plusieurs arêtes sortantes. L’arête parcourue dépend de l’évaluation des gardes sur les arêtes sortantes.


Nœud de fusion

Merge Node

Définition: Rassemble plusieurs flux alternatifs. N’est pas utilisé pour synchroniser des flux concurrents, mais pour accepterl’un parmi plusieurs flux alternatifs.


Nœud de séparation

Fork Node

Définition: Un nœud de contrôle qui divise un flux enplusieurs flux concurrents. Dispose d’une arête entrante et de plusieurs arêtes sortantes.


Nœud de jointure

Join Node

Définition: Un nœud de contrôle quisynchronise plusieurs flux. Dispose de plusieurs arêtes entrantes et d’une arête sortante.


Nœuds d’objets et flux

Nœud d’objet

Object Node

Définition: Indique une instance d’un classificateur particulier, éventuellement dans un état particulier, pouvant être disponible à un point particulier de l’activité.


Broche d’entrée

Input Pin

Définition: Des nœuds d’objet qui reçoivent des valeurs d’autres actions par le biais de flux d’objets.


Broche de sortie

Output Pin

Définition: Des nœuds d’objet qui transmettent des valeurs à d’autres actions par le biais de flux d’objets.


Broche de valeur

Value Pin

Définition: Une broche d’entrée qui fournit une valeur à une action qui nepas provient d’une arête de flux d’objet entrante.


Nœud tampon central

Central Buffer Node

Définition: Accepte les jetons des nœuds d’objets amont et les transmet aux nœuds d’objets en aval. Agit comme tampon pour plusieurs flux entrants/sortants. Ne se connecte pas directement aux actions.


Nœud de stockage de données

Data Store Node

Définition: Représente un emplacement de stockage persistant pour les objets au sein du flux d’activité.


Flot de contrôle

Control Flow

Définition: Une arête qui déclenche un nœud d’activité après la fin du précédent.

Propriétés clés:

Propriété Description
Source/Cible Nœuds connectés par le flux
Poids Nombre minimum de jetons qui doivent traverser simultanément
Garde Spécification d’exécution pour déterminer la traversabilité

Flot d’objets

Object Flow

Définition: Une arête d’activité pouvant transporter des objets ou des données le long d’elle.

Propriétés clés:

Propriété Description
Sélection Sélectionne les jetons à partir d’un nœud d’objet source
Transformation Modifie ou remplace les jetons de données circulant le long de l’arête
Multidiffusion/Réception multilatérale Contrôle de la méthode de passage des objets

Nœuds d’activité structurés

Spécification du nœud conditionnel

Conditional Node Specification

Définition: Un nœud d’activité structuré qui représente un choix exclusif parmi des alternatives.

Propriétés principales:

Propriété Description
Assuré Si vrai, au moins un test réussira (par défaut : faux)
Déterminé Si vrai, au plus un test réussira (par défaut : faux)
Clauses Clauses composant la condition
Résultat Broches de sortie constituant les sorties du flux de données

Nœud de boucle

Loop Node

Définition: Représente une boucle avec des sections d’initialisation, de test et de corps. La section de test peut précéder ou suivre la section du corps.

Propriétés principales:

Propriété Description
Décideur Broche de sortie dont la valeur détermine la continuation de la boucle
Testé en premier Si vrai, le test est effectué avant l’exécution du corps pour la première fois
Parties d’initialisation/Tests/Corps Sous-régions pour les composants de boucle
Variables de boucle Valeurs maintenues au cours des itérations

Région d’expansion

Expansion Region

Définition: Une région strictement imbriquée avec des entrées/sorties explicites (modélisée comme des ExpansionNodes). Exécutée une fois pour chaque élément de la collection d’entrée.

Modes d’exécution:

  • parallèle: Toutes les interactions sont indépendantes

  • itératif: Les interactions ont lieu dans l’ordre des éléments

  • flux: Un flux de valeurs s’écoule vers une seule exécution


Nœud d’expansion

Expansion Node

Définition: Un nœud d’objet utilisé pour indiquer le flux à travers la frontière d’une région d’expansion. Les collections d’entrée sont divisées en éléments individuels à l’intérieur ; les sorties combinent les éléments pour former à nouveau des collections.


Nœud de séquence

Sequence Node

Définition: Un nœud d’activité structuré qui exécute ses actionsdans l’ordre.


Nœud d’activité structuré

Structured Activity Node

Définition: Un nœud conteneur qui regroupe d’autres nœuds d’activité avec des sémantiques d’exécution définies.


Constructions avancées

Région d’activité interrompible

Interruptible Activity Region

Définition: Un groupe d’activité qui prend en charge la terminaison des jetons qui circulent dans des parties d’une activité. Lorsqu’un jeton quitte par des arêtes d’interruption, tous les jetons et comportementsdans la région sont terminés.


Gestionnaire d’exceptions

Exception Handler

Définition: Spécifie un corps à exécuter si une exception spécifiée se produit pendant l’exécution du nœud protégé.

Propriétés principales:

Propriété Description
Nœud protégé Nœud protégé par le gestionnaire
Corps du gestionnaire Nœud exécuté si le gestionnaire attrape une exception
Entrée d’exception Nœud objet recevant le jeton d’exception
Types d’exceptions Classificateurs des exceptions attrapées par le gestionnaire

Éléments d’appui

Ligne de nage

Swimlane

Définition: Utilisé pour partitionner les enfants dans un diagramme d’activité, généralement pour montrer la responsabilité par acteur, département ou composant système.

Propriétés:

  • Partitions horizontales

  • Partitions verticales


Note

Note

Définition: Un commentaire qui permet d’attacher des remarques aux éléments. N’a aucune portée sémantique mais peut contenir des informations utiles de modélisation.


Contrainte

Constraint

Définition: Une condition ou une restriction exprimée dans un langage naturel ou un langage lisible par machine pour déclarer le sens d’un élément.

Propriétés:

Propriété Description
Nom Nom facultatif de la contrainte
Expression Condition qui doit être vraie pour être satisfaite

Diagrammes UML associés

Les diagrammes d’activité fonctionnent le mieux lorsqu’ils sont utilisés en conjonction avec d’autres types de diagrammes UML :

Type de diagramme Objectif Lien
 Diagramme de cas d’utilisation Capturer les exigences fonctionnelles et les interactions des acteurs Visualisation
Diagramme de classes Modéliser la structure statique et les relations Visualisation
Diagramme de séquence Montrer les interactions entre objets au fil du temps Visualisation
Diagramme de communication Mettre l’accent sur les relations entre objets dans les interactions Visualisation
Diagramme d’état-machine Modéliser les états et les transitions des objets Visualisation
Diagramme de composant Afficher les composants physiques et leurs dépendances Vue
Diagramme de déploiement Modéliser la topologie matérielle et le déploiement des artefacts Vue
Diagramme de paquet Organiser les éléments du modèle dans des espaces de noms Vue
Diagramme d’objet Afficher les instances et les liens à un instant donné Vue
Diagramme de structure composite Afficher la structure interne des classificateurs Vue
Diagramme de temporisation Se concentrer sur les contraintes de temps et les changements d’état Vue
Diagramme d’aperçu d’interaction Combiner les diagrammes d’activité et les diagrammes d’interaction Vue

Références


ℹ️ La définition des notations est citée de Groupe de gestion des objets Langage de modélisation unifié (OMG UML) Superstructure version 2.2 et versions antérieures (pour les notations qui n’existent plus dans la dernière spécification).


Ce guide s’adresse aux architectes logiciels, aux analystes métiers et aux concepteurs de systèmes souhaitant modéliser des flux de travail complexes et des processus métiers à l’aide des diagrammes d’activité UML. Tous les éléments visuels et définitions proviennent de la galerie UML officielle de Visual Paradigm.