Voici une question que je reçois en support plus souvent que vous ne l’imaginez : « Nous avons configuré un workflow, alors pourquoi rien ne se passe ? » Neuf fois sur dix, la réponse est la même. L’équipe a construit le diagramme. Elle a oublié l’élément qui l’exécute.
Un workflow et un moteur de workflow ne sont pas le même objet. L’un est une carte. L’autre est la voiture. Vous pouvez disposer d’une carte magnifiquement détaillée et ne jamais aller nulle part. Cet article porte sur la voiture : ce qu’elle fait réellement, comment elle fonctionne en interne et comment savoir si vous en avez vraiment besoin avant de passer trois mois à construire votre environnement autour d’elle.
Ce que les équipes apprennent trop tard
- Un moteur de workflow exécute et gère les états : le diagramme n’est qu’un plan tant que le moteur ne l’exécute pas.
- 89 % des organisations prévoyaient d’adopter l’automatisation des workflows, mais moins de 70 % avaient automatisé ne serait-ce que la moitié de leurs processus répétitifs.
- Un moteur est le bon choix lorsque les processus sont longs, impliquent plusieurs systèmes ou nécessitent une véritable récupération après erreur, mais pas pour chaque automatisation en trois étapes.
Ce qu’est réellement un moteur de workflow
La plupart des définitions d’un moteur de workflow masquent l’élément important. IBM définit un moteur de workflow comme une application qui automatise et gère les workflows en définissant, exécutant et surveillant des séquences de tâches liées à des objectifs métier spécifiques. C’est à cette dernière partie que les équipes cessent de lire. Elles voient « automatise » et supposent que cela signifie « exécute automatiquement des choses », ce qui est techniquement vrai, mais insuffisant en pratique.
Un moteur de workflow gère et surveille les états d’activité. Il ne se contente pas de déclencher des actions. Il sait où se trouve une instance de processus à tout moment, quelle condition doit être remplie avant l’exécution de l’étape suivante et quoi faire lorsqu’un élément échoue. C’est un système d’exécution actif, pas un ordonnanceur passif installé dans une tâche cron.
Cette confusion fait perdre un temps réel aux équipes. Une équipe achète un outil de workflow, dessine un superbe diagramme de processus avec des approbations, une logique de branchement et des chemins d’escalade, l’active, puis découvre que rien ne persiste réellement entre les étapes. Un délai d’expiration survient. Personne n’en entend parler. Le ticket reste en attente. Le diagramme n’a jamais su que quelque chose n’allait pas. Le moteur l’aurait su.
Cet écart — entre un processus défini et un environnement d’exécution qui l’exécute — décrit ce dont parlent réellement la plupart des tickets de support concernant des « workflows défaillants ». Les équipes ont construit le modèle. Elles ont supposé obtenir aussi l’exécuteur. Parfois, c’était le cas. Souvent, elles ne réalisaient pas qu’il s’agissait de deux éléments distincts, avec des responsabilités différentes.
La différence entre un workflow et un moteur de workflow
Un workflow est le plan. Il décrit ce qui doit se produire : l’étape A mène à l’étape B si la condition X est vraie, sinon passez à l’étape C, avertissez quelqu’un à l’étape D. Le workflow répond à la question « quoi ». C’est un modèle de processus. Exécutable en théorie. Inerte à lui seul.
Un moteur de workflow prend ce plan et pilote son exécution réelle. C’est l’environnement d’exécution qui instancie le workflow, suit l’étape où se trouve actuellement chaque instance, évalue les conditions de transition et décide si l’exécution avance, attend, réessaie ou génère une erreur. L’exécution du workflow n’a lieu que parce qu’un moteur la gère. Le moteur répond à la question « qu’est-ce qui exécute tout cela ».
Salesforce exprime clairement cette distinction : le workflow correspond au « quoi », le moteur à « ce qui exécute ». Confondre les deux est la raison la plus fréquente pour laquelle les équipes sous-estiment ce qu’elles achètent. Elles voient un générateur de processus en glisser-déposer et supposent que l’environnement d’exécution est inclus. Parfois, oui. Parfois, elles ont simplement obtenu un outil de création de diagrammes à l’apparence très professionnelle.
Comment un moteur de workflow s’intègre dans la pile d’orchestration globale
Le moteur n’existe pas de manière isolée. IBM décrit l’orchestration des workflows comme l’exécution coordonnée de plusieurs tâches automatisées entre des applications et services métier : le moteur est le composant placé au centre de cette coordination. Considérez-le comme l’épine dorsale de la gestion des processus : il appelle des services, attend des réponses, suit les états et achemine les résultats. C’est ce qui transforme un ensemble d’outils et d’intégrations en un processus cohérent de bout en bout, plutôt qu’en une série d’appels API déconnectés.
Dans une pile d’orchestration, le moteur se situe entre la couche de définition du processus (le diagramme, le modèle BPMN, la définition JSON) et la couche d’exécution (les services, API et systèmes qui réalisent concrètement le travail). C’est le système de gestion qui fait communiquer les deux couches dans le bon ordre, au bon moment, avec le bon comportement de récupération lorsqu’un incident survient.
Comment fonctionnent les moteurs de workflow modernes en interne
Si je me retrouve à expliquer cela à répétition au support, c’est parce que les utilisateurs interagissent avec la surface des moteurs de workflow sans jamais voir ce qui se trouve dessous. Ils configurent des déclencheurs et des actions. Ils voient un voyant d’état vert. Ils supposent que tout fonctionne. En réalité, le moteur fait quelque chose de considérablement plus complexe.
![]()
Gestion des états et transitions d’activité
La gestion des états est la capacité essentielle qui distingue un moteur de workflow d’un outil d’automatisation plus simple. À tout moment, le moteur sait exactement à quelle étape se trouve chaque instance de processus active. Pas approximativement. Exactement. Si vous exécutez simultanément 400 workflows d’onboarding client, le moteur conserve l’état actuel des 400 : l’étape en cours, les entrées reçues, les éléments encore en attente et la durée d’attente de chacun.
Lorsqu’une étape se termine, le moteur évalue les conditions de transition afin de déterminer vers quelle activité passer ensuite. C’est la logique de séquencement : si l’étape B renvoie une certaine valeur, passez à l’étape C ; si elle expire, passez au gestionnaire d’erreurs ; si elle renvoie un code spécifique, attendez une action humaine avant de poursuivre. Sans cela, une étape défaillante n’a aucun chemin de récupération. Le processus s’arrête simplement. Vous le découvrez trois jours plus tard lorsqu’une personne appelle pour demander où en est son dossier.
L’exécution durable rend cela fiable à grande échelle. Le moteur persiste l’état entre les étapes afin que, si un serveur redémarre, qu’un service tombe en panne ou qu’un appel réseau échoue, l’instance de processus puisse reprendre exactement là où elle s’est arrêtée. Une vraie logique de nouvelle tentative en fait partie : le moteur connaît la différence entre « réessayer cette étape » et « l’instance de processus a elle-même échoué et nécessite une vérification humaine ». Un ordonnanceur ne connaît pas cette différence. Il se contente de relancer et d’espérer.
Voici le mode de défaillance concret lorsqu’il n’existe pas de gestion des états : un workflow de paiement appelle une API externe, l’appel expire et le moteur ne conserve aucune trace indiquant que l’appel a eu lieu. Il réessaie donc. Le paiement est effectué deux fois. Le client est débité deux fois. Le tableau de bord affiche le délai d’expiration initial comme une erreur, tandis que le double débit apparaît comme une réussite ailleurs.
C’est généralement là que le ticket commence.
Comment la prise de décision pilotée par l’IA modifie le chemin d’exécution
Les moteurs de workflow traditionnels suivent des règles codées en dur. La condition A est vraie → passez à l’étape B. C’est clair, prévisible et de plus en plus insuffisant pour les processus complexes du monde réel, où la bonne étape suivante dépend d’un contexte qui ne peut pas être réduit à une vérification binaire.
Les moteurs modernes intègrent une prise de décision pilotée par l’IA dans la couche de routage. Au lieu d’évaluer une condition fixe, le moteur transmet l’état actuel du processus à un modèle, reçoit une action suivante recommandée et l’applique. C’est ce qui rend possible un comportement véritablement agentique au sein d’un processus : la logique métier n’est pas entièrement prédéfinie. L’IA contribue à une partie de la décision au moment de l’exécution.
L’implication pratique est importante. Si vous concevez des workflows aujourd’hui, vous devez savoir si votre moteur peut gérer des branchements non déterministes ou s’il ne route que selon des conditions statiques. Un moteur capable d’appeler un modèle d’IA au milieu d’un processus et d’agir selon le résultat est fondamentalement différent d’un moteur qui ne le peut pas. J’ai vu des équipes bâtir des contournements complets pour cela : exporter l’état vers un service d’IA séparé, analyser le résultat manuellement, puis le réinjecter, alors que la bonne réponse était de choisir un moteur qui le gérait nativement.
Bibliothèque embarquée ou plateforme autonome : quelle architecture achetez-vous réellement ?
Il existe deux modèles de déploiement, qui impliquent des coûts opérationnels très différents. L’approche par bibliothèque embarquée consiste à intégrer un moteur de workflow à votre base de code existante, généralement sous la forme d’un package .NET, Java ou Node avec un concepteur graphique. Vous possédez toute l’infrastructure. Vous la déployez, la maintenez, la faites évoluer et la déboguez. Le moteur vous appartient et vous pouvez le configurer dans tout langage de programmation pris en charge par la bibliothèque ; des outils comme Docker ou des options open source comme Temporal vous offrent une flexibilité qu’une plateforme hébergée ne peut pas proposer. Le compromis est réel : la responsabilité d’ingénierie ne disparaît jamais.
Une plateforme hébergée autonome confie l’infrastructure du moteur à un tiers. Vous configurez les workflows via une interface visuelle, connectez des services à l’aide d’intégrations prédéfinies et laissez la plateforme gérer les préoccupations liées à l’exécution. Le démarrage est plus rapide. La complexité backend est réduite le premier jour. Mais dès que vous rencontrez un cas particulier que la couche visuelle de la plateforme ne traite pas, vous devez connaître les issues de secours disponibles : pouvez-vous écrire de la logique personnalisée, appeler des API arbitraires ou étendre le système sans le reconstruire ailleurs ? Une interface low-code ne signifie pas une complexité backend nulle. Cela signifie qu’un tiers en assume la plus grande partie, mais pas la totalité.
À quoi servent réellement les moteurs de workflow
Cas d’usage issus de la recherche, organisés par type d’équipe, processus automatisé et éléments qui échouent généralement sans moteur pour les coordonner.
Ingénierie et IT : orchestration de services distribués
Les équipes utilisant une architecture de microservices emploient des moteurs de workflow pour coordonner des processus en plusieurs étapes couvrant plusieurs services : validation de commande, réservation d’inventaire, traitement des paiements, envoi de notifications. Sans moteur pour suivre l’état entre tous ces services, une défaillance partielle à la troisième étape laisse la commande dans un état à moitié terminé, sans chemin de récupération automatisé ni responsable clairement identifié. Vous l’apprenez par le client, pas par le système.
Opérations, finance et RH : flux d’approbation et d’escalade
Approbations d’achats, demandes de congés, onboarding de prestataires, renouvellements de contrats fournisseurs : ce sont des processus métier longs qui attendent une action humaine, parfois pendant plusieurs jours. Un moteur conserve l’état entre ces interactions humaines, applique les échéances, déclenche des escalades lorsque les seuils sont dépassés et maintient une piste d’audit. Sans lui, le processus vit dans des fils d’e-mails et dans la mémoire de quelqu’un. Les workflows complexes impliquant plusieurs approbateurs deviennent réellement difficiles à suivre ou à récupérer lorsqu’ils se bloquent.
Sécurité et réponse aux incidents : coordination sous pression
Une alerte de sécurité déclenche une séquence : classifier l’événement, prévenir la bonne équipe, recueillir les preuves, escalader en l’absence d’accusé de réception après un seuil, documenter la résolution. Les moteurs de workflow permettent aux équipes d’automatiser de manière fiable les workflows de ce type de réponse aux incidents, car le moteur impose l’ordre, gère les escalades et crée un historique complet. Sans lui, l’automatisation du processus se résume à une checklist qui est ignorée lorsque les équipes agissent rapidement.
Équipes produit : les moteurs comme infrastructure applicative
Certaines équipes produit intègrent directement des moteurs de workflow dans leurs applications afin d’alimenter l’automatisation de processus visibles par les utilisateurs : gestion du cycle de vie des abonnements, chaînes d’approbation de documents, séquences d’onboarding client. Les moteurs de workflow permettent de créer ces fonctions comme des capacités applicatives de premier ordre, avec persistance des états, gestion des erreurs et visibilité intégrées, plutôt que comme une série de marqueurs de base de données improvisés et de tâches cron qui accumulent discrètement de la dette technique.
Opérations client : traitement des paiements et remboursements
C’est le cas d’usage que je vois le plus souvent sous-estimé. Un workflow de paiement appelle un prestataire, attend une réponse qui peut arriver en quatre secondes ou quatre heures, évalue le résultat, déclenche un remboursement ou une escalade et doit créer des workflows qui survivent aux interruptions réseau, aux délais d’expiration des API et aux retards humains. Un véritable moteur gère cela grâce à un état durable et une logique de nouvelle tentative. Les scripts et les ordonnanceurs le gèrent jusqu’au jour où ils n’y parviennent plus.
Dans Latenode, une configuration de ce type peut être créée autour de webhooks de prestataires de paiement qui démarrent un flux, avec un nœud JavaScript gérant la logique d’escalade et l’un des plus de 1 200 modèles d’IA disponibles classant le type d’événement — expiration, litige, annulation — afin d’orienter correctement le dossier. L’ensemble compte comme une seule exécution, quel que soit le nombre d’étapes, ce qui importe lorsque vous en exécutez des centaines par jour. Vous pouvez également le connecter à des systèmes externes via une intégration OAuth automatique, sans écrire de code de connexion pour chaque API.
Utiliser un moteur de workflow ou créer une orchestration personnalisée
C’est la décision qui génère le plus de réflexion excessive chez les équipes d’ingénierie. La question est généralement formulée ainsi : « devons-nous créer notre propre solution ou acheter ? », mais la formulation plus juste est la suivante : laquelle de ces trois options correspond à la complexité réelle de votre processus, à votre capacité de maintenance et à votre modèle de responsabilité d’équipe ?
| Approche | Cas d’usage le plus adapté | Complexité de mise en place | Charge de maintenance | Limites |
|---|---|---|---|---|
| Moteur de workflow dédié (bibliothèque embarquée) | Processus longs, orchestration de microservices distribués, équipes disposant d’une responsabilité d’ingénierie | Moyenne à élevée | Prise en charge par l’ingénierie | L’équipe grandit, les responsabilités deviennent floues, personne ne met à jour les définitions de processus |
| Plateforme de workflow autonome | Automatisation des opérations et processus métier, flux d’approbation, responsables non techniques, itérations rapides | Faible à moyenne | Partagée entre la plateforme et l’équipe | Les cas particuliers nécessitent une logique personnalisée que la couche visuelle de la plateforme ne peut pas exprimer |
| Code d’orchestration personnalisé | Exigences uniques, priorité au contrôle total, équipes disposant d’une forte capacité d’ingénierie | Élevée | Entièrement prise en charge par l’ingénierie | Se transforme en dette de maintenance ; quitte la tête de l’ingénieur d’origine et ne vit dans celle de personne d’autre |
Apache Airflow est la réponse standard pour l’orchestration de pipelines de données avec des équipes d’ingénierie capables de maintenir des DAG basés sur Python. Netflix Conductor a été conçu spécifiquement pour l’orchestration de microservices à grande échelle : il gère les processus longs, l’exécution parallèle et la logique de nouvelle tentative entre des systèmes distribués. Ce sont deux véritables options. Toutes deux nécessitent également une maturité d’ingénierie pour être exploitées. Les équipes que je vois peiner avec elles ne sont pas celles qui ont choisi le mauvais outil, mais celles qui ont sous-estimé le coût de responsabilité continu une fois que la configuration initiale a cessé d’être enthousiasmante.
Évolutif ne signifie pas automatiquement que c’est le bon choix. Si votre processus comporte trois étapes, s’exécute de manière synchrone et n’a pas besoin de survivre à des défaillances entre systèmes distribués, une plateforme d’intégration légère le gérera sans la surcharge d’un moteur complet. Cette surcharge devient justifiée lorsque vous avez besoin d’une exécution durable, de branchements complexes, d’un état réparti entre plusieurs systèmes ou d’une récupération après erreur allant au-delà de « réessayer trois fois et le consigner ».
Ce que je noterais à propos de l’orchestration personnalisée : pour les charges de travail existantes qui n’ont pas de limites de processus clairement définies, écrire du code d’orchestration personnalisé qui vous offre davantage de flexibilité aujourd’hui devient un problème de maintenance dans six mois, lorsque l’ingénieur qui l’a écrit travaille sur un autre projet. J’ai géré suffisamment de conversations de support de ce type pour avoir un avis sur la question.
![]()
Pourquoi les écarts d’adoption de l’automatisation des workflows persistent malgré des dépenses de marché élevées
L’écart d’adoption est bien documenté et véritablement frustrant à lire. Les données d’enquête citées dans le secteur montrent que 89 % des organisations prévoyaient d’adopter l’automatisation des workflows, mais que seulement 68 % avaient réussi à automatiser ne serait-ce que la moitié de leurs processus répétitifs. Cet écart — 21 points de pourcentage entre l’intention et l’exécution — ne se résorbe pas de lui-même. Il a des causes structurelles précises, et la plupart ne sont pas des problèmes de budget.
Les quatre idées reçues que je vois sans cesse faire dérailler les programmes d’automatisation avant qu’ils n’atteignent quoi que ce soit de significatif :
Les moteurs sont réservés aux grandes entreprises. Les données du marché ne confirment plus cela. Les grandes entreprises représentent la majorité du chiffre d’affaires du marché, mais les petites équipes constituent le segment d’adoptants qui croît le plus vite. Le seuil de complexité nécessitant un moteur a baissé à mesure que les plateformes sont devenues plus accessibles. Une équipe opérationnelle de 15 personnes avec un workflow d’approbation multi-systèmes bénéficie réellement d’un moteur de workflow, et pas seulement d’un Zap.
L’automatisation remplace les employés. Cette idée reçue fait échouer les initiatives de gestion des processus métier sur le plan politique avant qu’elles n’échouent techniquement. Les équipes résistent à l’automatisation parce qu’elles y voient une menace pour les effectifs. En pratique, les moteurs éliminent les relances manuelles, la récupération après erreur et les vérifications d’état que personne ne souhaite faire de toute façon. Le goulot d’étranglement de l’automatisation est généralement la croyance qu’un emploi est menacé, et non la technologie.
Vous avez besoin d’une plateforme unique tout-en-un. Cette idée coûte du temps et de l’argent d’une manière qui ne devient pas toujours visible avant la signature du contrat. Les équipes s’immobilisent en cherchant un outil unique qui gère chaque processus et chaque intégration. En réalité, les moteurs de workflow peuvent coexister avec d’autres outils lorsque les points d’intégration sont clairement définis. Commencez par ce qui est le plus défaillant. Rationalisez d’abord cet élément. Développez ensuite à partir d’une base qui fonctionne, plutôt qu’à partir d’une architecture complète qui n’existe que dans une présentation.
Vous devez tout revoir d’un coup avant de commencer. L’argument « nous devons simplifier le processus avant de l’automatiser » est légitime en théorie et paralysant en pratique. Les utilisateurs métier n’ont pas la capacité nécessaire pour une refonte de processus de six mois avant de toucher à une seule automatisation. Les équipes qui comblent réellement l’écart d’adoption commencent par un processus, démontrent le résultat et créent une dynamique à partir de là.
📊 En chiffres :
Le marché de l’automatisation des workflows était évalué à environ 26 milliards de dollars en 2024, avec des gains de productivité rapportés de 30 à 40 % et des chiffres de ROI atteignant jusqu’à 200 à 300 % dans l’année suivant un déploiement complet. Un écart de 21 points entre l’intention (89 %) et l’exécution (68 %) au sein de la même cohorte signifie que l’investissement est bien présent. Les obstacles structurels à l’adoption ne sont pas principalement financiers.
Ce qu’il faut vérifier avant de vous engager sur un moteur de workflow
Je vais vous donner les véritables questions auxquelles répondre avant de vous engager sur un moteur de workflow, car le conseil habituel « évaluez vos besoins » n’aide pas une personne qui doit prendre cette décision d’ici jeudi.
La question de l’évolutivité est réelle, mais elle est souvent posée trop tôt. Avant de vous demander si le moteur passera à l’échelle, demandez-vous si votre processus justifie réellement un moteur. Implique-t-il des étapes distribuées entre plusieurs systèmes ? S’exécute-t-il assez longtemps pour que des pannes réseau ou l’indisponibilité d’un service puissent l’interrompre ? Nécessite-t-il une récupération après erreur allant au-delà de « réessayer et consigner » ? Couvre-t-il plusieurs acteurs — humains, services, API externes — qui doivent tous être coordonnés ? Si la réponse est oui à la plupart de ces questions, un moteur est justifié. Si votre processus se compose de trois appels API séquentiels terminés en moins de cinq secondes, vous achetez peut-être une infrastructure pour un problème qu’une automatisation plus simple résout déjà.
La question de la persistance de l’état est celle que les équipes ignorent avant de le regretter plus tard. Si votre processus ne peut pas survivre à une défaillance en cours de route et reprendre exactement là où il s’est arrêté, vous reconstruirez manuellement la couche d’intervention humaine chaque fois qu’un élément échoue à un moment inopportun. Demandez-vous si vous devez prédéfinir une logique de récupération ou si vous êtes à l’aise avec des processus qui échouent silencieusement et nécessitent un redémarrage manuel.
Et BPMN : si votre organisation dispose de définitions de processus existantes modélisées dans une notation standardisée, vérifiez si le moteur que vous évaluez peut interpréter ces définitions nativement ou si vous devrez tout reconstruire dans un format propriétaire. Ce coût de migration n’est pas toujours visible lors de l’évaluation initiale.
Seuils d’évolutivité et de complexité des processus
Les signaux concrets indiquant que la surcharge d’un moteur est justifiée : vous avez besoin d’un traçage distribué entre plusieurs systèmes pour comprendre pourquoi un processus a échoué ; vous avez des exigences d’observabilité impliquant que chaque étape doit être consignée avec son entrée, sa sortie et sa durée ; votre traitement de données traverse plus de deux services externes avec des SLA différents ; vous exploitez des services cloud soumis à des limites de débit qui exigent une logique intelligente de nouvelle tentative et de temporisation progressive ; votre processus implique une série de tâches où l’échec de la quatrième étape impose de compenser ou d’annuler les étapes un à trois.
Si votre automatisation actuelle échoue et que la récupération consiste à « cliquer sur Réessayer », vous n’avez probablement pas un problème de moteur de workflow. Vous avez un problème de surveillance et d’alertes, qui est bien moins coûteux à résoudre.
Voici des seuils de complexité indicatifs servant de points de départ pratiques : signalez tout workflow nécessitant plus de trois appels à des services externes avec une dépendance d’état entre eux ; envisagez un moteur dédié lorsqu’une instance de processus peut s’exécuter pendant plus de 24 heures ; considérez tout processus impliquant des approbations humaines avec application de SLA comme relevant d’un moteur, et non d’un ordonnanceur.
Qui doit en être responsable après la configuration : la partie que les équipes ignorent généralement
C’est à ce stade que l’évaluation préalable à l’achat devient presque toujours silencieuse. Tout le monde est enthousiaste à l’idée de créer l’automatisation. Personne ne veut parler de la personne qui maintiendra les définitions des processus métier dans six mois lorsque les exigences évolueront, qui surveillera les journaux d’exécution et réagira lorsqu’une tâche atteindra sa limite de tentatives, qui gérera le cycle de vie d’un processus lorsqu’une API en aval modifiera son schéma, ni qui mettra à jour la configuration JSON ou YAML lorsqu’une nouvelle étape sera ajoutée au flux d’approbation.
Les exigences de piste d’audit et d’intégrité des données aggravent la situation. Certains processus — approbations financières, workflows de conformité, tout ce qui touche à un CRM ou à un système de facturation externe — nécessitent une personne capable de lire le journal d’exécution, d’expliquer ce qui est arrivé à une instance de processus à une date précise et de remonter une erreur jusqu’à sa source. Ce n’est pas un problème du jour de la configuration. C’est une responsabilité continue de gestion des tâches qui doit avoir un responsable désigné avant la mise en production.
Les équipes qui intègrent un moteur de workflow avec des API et créent des workflows entre des API, des définitions de processus gérées dans GitHub et des systèmes CRM externes découvrent souvent la véritable charge de maintenance lorsque la première définition de processus doit être mise à jour après le départ de l’ingénieur d’origine. J’ai géré ces conversations. Elles commencent généralement par « personne ne sait comment cela a été construit » et se terminent par « pouvez-vous nous aider à retrouver le YAML ? ».
Les blocs de construction sont faciles à assembler la première fois. La question est de savoir qui les réassemble lorsqu’ils s’effondrent à 2 heures du matin un mardi.
![]()


