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

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

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é

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é

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

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

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

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

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

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é

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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
- Diagramme d’activité – Galerie UML de Visual Paradigm: Référence complète des notations, définitions et propriétés des diagrammes d’activité UML dans la documentation officielle de Visual Paradigm.
- Diagramme de cas d’utilisation – Galerie UML de Visual Paradigm: Guide pour modéliser les exigences fonctionnelles et les interactions entre acteurs et systèmes à l’aide des diagrammes de cas d’utilisation.
- Diagramme de classe – Galerie UML de Visual Paradigm: Référence pour modéliser la structure statique, les classes, les attributs, les opérations et les relations.
- Diagramme de séquence – Galerie UML de Visual Paradigm: Documentation pour modéliser les interactions ordonnées dans le temps entre objets et lignes de vie.
- Diagram de communication – Galerie UML de Visual Paradigm: Guide pour les diagrammes de collaboration/communication mettant l’accent sur les liens entre objets et le flux de messages.
- Diagram d’état-machine – Galerie UML de Visual Paradigm: Référence pour modéliser les états, les transitions, les événements et les actions des objets individuels.
- Diagram de composant – Galerie UML de Visual Paradigm: Documentation pour modéliser les composants physiques, les interfaces et les dépendances dans un système.
- Diagram de déploiement – Galerie UML de Visual Paradigm: Guide pour modéliser les nœuds matériels, les artefacts et les configurations de déploiement.
- Diagram de paquet – Galerie UML de Visual Paradigm: Référence pour organiser les éléments du modèle en paquets et gérer les espaces de noms.
- Diagram d’objet – Galerie UML de Visual Paradigm: Guide pour modéliser les instances de classes et leurs liens à un moment donné.
- Diagram de structure composite – Galerie UML de Visual Paradigm: Documentation pour montrer la structure interne, les parties, les ports et les connecteurs des classificateurs.
- Diagram de temporisation – Galerie UML de Visual Paradigm: Référence pour modéliser les contraintes basées sur le temps et les changements d’état le long des lignes de vie.
- Diagram d’aperçu d’interaction – Galerie UML de Visual Paradigm: Guide pour combiner le contrôle de flux des diagrammes d’activité avec des fragments de diagrammes d’interaction.
- Groupe de gestion des objets – Spécification UML: Source officielle des normes et spécifications du langage de modélisation unifié.
- Langage de modélisation unifié (OMG UML) Superstructure v2.2: Spécification fondamentale définissant les sémantiques de la notation UML, citée pour les définitions de notation dans ce guide.
ℹ️ 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.











