{"id":12295,"date":"2026-04-05T19:31:53","date_gmt":"2026-04-05T11:31:53","guid":{"rendered":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/"},"modified":"2026-04-05T19:31:53","modified_gmt":"2026-04-05T11:31:53","slug":"bpmn-for-developers-guide","status":"publish","type":"post","link":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/","title":{"rendered":"Mod\u00e8le et notation des processus m\u00e9tiers pour les d\u00e9veloppeurs : combler le foss\u00e9 entre le code et la logique m\u00e9tier"},"content":{"rendered":"<p>Dans le paysage du d\u00e9veloppement logiciel, un d\u00e9fi persistant reste la traduction des exigences m\u00e9tiers abstraites en impl\u00e9mentations techniques concr\u00e8tes. Les d\u00e9veloppeurs se retrouvent souvent \u00e0 interpr\u00e9ter des flux de travail complexes document\u00e9s en langage naturel, ce qui entra\u00eene des d\u00e9salignements et des reprises. Le mod\u00e8le et la notation des processus m\u00e9tiers (BPMN) sert de notation graphique standardis\u00e9e pour sp\u00e9cifier les processus m\u00e9tiers dans un mod\u00e8le de processus m\u00e9tier. Pour les d\u00e9veloppeurs, comprendre cette notation ne consiste pas seulement \u00e0 dessiner des diagrammes ; il s&#8217;agit de cr\u00e9er un langage commun qui garantit que le code \u00e9crit r\u00e9sout effectivement le probl\u00e8me m\u00e9tier vis\u00e9.<\/p>\n<p>Ce guide explore comment les normes BPMN 2.0 agissent comme un pont entre la logique m\u00e9tier d\u00e9tenue par les parties prenantes et la logique de code d\u00e9tenue par les \u00e9quipes d&#8217;ing\u00e9nierie. En adoptant ces pratiques de mod\u00e9lisation, les \u00e9quipes de d\u00e9veloppement peuvent r\u00e9duire l&#8217;ambigu\u00eft\u00e9, am\u00e9liorer la couverture des tests et simplifier le d\u00e9ploiement de flux de travail complexes sans d\u00e9pendre d&#8217;outils propri\u00e9taires sp\u00e9cifiques. L&#8217;accent est mis ici sur l&#8217;application technique de la norme afin d&#8217;am\u00e9liorer l&#8217;architecture du syst\u00e8me et sa maintenabilit\u00e9.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img alt=\"Kawaii cute vector infographic explaining BPMN 2.0 for developers: visual guide to business process modeling with pastel-colored events, activities, gateways, swimlanes, and data flow elements mapped to code concepts like functions, if-else statements, and async tasks, designed with rounded shapes and friendly characters to bridge business logic and technical implementation\" decoding=\"async\" src=\"https:\/\/www.cybermedian.com\/wp-content\/uploads\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\"\/><\/figure>\n<\/div>\n<h2>Comprendre les normes BPMN 2.0 \ud83d\udcd0<\/h2>\n<p>BPMN 2.0 est une norme cr\u00e9\u00e9e par le groupe Object Management (OMG). Elle est con\u00e7ue pour \u00eatre comprise par toutes les parties prenantes m\u00e9tiers, des analystes de processus aux architectes logiciels. Contrairement aux outils de diagrammation propri\u00e9taires qui enferment les utilisateurs dans des \u00e9cosyst\u00e8mes sp\u00e9cifiques, BPMN d\u00e9finit un ensemble d&#8217;\u00e9l\u00e9ments visuels et de leurs s\u00e9mantiques d&#8217;ex\u00e9cution qui sont ind\u00e9pendants de la plateforme.<\/p>\n<p>Pour un d\u00e9veloppeur, la valeur r\u00e9side dans la nature ex\u00e9cutable de la notation. Un diagramme n&#8217;est pas seulement une documentation ; il repr\u00e9sente une machine \u00e0 \u00e9tats ou une d\u00e9finition de flux de travail pouvant \u00eatre d\u00e9ploy\u00e9e sur un moteur d&#8217;ex\u00e9cution. La norme d\u00e9finit comment ces \u00e9l\u00e9ments interagissent, offrant un comportement d\u00e9terministe qui s&#8217;aligne avec la logique de programmation.<\/p>\n<ul>\n<li><strong>Normalisation :<\/strong> Assure qu&#8217;un mod\u00e8le de processus cr\u00e9\u00e9 par une \u00e9quipe puisse \u00eatre interpr\u00e9t\u00e9 par une autre sans perte de sens.<\/li>\n<li><strong>S\u00e9mantique ex\u00e9cutable :<\/strong> D\u00e9finit exactement ce qui se produit lorsqu&#8217;un \u00e9v\u00e9nement est d\u00e9clench\u00e9, permettant une correspondance directe avec la logique du code.<\/li>\n<li><strong>Lisibilit\u00e9 humaine :<\/strong> Visualise une logique complexe qui pourrait \u00eatre masqu\u00e9e dans le code brut, rendant plus facile pour les parties prenantes non techniques de valider les exigences.<\/li>\n<\/ul>\n<h2>Briques fondamentales de la mod\u00e9lisation des processus \ud83e\uddf1<\/h2>\n<p>Pour mod\u00e9liser un processus efficacement, les d\u00e9veloppeurs doivent comprendre les formes fondamentales utilis\u00e9es dans BPMN. Ces formes repr\u00e9sentent des comportements et des \u00e9tats sp\u00e9cifiques au sein du syst\u00e8me. Chaque forme poss\u00e8de un comportement d&#8217;entr\u00e9e et de sortie d\u00e9fini qui correspond \u00e0 des constructions de programmation.<\/p>\n<h3>1. \u00c9v\u00e9nements \u23f1\ufe0f<\/h3>\n<p>Les \u00e9v\u00e9nements sont les occurrences qui affectent le flux du processus. Ils sont repr\u00e9sent\u00e9s par des cercles. Dans un contexte de codage, ils correspondent souvent \u00e0 des d\u00e9clencheurs, des rappels ou des appels d&#8217;API.<\/p>\n<ul>\n<li><strong>\u00c9v\u00e9nements de d\u00e9marrage :<\/strong> Initient le processus. Dans le code, il s&#8217;agit du point d&#8217;entr\u00e9e d&#8217;une fonction ou du d\u00e9clencheur d&#8217;un microservice.<\/li>\n<li><strong>\u00c9v\u00e9nements interm\u00e9diaires :<\/strong> Se produisent au cours du processus. Ils peuvent repr\u00e9senter l&#8217;attente d&#8217;un message, l&#8217;expiration d&#8217;un minuteur ou une condition d&#8217;erreur.<\/li>\n<li><strong>\u00c9v\u00e9nements de fin :<\/strong> Terminent le processus. Cela correspond \u00e0 l&#8217;instruction de retour ou \u00e0 la finalisation d&#8217;une transaction.<\/li>\n<\/ul>\n<h3>2. Activit\u00e9s \ud83c\udfc3<\/h3>\n<p>Les activit\u00e9s repr\u00e9sentent le travail effectu\u00e9 au sein du processus. Ce sont les unit\u00e9s fonctionnelles fondamentales.<\/p>\n<ul>\n<li><strong>T\u00e2ches :<\/strong>Unit\u00e9s atomiques de travail. Une t\u00e2che unique peut correspondre \u00e0 un appel d&#8217;API sp\u00e9cifique ou \u00e0 une transaction de base de donn\u00e9es.<\/li>\n<li><strong>Sous-processus :<\/strong> Une activit\u00e9 complexe d\u00e9compos\u00e9e en un processus de niveau inf\u00e9rieur. Cela encourage la modularit\u00e9 et la r\u00e9utilisation dans la base de code.<\/li>\n<li><strong>T\u00e2ches de service :<\/strong> D\u00e9signent sp\u00e9cifiquement les interactions avec des syst\u00e8mes externes. Cela est crucial pour les d\u00e9veloppeurs d\u00e9finissant des points d&#8217;int\u00e9gration.<\/li>\n<\/ul>\n<h3>3. Passerelles \ud83d\udd00<\/h3>\n<p>Les passerelles contr\u00f4lent la divergence et la convergence des chemins. Elles d\u00e9terminent quel chemin le processus suit ensuite en fonction des conditions.<\/p>\n<ul>\n<li><strong>Passerelles exclusives :<\/strong>D\u00e9cider entre un ou plusieurs chemins. Cela correspond directement \u00e0 un <code>si-sinon<\/code>ou <code>switch<\/code>instruction dans le code.<\/li>\n<li><strong>Passerelles inclusives :<\/strong>Permettent de suivre plusieurs chemins simultan\u00e9ment si les conditions sont remplies.<\/li>\n<li><strong>Passerelles parall\u00e8les :<\/strong>Divisent le flux en plusieurs threads concurrents, similaire au traitement parall\u00e8le ou aux t\u00e2ches asynchrones.<\/li>\n<\/ul>\n<h2>Lignes de nage et piscines : D\u00e9finition de la responsabilit\u00e9 \ud83c\udfca<\/h2>\n<p>L&#8217;une des fonctionnalit\u00e9s les plus puissantes de BPMN est la capacit\u00e9 \u00e0 organiser les processus selon qui effectue le travail. Cela est r\u00e9alis\u00e9 gr\u00e2ce aux piscines et aux lignes de nage.<\/p>\n<ul>\n<li><strong>Piscines :<\/strong>Repr\u00e9sentent des entit\u00e9s ou des syst\u00e8mes distincts. Une piscine peut repr\u00e9senter l&#8217;application enti\u00e8re, un microservice sp\u00e9cifique ou un syst\u00e8me externe partenaire.<\/li>\n<li><strong>Lignes de nage :<\/strong>Divisent une piscine pour montrer la r\u00e9partition des responsabilit\u00e9s. Une ligne de nage peut repr\u00e9senter un r\u00f4le utilisateur sp\u00e9cifique, un d\u00e9partement ou un service sp\u00e9cifique dans l&#8217;architecture.<\/li>\n<\/ul>\n<p>Pour les d\u00e9veloppeurs, les lignes de nage sont essentielles pour d\u00e9finir les limites. Elles clarifient quel service ou composant est responsable d&#8217;une t\u00e2che sp\u00e9cifique. Cela aide \u00e0 concevoir des architectures orient\u00e9es services o\u00f9 chaque service a une propri\u00e9t\u00e9 claire du domaine. En visualisant les points de transfert entre les lignes de nage, les \u00e9quipes peuvent identifier les goulets d&#8217;\u00e9tranglement potentiels d&#8217;int\u00e9gration avant d&#8217;\u00e9crire une seule ligne de code.<\/p>\n<h2>Flux de donn\u00e9es et objets \ud83d\udcbe<\/h2>\n<p>Les processus ne concernent pas seulement le flux ; ils concernent aussi les donn\u00e9es. BPMN inclut des objets de donn\u00e9es pour repr\u00e9senter les informations trait\u00e9es. Comprendre le flux de donn\u00e9es est essentiel pour le d\u00e9veloppement backend.<\/p>\n<ul>\n<li><strong>Stockages de donn\u00e9es :<\/strong>Indiquent la persistance. Cela correspond aux sch\u00e9mas de base de donn\u00e9es ou aux syst\u00e8mes de fichiers.<\/li>\n<li><strong>Objets de donn\u00e9es :<\/strong>Repr\u00e9sentent les informations qui passent par le processus. Ils correspondent aux structures de donn\u00e9es ou aux DTO (objets de transfert de donn\u00e9es) dans le code.<\/li>\n<li><strong>Flux de messages :<\/strong>Montre la communication entre les piscines. Cela est essentiel pour comprendre les architectures orient\u00e9es \u00e9v\u00e9nements.<\/li>\n<\/ul>\n<p>Lorsque les d\u00e9veloppeurs d\u00e9finissent des objets de donn\u00e9es dans un diagramme, ils d\u00e9finissent implicitement le sch\u00e9ma requis pour l&#8217;application. Cela encourage une approche centr\u00e9e sur les donn\u00e9es dans le d\u00e9veloppement, en s&#8217;assurant que le mod\u00e8le de donn\u00e9es soutient la logique du processus.<\/p>\n<h2>Mappage des diagrammes vers l&#8217;architecture du code \ud83e\udde9<\/h2>\n<p>La transition d&#8217;un mod\u00e8le visuel vers un code ex\u00e9cutable n\u00e9cessite une approche syst\u00e9matique. Les d\u00e9veloppeurs ont souvent du mal \u00e0 savoir comment traduire un diagramme complexe en une base de code maintenable. Voici comment le mappage fonctionne g\u00e9n\u00e9ralement.<\/p>\n<h3>Orchestration vs. Chor\u00e9ographie<\/h3>\n<p>Dans les syst\u00e8mes distribu\u00e9s modernes, deux mod\u00e8les \u00e9mergent de la mod\u00e9lisation des processus :<\/p>\n<ul>\n<li><strong>Orchestration :<\/strong> Un contr\u00f4leur central g\u00e8re le flux. C&#8217;est courant lorsqu&#8217;on utilise un moteur de workflow. Le moteur d\u00e9termine l&#8217;ordre des op\u00e9rations.<\/li>\n<li><strong>Chor\u00e9ographie :<\/strong> Les participants s&#8217;organisent eux-m\u00eames sans contr\u00f4leur central. Cela repose sur des \u00e9v\u00e9nements et des \u00e9changes de messages. Les d\u00e9veloppeurs doivent s&#8217;assurer que l&#8217;\u00e9tat est coh\u00e9rent entre les services.<\/li>\n<\/ul>\n<h3>Gestion d&#8217;\u00e9tat<\/h3>\n<p>Les processus n\u00e9cessitent souvent des \u00e9tats \u00e0 long terme. Un appel de fonction standard ne peut pas attendre des jours. BPMN g\u00e8re cela gr\u00e2ce au concept d&#8217;attente d&#8217;\u00e9v\u00e9nements.<\/p>\n<ul>\n<li><strong>Processus \u00e0 longue ex\u00e9cution :<\/strong> L&#8217;\u00e9tat du processus doit \u00eatre persist\u00e9 dans une base de donn\u00e9es. Lorsqu&#8217;un \u00e9v\u00e9nement de minuterie se d\u00e9clenche, le syst\u00e8me r\u00e9cup\u00e8re l&#8217;\u00e9tat et reprend l&#8217;ex\u00e9cution.<\/li>\n<li><strong>Sagas :<\/strong> Dans les microservices, un mod\u00e8le de saga g\u00e8re les transactions distribu\u00e9es. Les diagrammes BPMN peuvent visualiser la logique de compensation n\u00e9cessaire si une \u00e9tape \u00e9choue.<\/li>\n<\/ul>\n<h2>Gestion des exceptions et compensation \u26a0\ufe0f<\/h2>\n<p>Les syst\u00e8mes logiciels \u00e9chouent. Les processus m\u00e9tier \u00e9chouent. Un mod\u00e8le BPMN robuste doit prendre explicitement en compte ces \u00e9checs.<\/p>\n<ul>\n<li><strong>\u00c9v\u00e9nements d&#8217;erreur :<\/strong> Capturer les erreurs survenues pendant une t\u00e2che. Cela permet au processus de suivre un chemin sp\u00e9cifique de gestion des erreurs au lieu de planter.<\/li>\n<li><strong>Compensation :<\/strong> Si un processus s&#8217;ach\u00e8ve avec succ\u00e8s mais qu&#8217;une \u00e9tape ult\u00e9rieure \u00e9choue, la logique de compensation annule les effets des \u00e9tapes pr\u00e9c\u00e9dentes. Cela est crucial pour les transactions financi\u00e8res ou d&#8217;inventaire.<\/li>\n<li><strong>\u00c9v\u00e9nements aux limites :<\/strong> Attacher des \u00e9v\u00e9nements au c\u00f4t\u00e9 d&#8217;une t\u00e2che pour g\u00e9rer les exceptions localement sans modifier le flux principal.<\/li>\n<\/ul>\n<p>Mettre en \u0153uvre la logique de compensation est souvent la partie la plus difficile du d\u00e9veloppement. En la d\u00e9finissant dans le diagramme, les d\u00e9veloppeurs savent exactement quelles proc\u00e9dures d&#8217;annulation sont n\u00e9cessaires pour chaque service impliqu\u00e9.<\/p>\n<h2>Consid\u00e9rations sur les performances et la scalabilit\u00e9 \ud83d\ude80<\/h2>\n<p>Les processus \u00e0 haut volume n\u00e9cessitent une mod\u00e9lisation soigneuse. Un diagramme qui fonctionne pour quelques transactions peut \u00e9chouer sous charge.<\/p>\n<ul>\n<li><strong>Analyse des goulets d&#8217;\u00e9tranglement :<\/strong>Visualiser le flux aide \u00e0 identifier o\u00f9 les t\u00e2ches s&#8217;accumulent. Si une t\u00e2che humaine reste longtemps dans une voie, le syst\u00e8me attend. Si une t\u00e2che de service est lente, le pool de threads se remplit.<\/li>\n<li><strong>Concurrence :<\/strong>Les passerelles parall\u00e8les cr\u00e9ent plusieurs instances d&#8217;une t\u00e2che. Les d\u00e9veloppeurs doivent s&#8217;assurer que l&#8217;infrastructure sous-jacente peut g\u00e9rer cette concurrence.<\/li>\n<li><strong>Regroupement (batching) :<\/strong>Plut\u00f4t que de traiter un \u00e9l\u00e9ment \u00e0 la fois, les processus peuvent \u00eatre mod\u00e9lis\u00e9s pour g\u00e9rer des lots. Cela am\u00e9liore le d\u00e9bit.<\/li>\n<\/ul>\n<h2>P\u00e9ch\u00e9s courants \u00e0 \u00e9viter \ud83d\udeab<\/h2>\n<p>Bien que BPMN soit puissant, une mauvaise utilisation peut conduire \u00e0 des mod\u00e8les excessivement complexes, difficiles \u00e0 maintenir.<\/p>\n<ul>\n<li><strong>Sur-mod\u00e9lisation :<\/strong> Ne mod\u00e9lisez pas chaque cas limite dans le diagramme. Concentrez-vous sur le parcours normal et les exceptions majeures. Trop de d\u00e9tails masquent la logique.<\/li>\n<li><strong>Logique spaghetti :<\/strong> \u00c9vitez de connecter trop de points de d\u00e9cision sur un m\u00eame chemin. Si un chemin devient illisible, restructurez le processus en sous-processus.<\/li>\n<li><strong>Ignorer les donn\u00e9es :<\/strong> Un processus sans donn\u00e9es n&#8217;est qu&#8217;un flux. Assurez-vous que des objets de donn\u00e9es sont d\u00e9finis pour chaque t\u00e2che afin de clarifier les entr\u00e9es et sorties.<\/li>\n<li><strong>Codage dur de la logique :<\/strong> N&#8217;ins\u00e9rez pas de r\u00e8gles m\u00e9tier complexes dans le code de la t\u00e2che, l\u00e0 o\u00f9 elles devraient \u00eatre dans les conditions des points de d\u00e9cision. Gardez le diagramme propre et le code centr\u00e9.<\/li>\n<\/ul>\n<h2>Int\u00e9gration dans les flux de d\u00e9veloppement \ud83d\udd17<\/h2>\n<p>BPMN ne doit pas exister en vase clos. Il doit faire partie du pipeline d&#8217;int\u00e9gration continue et de d\u00e9ploiement continu (CI\/CD).<\/p>\n<ul>\n<li><strong>Contr\u00f4le de version :<\/strong> Les d\u00e9finitions de processus doivent \u00eatre stock\u00e9es dans le contr\u00f4le de version aux c\u00f4t\u00e9s du code source. Cela garantit la tra\u00e7abilit\u00e9 entre les modifications de code et les modifications de processus.<\/li>\n<li><strong>Validation :<\/strong> Avant le d\u00e9ploiement, le mod\u00e8le de processus doit \u00eatre valid\u00e9 pour d\u00e9tecter les erreurs de syntaxe et les boucles logiques. Des outils de test automatis\u00e9s peuvent v\u00e9rifier les blocages ou les chemins inaccessibles.<\/li>\n<li><strong>Documentation :<\/strong> Le diagramme sert de source unique de v\u00e9rit\u00e9. Lorsqu&#8217;un d\u00e9veloppeur met \u00e0 jour le code, il doit \u00e9galement mettre \u00e0 jour le diagramme pour refl\u00e9ter ce changement.<\/li>\n<\/ul>\n<h2>Maintenance et gestion des versions \ud83d\udd04<\/h2>\n<p>Les exigences m\u00e9tiers \u00e9voluent. Le code doit \u00e9voluer en cons\u00e9quence. La gestion des versions des mod\u00e8les de processus est distincte de la gestion des versions du code.<\/p>\n<ul>\n<li><strong>Compatibilit\u00e9 descendante :<\/strong> Modifier une d\u00e9finition de processus peut briser les instances en cours d&#8217;ex\u00e9cution. Les d\u00e9veloppeurs doivent concevoir des strat\u00e9gies de migration pour les anciennes instances.<\/li>\n<li><strong>Ex\u00e9cutions parall\u00e8les :<\/strong> Parfois, il est n\u00e9cessaire d&#8217;ex\u00e9cuter deux versions d&#8217;un processus simultan\u00e9ment pendant une p\u00e9riode de transition.<\/li>\n<li><strong>D\u00e9pr\u00e9ciation :<\/strong> Les anciennes versions de processus doivent \u00eatre archiv\u00e9es et surveill\u00e9es pour s&#8217;assurer qu&#8217;aucune nouvelle instance ne commence \u00e0 utiliser une logique obsol\u00e8te.<\/li>\n<\/ul>\n<h2>Tableau : \u00c9l\u00e9ments BPMN vs. Concepts de code \ud83d\udcca<\/h2>\n<p>Le tableau suivant fournit une r\u00e9f\u00e9rence rapide pour mapper les \u00e9l\u00e9ments BPMN standards aux concepts de programmation courants.<\/p>\n<table>\n<thead>\n<tr>\n<th>\u00c9l\u00e9ment BPMN<\/th>\n<th>Description<\/th>\n<th>\u00c9quivalent en code<\/th>\n<th>Concept syst\u00e8me<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u00c9v\u00e9nement de d\u00e9marrage<\/td>\n<td>Initie le flux<\/td>\n<td>Entr\u00e9e de fonction \/ D\u00e9clencheur<\/td>\n<td>Point de terminaison API<\/td>\n<\/tr>\n<tr>\n<td>\u00c9v\u00e9nement de fin<\/td>\n<td>Termine le flux<\/td>\n<td>Instruction de retour<\/td>\n<td>Validation de transaction<\/td>\n<\/tr>\n<tr>\n<td>T\u00e2che<\/td>\n<td>Unit\u00e9 de travail atomique<\/td>\n<td>M\u00e9thode \/ Fonction<\/td>\n<td>Appel de service<\/td>\n<\/tr>\n<tr>\n<td>Passerelle exclusive<\/td>\n<td>Point de d\u00e9cision<\/td>\n<td>Si \/ Sinon \/ Switch<\/td>\n<td>Logique conditionnelle<\/td>\n<\/tr>\n<tr>\n<td>Passerelle parall\u00e8le<\/td>\n<td>Division du flux<\/td>\n<td>Thread asynchrone \/ parall\u00e8le<\/td>\n<td>Ex\u00e9cution concurrente<\/td>\n<\/tr>\n<tr>\n<td>Flux de message<\/td>\n<td>Communication<\/td>\n<td>File d&#8217;attente de messages \/ \u00c9v\u00e9nement<\/td>\n<td>Communication entre services<\/td>\n<\/tr>\n<tr>\n<td>Sous-processus<\/td>\n<td>Groupe de t\u00e2ches<\/td>\n<td>Module \/ Classe<\/td>\n<td>Encapsulation<\/td>\n<\/tr>\n<tr>\n<td>\u00c9v\u00e9nement d&#8217;erreur<\/td>\n<td>Gestion des exceptions<\/td>\n<td>Bloc de capture<\/td>\n<td>Gestion des erreurs<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Collaboration entre les \u00e9quipes \ud83e\udd1d<\/h2>\n<p>La v\u00e9ritable puissance du BPMN est r\u00e9alis\u00e9e lorsque les analystes m\u00e9tiers et les d\u00e9veloppeurs travaillent \u00e0 partir du m\u00eame mod\u00e8le. Cela r\u00e9duit la couche de traduction o\u00f9 les erreurs surviennent g\u00e9n\u00e9ralement.<\/p>\n<ul>\n<li><strong>Vocabulaire partag\u00e9 :<\/strong> Les deux parties s&#8217;accordent sur le sens des formes et des flux. Un \u00ab\u00a0Passage\u00a0\u00bb signifie la m\u00eame chose pour l&#8217;analyste et l&#8217;ing\u00e9nieur.<\/li>\n<li><strong>Validation pr\u00e9coce :<\/strong> La logique m\u00e9tier peut \u00eatre valid\u00e9e avant le d\u00e9but du d\u00e9veloppement. Cela permet d&#8217;\u00e9conomiser du temps en \u00e9vitant la mise en \u0153uvre de fonctionnalit\u00e9s qui ne correspondent pas aux exigences.<\/li>\n<li><strong>Boucles de retour :<\/strong> Lorsqu&#8217;un d\u00e9veloppeur rencontre une contrainte technique, il peut mettre \u00e0 jour le diagramme pour le refl\u00e9ter. L&#8217;analyste m\u00e9tier voit imm\u00e9diatement l&#8217;impact.<\/li>\n<\/ul>\n<h2>Tendances futures en mati\u00e8re de mod\u00e9lisation des processus \ud83d\udd2e<\/h2>\n<p>Le domaine de la mod\u00e9lisation des processus \u00e9volue parall\u00e8lement aux technologies.<\/p>\n<ul>\n<li><strong>Int\u00e9gration low-code :<\/strong> Les mod\u00e8les de processus sont de plus en plus utilis\u00e9s pour piloter les plateformes low-code. Les d\u00e9veloppeurs construisent le moteur, et le mod\u00e8le d\u00e9finit la logique.<\/li>\n<li><strong>Assistance par l&#8217;IA :<\/strong> Les outils d&#8217;IA peuvent sugg\u00e9rer des optimisations pour les flux de processus ou g\u00e9n\u00e9rer automatiquement des squelettes de code \u00e0 partir des diagrammes.<\/li>\n<li><strong>Surveillance en temps r\u00e9el :<\/strong> Les mod\u00e8les de processus sont d\u00e9sormais li\u00e9s aux analyses en temps r\u00e9el. Les d\u00e9veloppeurs peuvent voir o\u00f9 les processus bloquent en production et mettre \u00e0 jour le mod\u00e8le en cons\u00e9quence.<\/li>\n<\/ul>\n<h2>Guides techniques d&#8217;impl\u00e9mentation \ud83d\udee0\ufe0f<\/h2>\n<p>Pour impl\u00e9menter efficacement le BPMN, suivez ces directives techniques.<\/p>\n<ul>\n<li><strong>Gardez les diagrammes simples :<\/strong> Utilisez les sous-processus pour cacher la complexit\u00e9. Un diagramme ne doit pas n\u00e9cessiter de d\u00e9filement pour \u00eatre compris.<\/li>\n<li><strong>Utilisez des noms clairs :<\/strong> Les \u00e9tiquettes des t\u00e2ches et des passerelles doivent \u00eatre descriptives. \u00c9vitez les abr\u00e9viations qui n\u00e9cessitent une l\u00e9gende pour \u00eatre comprises.<\/li>\n<li><strong>D\u00e9finissez les contrats de donn\u00e9es :<\/strong> Assurez-vous que les objets de donn\u00e9es sont typ\u00e9s. Cela emp\u00eache les erreurs \u00e0 l&#8217;ex\u00e9cution caus\u00e9es par des champs manquants.<\/li>\n<li><strong>Testez les chemins logiques :<\/strong> \u00c9crivez des tests unitaires pour chaque branche cr\u00e9\u00e9e par un passage. La couverture est essentielle.<\/li>\n<li><strong>Documentez les hypoth\u00e8ses<\/strong>Si un processus d\u00e9pend d&#8217;un chronom\u00e9trage externe ou d&#8217;\u00e9tats sp\u00e9cifiques des donn\u00e9es, documentez cela dans les notes du diagramme.<\/li>\n<\/ul>\n<h2>Conclusion sur la mod\u00e9lisation des processus \ud83c\udfc1<\/h2>\n<p>Adopter le BPMN en tant que d\u00e9veloppeur ne signifie pas devenir analyste m\u00e9tier. Cela signifie acqu\u00e9rir la capacit\u00e9 de lire et d&#8217;\u00e9crire le langage de la logique m\u00e9tier. Cette comp\u00e9tence r\u00e9duit les frictions entre les \u00e9quipes et garantit que le code livr\u00e9 correspond \u00e0 la valeur m\u00e9tier attendue. En traitant les mod\u00e8les de processus comme des sp\u00e9cifications ex\u00e9cutables, les \u00e9quipes de d\u00e9veloppement peuvent construire des syst\u00e8mes plus robustes, maintenables et align\u00e9s sur les objectifs organisationnels. L&#8217;investissement dans l&#8217;apprentissage de ces normes se traduit par une r\u00e9duction des reprises de travail et une communication plus claire \u00e0 travers l&#8217;organisation.<\/p>\n<p>En fin de compte, l&#8217;objectif est de cr\u00e9er un logiciel qui fonctionne comme pr\u00e9vu. Le BPMN fournit le plan directeur de cette intention. En int\u00e9grant ces pratiques dans le cycle de d\u00e9veloppement, les \u00e9quipes peuvent s&#8217;assurer que leurs solutions techniques reposent sur une base solide de logique v\u00e9rifi\u00e9e.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans le paysage du d\u00e9veloppement logiciel, un d\u00e9fi persistant reste la traduction des exigences m\u00e9tiers abstraites en impl\u00e9mentations techniques concr\u00e8tes.<\/p>\n","protected":false},"author":1,"featured_media":12296,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09","_yoast_wpseo_metadesc":"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f","footnotes":""},"categories":[9],"tags":[112,114],"class_list":["post-12295","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bpmn","tag-academic","tag-bpmn"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09<\/title>\n<meta name=\"description\" content=\"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09\" \/>\n<meta property=\"og:description\" content=\"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"Cyberm\u00e9diane\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-05T11:31:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1664\" \/>\n\t<meta property=\"og:image:height\" content=\"928\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"vpadmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@vpadmin\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"vpadmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\"},\"author\":{\"name\":\"vpadmin\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\"},\"headline\":\"Mod\u00e8le et notation des processus m\u00e9tiers pour les d\u00e9veloppeurs : combler le foss\u00e9 entre le code et la logique m\u00e9tier\",\"datePublished\":\"2026-04-05T11:31:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\"},\"wordCount\":2893,\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\",\"keywords\":[\"academic\",\"bpmn\"],\"articleSection\":[\"BPMN\"],\"inLanguage\":\"fr-FR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\",\"url\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\",\"name\":\"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\",\"datePublished\":\"2026-04-05T11:31:53+00:00\",\"author\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\"},\"description\":\"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f\",\"breadcrumb\":{\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage\",\"url\":\"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\",\"contentUrl\":\"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg\",\"width\":1664,\"height\":928},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cybermedian.com\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mod\u00e8le et notation des processus m\u00e9tiers pour les d\u00e9veloppeurs : combler le foss\u00e9 entre le code et la logique m\u00e9tier\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#website\",\"url\":\"https:\/\/www.cybermedian.com\/fr\/\",\"name\":\"Cyberm\u00e9diane\",\"description\":\"Apprendre une nouvelle chose tous les jours\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cybermedian.com\/fr\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a\",\"name\":\"vpadmin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g\",\"caption\":\"vpadmin\"},\"sameAs\":[\"https:\/\/x.com\/vpadmin\"],\"url\":\"https:\/\/www.cybermedian.com\/fr\/author\/vpadmin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09","description":"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/","og_locale":"fr_FR","og_type":"article","og_title":"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09","og_description":"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f","og_url":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/","og_site_name":"Cyberm\u00e9diane","article_published_time":"2026-04-05T11:31:53+00:00","og_image":[{"width":1664,"height":928,"url":"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg","type":"image\/jpeg"}],"author":"vpadmin","twitter_card":"summary_large_image","twitter_creator":"@vpadmin","twitter_misc":{"\u00c9crit par":"vpadmin","Dur\u00e9e de lecture estim\u00e9e":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#article","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/"},"author":{"name":"vpadmin","@id":"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a"},"headline":"Mod\u00e8le et notation des processus m\u00e9tiers pour les d\u00e9veloppeurs : combler le foss\u00e9 entre le code et la logique m\u00e9tier","datePublished":"2026-04-05T11:31:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/"},"wordCount":2893,"image":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg","keywords":["academic","bpmn"],"articleSection":["BPMN"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/","url":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/","name":"BPMN pour les d\u00e9veloppeurs : pont entre le code et la logique m\u00e9tier \ud83c\udf09","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg","datePublished":"2026-04-05T11:31:53+00:00","author":{"@id":"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a"},"description":"Apprenez comment le BPMN 2.0 relie les exigences m\u00e9tiers \u00e0 la mise en \u0153uvre technique. Un guide pour d\u00e9veloppeurs sur les normes de mod\u00e9lisation des processus. \ud83d\udee0\ufe0f","breadcrumb":{"@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#primaryimage","url":"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg","contentUrl":"https:\/\/www.cybermedian.com\/fr\/wp-content\/uploads\/sites\/10\/2026\/04\/bpmn-developers-guide-kawaii-infographic-16x9-1.jpg","width":1664,"height":928},{"@type":"BreadcrumbList","@id":"https:\/\/www.cybermedian.com\/fr\/bpmn-for-developers-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cybermedian.com\/fr\/"},{"@type":"ListItem","position":2,"name":"Mod\u00e8le et notation des processus m\u00e9tiers pour les d\u00e9veloppeurs : combler le foss\u00e9 entre le code et la logique m\u00e9tier"}]},{"@type":"WebSite","@id":"https:\/\/www.cybermedian.com\/fr\/#website","url":"https:\/\/www.cybermedian.com\/fr\/","name":"Cyberm\u00e9diane","description":"Apprendre une nouvelle chose tous les jours","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cybermedian.com\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/0122cdf8fc3b73482dd8a30c8500f75a","name":"vpadmin","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.cybermedian.com\/fr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3914788226b9b0af628488720662164f4641c6125d0bd38d90ae34f01c8c4ea3?s=96&d=mm&r=g","caption":"vpadmin"},"sameAs":["https:\/\/x.com\/vpadmin"],"url":"https:\/\/www.cybermedian.com\/fr\/author\/vpadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/posts\/12295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/comments?post=12295"}],"version-history":[{"count":0,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/posts\/12295\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/media\/12296"}],"wp:attachment":[{"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/media?parent=12295"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/categories?post=12295"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cybermedian.com\/fr\/wp-json\/wp\/v2\/tags?post=12295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}