en_USes_ESfa_IRfr_FRid_IDjapl_PLru_RU

VPasCode : Diagrammes d’activité UML avec PlantUML – Un tutoriel pratique

Un diagramme d’activité UML modélise comment le travail circuleau sein d’un processus : les actions effectuées, les décisions prises, le travail parallèle et les chemins vers l’achèvement. PlantUML vous permet de décrire ce modèle sous forme de texte, puis de le rendre sous forme de diagramme — une approche utile lorsque vous souhaitez des diagrammes faciles à réviser, à examiner et à conserver avec la documentation du projet. La syntaxe actuelle des activités de PlantUML utilise des mots-clés lisibles tels que start, if, repeat, et fork; sa syntaxe d’activité plus ancienne est toujours prise en charge, mais la nouvelle syntaxe est recommandée pour les nouveaux diagrammes.

Diagramme d'activité UML illustrant un processus de paiement avec la syntaxe PlantUML, montrant des actions, des décisions et des flux de travail parallèles.

1. Que modéliser

Utilisez un diagramme d’activité pour expliquer un processus ou un algorithme, par exemple :

Diagramme d'activité UML illustrant des flux de travail tels que le paiement client, les processus d'approbation et les pipelines de données avec des losanges de décision et des tâches parallèles.

  • Un flux de travail de paiement client

  • Un processus d’approbation

  • Un pipeline d’importation de données

  • Les étapes d’un cas d’utilisation

  • Un travail réparti entre des personnes, des équipes ou des composants système

Une activité est une unité de travail, telle que « Valider la commande ». Un flux de contrôle relie les activités et indique leur ordre. Un décision choisit parmi des chemins alternatifs ; flux parallèles montrent un travail qui peut se dérouler en parallèle. Le diagramme doit clarifier le comportement, sans tenter de documenter chaque détail d’implémentation.

Une règle pratique utile : si la question principale est « Que se passe-t-il ensuite, et dans quelles conditions ? », un diagramme d’activité est bien adapté.

2. Bases de PlantUML

Un diagramme PlantUML commence par @startuml et se termine par “@enduml. Dans la syntaxe d’activité actuelle :

Exemple de syntaxe PlantUML montrant le code pour valider une commande, accompagné du diagramme d'activité correspondant et d'une légende des symboles clés.

  • start marque le nœud initial.

  • :Action; définit une action.

  • if (...) then (...) effectue une branche selon une condition.

  • endif ferme la conditionnelle.

  • stop termine un flux.

  • repeat et repeat while modélise une répétition.

  • fork, fork again, et end fork modélise un travail parallèle.

Les actions sont écrites dans l’ordre et sont implicitement connectées. Vous pouvez ajouter des étiquettes aux branches et utiliser partition pour regrouper le travail par responsabilité ou rôle.

Voici un exemple minimal :

Interface VPasCode affichant la syntaxe du code PlantUML à côté d'un diagramme d'activité généré montrant le flux de réception et de validation des requêtes.

3. Décisions et chemins alternatifs

Utiliser si lorsque le processus fait un choix. Les étiquettes des branches doivent communiquer les résultats de la condition, et non simplement répéter la condition.

Interface VPasCode affichant le code PlantUML et le diagramme d'activité UML correspondant illustrant une décision si-sinon pour la disponibilité des stocks.

@startuml
début
:Recevoir la commande ;
:Vérifier les stocks ;

si (Tous les articles sont-ils disponibles ?) alors (Oui)
  :Réserver les articles ;
  :Demander le paiement ;
sinon (Non)
  :Informer le client ;
  fin
fin si

:Confirmer la commande ;
fin
@enduml

Ici, si introduit une décision et fin si la ferme. Les Oui et Non étiquettes rendent les alternatives visibles. Lorsque les chemins continuent vers une action commune après fin si, ils se rejoignent au flux.

Conseil de modélisation : Soyez explicite sur ce qui se produit pour chaque résultat significatif. Si un chemin d’erreur, de délai d’attente ou de rejet est important pour les parties prenantes, montrez-le plutôt que de le laisser implicite.

4. Boucles et tentatives de reprise

Utilisez une boucle lorsqu’une action ou un groupe d’actions peut se répéter. Cet exemple continue de demander une entrée jusqu’à ce qu’elle passe la validation :

Interface VPasCode affichant le code PlantUML pour une boucle de validation de données à côté de son diagramme d'activité UML généré montrant la logique de réessai.

@startuml
début
:Lire les données soumises ;

répéter
  :Valider les données ;
  si (Valide ?) alors (Oui)
    :Enregistrer les données ;
    sortir
  sinon (Non)
    :Afficher les erreurs de validation ;
    :Demander à l'utilisateur de corriger les données ;
  fin si
répéter tant que (L'utilisateur continue ?) est (Oui) non (Non)

fin
@enduml

Les boucles peuvent être difficiles à lire si leur condition de sortie est vague. Indiquez ce qui déclenche une nouvelle tentative et ce qui met fin à la répétition, surtout lorsque les réessais sont limités ou peuvent être annulés.

5. Travail parallèle et synchronisation

Utilisez fork lorsque des actions indépendantes peuvent se produire simultanément, et end fork lorsque les chemins doivent se synchroniser avant que le processus ne continue.

Diagramme d'activité UML VPasCode montrant des chemins de fork parallèles pour l'envoi d'e-mails, la préparation de listes et la mise à jour des tableaux de bord avant la synchronisation.

@startuml
début
:Commande confirmée ;

fork
  :Envoyer un e-mail de confirmation ;
fork again
  :Préparer la liste de prélèvement de l'entrepôt ;
fork again
  :Mettre à jour le tableau de bord des ventes ;
end fork

:Marquer la commande comme en cours de traitement ;
fin
@enduml

Un fork ne signifie pas nécessairement des personnes différentes ; il peut représenter un comportement système concurrent. Utilisez-le uniquement lorsque les actions peuvent réellement se produire en parallèle. Si une tâche doit se terminer avant qu’une autre ne commence, modélisez-les séquentiellement à la place.

6. Couloirs de nage avec partitions

Les partitions regroupent les actions par le rôle, l’équipe ou le système responsable. Cela peut rendre les transferts clairs sans modifier le processus lui-même. PlantUML prend en charge le regroupement des activités avec partition.

Interface VPasCode affichant un diagramme d'activité PlantUML avec des couloirs de nage partitionnés par les rôles Client, Service de commande et Entrepôt.

@startuml
début

partition Client {
  :Soumettre la commande ;
}

partition "Service de commande" {
  :Valider la commande ;
  si (Commande valide ?) alors (Oui)
    :Créer l'enregistrement de la commande ;
  sinon (Non)
    :Renvoyer les erreurs de validation ;
    stop
  finsi
}

partition Entrepôt {
  :Préparer l'expédition ;
}

partition "Service de commande" {
  :Envoyer la confirmation ;
}

stop
@enduml

Choisissez des libellés de couloirs qui correspondent à la véritable répartition des responsabilités. Évitez de créer une nouvelle partition pour chaque petit composant ; trop de couloirs peuvent rendre le diagramme plus difficile à parcourir.

7. Objets de données et notes

Certains flux de travail bénéficient de l’affichage des entrées ou sorties importantes. Les diagrammes d’activité PlantUML prennent en charge les stéréotypes de nœuds d’objet ; les notes peuvent également ajouter du contexte sans transformer chaque libellé d’action en un paragraphe.

Interface VPasCode affichant le code PlantUML pour un flux de paiement à côté du diagramme d'activité rendu comportant une note attachée à l'action d'autorisation du paiement.

@startuml
début
:Recevoir la demande de paiement ;

:Autoriser le paiement ;
note à droite
  Utilise la réponse d'autorisation
  du fournisseur de paiement.
fin note

:Enregistrer le résultat du paiement ;
stop
@enduml

Gardez les libellés des activités principales courts. Placez les règles métier, les hypothèses ou les clarifications dans des notes lorsque les lecteurs en ont besoin, mais qu’elles ne sont pas elles-mêmes des étapes du flux.

8. Exemple complet : paiement en ligne

Cet exemple plus grand combine des partitions, une décision, un chemin alternatif et un travail parallèle.

Diagramme d'activité UML pour un processus de paiement en ligne montrant la soumission du client, la validation, l'autorisation du paiement, et la confirmation parallèle et la préparation en entrepôt.

@startuml
titre Paiement en ligne

début

partition Client {
  :Vérifier le panier ;
  :Soumettre le paiement ;
}

partition "Service de commande" {
  :Valider le panier et l'adresse ;

  si (Panier et adresse valides ?) alors (Oui)
    :Calculer le total ;
  sinon (Non)
    :Afficher les erreurs de validation ;
    stop
  finsi
}

partition "Service de paiement" {
  :Autoriser le paiement ;

  si (Paiement approuvé ?) alors (Approuvé)
    :Capturer le paiement ;
  sinon (Refusé)
    :Renvoyer l'échec du paiement ;
    stop
  finsi
}

partition "Service de commande" {
  :Créer la commande ;
}

fork
  partition "Service de notification" {
    :Envoyer la confirmation de commande ;
  }
fork again
  partition Entrepôt {
    :Mettre la commande en file d'attente pour la préparation ;
  }
end fork

partition "Service de commande" {
  :Afficher la confirmation de commande ;
}

stop
@enduml

Diagramme d'activité PlantUML montrant le flux de paiement en ligne avec des partitions de services Client, Commande, Paiement, Notification et Entrepôt.

Lisez-le de haut en bas : le client soumet le paiement, le service de commande le valide, le paiement est autorisé, et la commande est créée. Ensuite, la confirmation et la préparation en entrepôt s’exécutent en parallèle. Si la validation ou le paiement échoue, le flux se termine via le chemin d’échec approprié.

9. Flux de travail Diagramme-as-code

Un flux de travail pratique est :

Flux de travail Diagramme-as-code

Un flux de travail pratique est :

  1. Décrivez le processus en langage clair.Identifiez son début, sa fin, les actions principales, les décisions, les exceptions, les tâches parallèles et les rôles responsables.

  2. Rédigez une première ébauche PlantUML.Concentrez-vous sur la logique avant le style.

  3. Générez et inspectez-le.Vérifiez que le résultat se lit naturellement et que les branches et les boucles sont compréhensibles.

  4. Examinez la logique avec les parties prenantes.Le rendu vérifie la syntaxe, pas si le processus est correct.

  5. Révisez la source et enregistrez-la avec le projet.Les diagrammes basés sur du texte sont faciles à comparer et à examiner aux côtés d’autres documents.

Pour le rendu local, l’outil en ligne de commande de PlantUML peut générer des fichiers de diagrammes ; les éditeurs basés sur le navigateur sont pratiques pour des ébauches rapides et des aperçus. PlantUML propose également un éditeur navigateur, tandis que VPasCode offre un éditeur basé sur le navigateur avec aperçu en direct et prise en charge des diagrammes d’activité PlantUML.

  1. Décrivez le processus en langage clair.Identifiez son début, sa fin, les actions principales, les décisions, les exceptions, les tâches parallèles et les rôles responsables.

  2. Rédigez une première ébauche PlantUML.Concentrez-vous sur la logique avant le style.

  3. Générez et inspectez-le.Vérifiez que le résultat se lit naturellement et que les branches et les boucles sont compréhensibles.

  4. Examinez la logique avec les parties prenantes.Le rendu vérifie la syntaxe, pas si le processus est correct.

  5. Révisez la source et enregistrez-la avec le projet.Les diagrammes basés sur du texte sont faciles à comparer et à examiner aux côtés d’autres documents.

Pour le rendu local, l’outil en ligne de commande de PlantUML peut générer des fichiers de diagrammes ; les éditeurs basés sur le navigateur sont pratiques pour des ébauches rapides et des aperçus. PlantUML propose également un éditeur navigateur, tandis que VPasCode offre un éditeur basé sur le navigateur avec aperçu en direct et prise en charge des diagrammes d’activité PlantUML.

10. Utilisation de Visual Paradigm VPasCode et de l’assistance par IA

VPasCode est l’éditeur de diagrammes à partir de texte basé sur le navigateur de Visual Paradigm. Son support PlantUML inclut les diagrammes d’activité, et son éditeur offre un rendu en direct. Visual Paradigm décrit également la génération de diagrammes en langage naturel intégrée et l’assistance par IA pour modifier ou corriger le code des diagrammes.

Un flux de travail utile assisté par IA :

Flux de travail en cinq étapes illustrant comment créer des diagrammes d'activité PlantUML en utilisant VPasCode, de la rédaction du code à la révision de la logique et à l'enregistrement des fichiers sources.

  1. Formulez une demande pour le comportement, pas seulement pour le type de diagramme.Par exemple :
    « Créez un diagramme d’activité PlantUML pour un paiement en ligne. Incluez la validation du panier, la validation de l’adresse, l’autorisation de paiement, les chemins d’échec, la création de commande, ainsi que l’envoi parallèle d’un e-mail de confirmation et la préparation en entrepôt. Utilisez des partitions pour le Client, le Service de Commande, le Service de Paiement, le Service de Notification et l’Entrepôt. Utilisez la syntaxe actuelle des diagrammes d’activité PlantUML. »

  2. Inspectez la source générée.Vérifiez qu’elle utilise “@startuml/@enduml, que chaque branche représente une condition réelle, et que les chemins échoués ou alternatifs sont gérés.

  3. Rendez-le dans VPasCode.Utilisez l’aperçu pour repérer les erreurs de syntaxe, les étiquettes confuses ou les mises en page trop complexes.

  4. Affinez le PlantUML vous-même ou avec des modifications ciblées par l’IA.Demandez un changement spécifique, comme « Ajouter un chemin de délai d’attente de paiement » ou « Rendre la préparation en entrepôt séquentielle après la création de la commande. »

  5. Validez le processus avec quelqu’un qui le connaît.L’IA peut rédiger un diagramme plausible, mais elle ne peut pas établir que le processus réel de votre organisation est correct.

Les contrôles exacts et la disponibilité des fonctionnalités de VPasCode peuvent varier selon l’édition du produit ; confirmez les options actuelles dans l’éditeur que vous utilisez.

11. Flux de travail de modélisation Visual Paradigm

Utilisez VPasCode lorsque vous souhaitez travailler directement avec la source du diagramme et l’aperçu. Utilisez l’environnement de modélisation de Visual Paradigm lorsque la tâche nécessite une édition graphique ou un travail de modélisation plus large. La guidance de Visual Paradigm décrit un flux de travail de génération ou d’importation d’un diagramme, puis de son affinage dans l’éditeur visuel ; les chemins d’import exacts peuvent dépendre du produit et de la version.

Une passation raisonnable est :

Diagramme de flux de travail Visual Paradigm montrant quatre étapes : rédaction de la source PlantUML, partage pour révision, importation dans Visual Paradigm, et affinement tout en maintenant le contrôle de version.

  1. Élaborez et itérez dans PlantUML.

  2. Partagez le diagramme rendu et la source pour examen.

  3. Ouvrez ou importez-le dans l’éditeur Visual Paradigm pertinent si vous avez besoin d’édition visuelle ou d’autres capacités de modélisation.

  4. Conservez la source PlantUML comme version maintenue si c’est la source de vérité choisie par l’équipe ; évitez de faire silencieusement des modifications conflictuelles à deux endroits.

12. Erreurs courantes et liste de contrôle de qualité

Avant de partager un diagramme, vérifiez :

Infographie de liste de contrôle de qualité pour les diagrammes d'activité, présentant des étapes de validation du flux et un exemple de flux de travail de processus de commande avec des points de décision et une gestion des erreurs.

  • A-t-il un début clair et une fin significative ?

  • Chaque action décrit-elle une partie de travail reconnaissable ?

  • Les issues des décisions sont-elles clairement étiquetées ?

  • Les chemins de rejet, d’erreur, de délai d’attente ou d’annulation sont-ils inclus là où ils sont importants ?

  • Les conditions de boucle rendent-elles claires le comportement de répétition et de sortie ?

  • Les actions parallèles sont-elles véritablement indépendantes, et la synchronisation est-elle indiquée là où c’est nécessaire ?

  • Les partitions représentent-elles des limites de propriété utiles ?

  • Un lecteur peut-il comprendre le flux sans lire de longues étiquettes d’action ?

  • Le diagramme rendu correspond-il au processus réel ?

Un bon diagramme d’activité n’est pas le plus long ni le plus détaillé. C’est le plus petit diagramme qui rend clairs le flux de travail, les décisions, les responsabilités et les exceptions importantes.

Référence rapide de syntaxe

Objectif Modèle PlantUML
Démarrage start
Action :Faire quelque chose;
Décision si (Condition ?) alors (Oui) ... sinon (Non) ... fin si
Boucle répéter ... répéter tant que (Condition ?)
Travail parallèle fork ... fork again ... end fork
Groupe de responsabilités partition Role { ... }
Fin stop

Les exemples utilisent la syntaxe actuelle des diagrammes d’activité de PlantUML. Pour des constructions peu courantes ou un comportement de rendu spécifique à une version, consultez la référence des diagrammes d’activité PlantUML.

Cette publication est également disponible en English, Español, فارسی, Bahasa Indonesia, 日本語, Polski : liste des langues séparées par une virgule, Ру́сский : dernière langue.