Gérer les exceptions réelles commence par des exemples concrets. Apprenez à collecter approbations tardives, données manquantes et cas spéciaux avant de créer la logique de l'app.

Un organigramme soigné a belle allure parce qu'il suppose que les gens agissent dans le bon ordre, avec les bonnes données, au bon moment. Le travail réel ressemble rarement à cela. Quelqu'un soumet un formulaire en retard, un manager est malade, un client oublie un détail clé, ou un paiement nécessite une approbation spéciale dont personne n'avait parlé au départ.
C'est pourquoi la première version d'une application peut sembler achevée lors d'une démo, puis commencer à casser dès que de vraies personnes l'utilisent. Le chemin heureux fonctionne. Le travail quotidien ne reste pas longtemps sur le chemin heureux.
Le point de départ le plus sûr est de supposer que la version nette est incomplète. Une simple demande peut changer rapidement quand un petit détail manque. Un champ manquant, un client inhabituel ou une approbation retardée peut bloquer tout le processus et laisser les gens se demander quoi faire ensuite.
Les échecs courants sont généralement simples :
Ce n'est pas qu'une légère nuisance. Un cas bizarre peut bloquer tout ce qui le suit. Le personnel commence à utiliser des solutions de contournement dans le chat, des tableurs ou des e‑mails, et l'app cesse d'être le lieu unique de travail.
Un meilleur objectif est simple : collecter les exceptions avant d'écrire les règles. Demandez ce qui se passe lorsqu'une donnée manque, quand le timing est décalé et quand une demande ne correspond pas au parcours standard. Ces exemples désordonnés ne sont pas des détails secondaires. Ce sont eux qui décident si votre app fonctionne dans la vraie vie.
Les premiers problèmes à capturer ne sont pas des cas rares. Ce sont les événements désordonnés qui surviennent chaque semaine et qui cassent silencieusement un workflow propre. Si vous voulez une première version plus solide, regardez les endroits où le travail est retardé, bloqué ou confié à une personne parce que le système ne peut pas décider.
Les approbations tardives sont généralement en tête de liste. Un manager approuve une demande après la date limite, après la clôture de la paie ou après que le stock a déjà été réapprovisionné. L'app a besoin d'une règle pour ce moment. Doit‑elle rouvrir la demande, en créer une nouvelle, notifier la finance ou l'envoyer en revue au lieu de faire comme si l'approbation était arrivée à l'heure ?
Les données manquantes sont un autre blocage courant. Un formulaire peut être soumis sans numéro fiscal, sans reçu, sans date de livraison ou sans contact client. Si l'étape suivante dépend de ce champ, le flux ne devrait pas échouer avec une erreur vague. Il devrait se mettre en pause, afficher ce qui manque et faciliter la correction.
Les cas spéciaux comptent parce qu'ils exposent les limites du parcours normal. Peut‑être que la plupart des remboursements sont simples, mais au‑dessus d'un certain montant il faut une preuve supplémentaire. Peut‑être qu'un département suit une règle d'approbation différente. Ces cas n'exigent pas une nouvelle application complète, mais ils nécessitent des embranchements clairs.
Un premier passage utile consiste à rechercher quatre modèles : des approbations qui arrivent trop tard pour suivre la route initiale, des détails manquants qui bloquent l'action suivante, des demandes inhabituelles qui ont besoin d'une règle différente, et des moments où le système doit s'arrêter et demander une intervention humaine.
La revue humaine n'est pas un échec. C'est souvent le choix le plus sûr quand l'app voit des données contradictoires, une exception de politique ou une action à fort coût. Une file d'attente de revue en pause vaut généralement mieux qu'une erreur silencieuse.
Si vous identifiez ces exceptions tôt, la première version paraîtra bien plus réaliste et beaucoup moins fragile.
La façon la plus rapide de rater une mauvaise exception est de ne demander que le manager qui a conçu le processus. Les vrais problèmes se trouvent généralement chez les personnes qui font le travail au quotidien. Elles savent quelles étapes sont sautées, quels champs sont souvent vides et quelles approbations arrivent en retard, hors ordre ou en dehors du système.
Commencez par de courtes conversations. Demandez aux gens de décrire un cas normal, puis ce qui a changé la dernière fois que les choses se sont embrouillées. Ne demandez pas des avis généraux sur le processus. Demandez des histoires vraies : ce qui s'est passé, ce qui manquait, qui a corrigé et ce qu'ils ont dû faire manuellement.
Les anciens travaux sont une autre bonne source. Les e‑mails passés, tickets support, messages de chat et notes de transfert montrent souvent le moment précis où un flux propre a cassé. Ces archives sont utiles parce qu'elles capturent le langage utilisé quand quelque chose tourne mal, pas la version épurée d'un document de procédure.
Vérifiez aussi les outils utilisés en parallèle. Si quelqu'un tient un tableur, une liste sur post‑it ou un document privé pour suivre les exceptions, c'est un signal fort. Les contournements existent pour une raison. Ils révèlent souvent des règles que votre app devra implémenter dès le jour un.
Les meilleures sources à examiner en priorité sont généralement les systèmes parallèles comme les tableurs et listes personnelles, les fils d'e‑mail où les gens demandent des détails manquants ou des approbations manuelles, les conversations de chat sur des corrections urgentes, les tickets support qui mentionnent des retards ou des entrées rejetées, et les derniers cas qui ont échoué avec la chronologie complète.
Cette dernière source est plus importante qu'il n'y paraît. Les cas récemment ratés sont souvent meilleurs que de vieux résumés parce qu'ils montrent la chaîne exacte d'événements. Vous pouvez repérer des motifs comme une approbation arrivée après la date limite, un client n'ayant jamais envoyé un fichier requis, ou quelqu'un appliquant une règle spéciale non documentée.
Si vous esquissez une première version dans un constructeur basé sur le chat, collectez ces exemples avant de générer la logique. Il est beaucoup plus facile de construire des flux sûrs quand les cas désordonnés sont visibles dès le départ.
Commencez par un cas réel, pas par une théorie. Rédigez‑le comme une personne l'expliquerait à un collègue : ce qu'elle essayait de faire, ce qui a foiré, qui est intervenu et comment cela s'est terminé.
Une histoire désordonnée comme « la demande s'est bloquée parce que le manager était en congé, puis la finance l'a approuvée plus tard avec un champ manquant » est plus utile qu'un organigramme propre. Elle montre les points où les apps cassent habituellement.
Pour chaque cas, extrayez quatre faits : ce qui s'est passé, qui a pris la décision, pourquoi ils l'ont prise, et ce que l'app doit faire ensuite.
Cela maintient l'attention sur le comportement, pas seulement sur les écrans. L'objectif n'est pas de couvrir tous les cas étranges dès le premier jour. L'objectif est d'identifier des motifs répétables.
Une fois que vous avez quelques histoires, regroupez celles qui se ressemblent. Des bacs simples apparaissent souvent d'eux‑mêmes : approbation tardive, information manquante, mauvaise personne sollicitée, demande en double ou approbation spéciale nécessaire au‑dessus d'un plafond.
Puis transformez chaque groupe en la règle la plus légère qui fonctionne. Cette règle n'a pas toujours besoin d'une automatisation complète. Parfois la meilleure règle est un avertissement, une pause ou une étape de revue manuelle.
Par exemple, si une approbation est tardive parce que l'approbateur est absent, l'app peut envoyer un rappel après 24 heures, réassigner après 48 heures ou solliciter un approbateur de secours. Si un champ important manque, la meilleure option peut être une sauvegarde en brouillon plutôt qu'un arrêt brutal. Cela fait avancer le processus sans masquer le problème.
Si vous construisez dans un outil basé sur le chat tel que Koder.ai, des cas en langage clair aident beaucoup. Ils donnent au système quelque chose de concret à traiter, de sorte que le premier workflow est basé sur des décisions réelles plutôt que sur une supposition propre mais irréaliste.
Avant de valider la logique, faites passer deux ou trois histoires réelles par le flux. Posez quelques questions simples. Le flux atteint‑il le même résultat que le cas réel ? Échoue‑t‑il de manière sûre quand des informations manquent ? Sait‑il quand se mettre en pause et demander un humain ?
Si la réponse est non, n'ajoutez pas de complexité immédiatement. Réécrivez la règle en mots plus simples d'abord. Des règles claires conduisent généralement à de meilleurs workflows que des règles astucieuses que personne ne peut expliquer.
Commencez par la version propre. Un employé soumet une note de frais de 42 $ pour un taxi après avoir rendu visite à un client. Il ajoute la date, le montant, le nom du projet et le reçu. Son manager l'approuve avant la date limite de paie, et la finance l'inclut dans le prochain run de remboursement.
Ce chemin est facile à modéliser, mais ce n'est pas tout le travail.
Ajoutez maintenant la première exception. L'employé soumet la demande à temps, mais le manager l'approuve un jour après la clôture de la paie. L'app ne doit pas la faire passer en silence comme si de rien n'était, et elle ne doit pas non plus rejeter la demande.
Une meilleure réponse est de déplacer la demande dans un statut clair comme « approuvée après la clôture ». À partir de là, l'app peut retenir le paiement pour le cycle de paie suivant, notifier l'employé de la nouvelle date de paiement et envoyer le cas à la finance seulement si la politique de l'entreprise autorise un paiement hors cycle.
Cela signifie que l'app doit enregistrer plus d'une date. Elle doit suivre quand la dépense a été soumise, quand elle a été approuvée et quel cutoff elle a manqué.
Ajoutez maintenant la deuxième exception. L'employé a oublié le reçu, donc le manager approuve la demande sur la seule base de l'explication. Deux jours plus tard, le reçu arrive.
Si l'app est bien conçue, le cas ne disparaît pas ni ne redémarre à zéro. Il passe en attente « en attente de reçu », envoie un rappel et reste ouvert. Quand le reçu est téléchargé plus tard, l'app rouvre le dossier et l'envoie uniquement à l'étape qui nécessite encore une action.
Un flux comme celui‑ci peut passer par quelques états simples : soumis, en attente d'approbation manager, approuvé après la clôture, en attente de reçu, puis rouvert pour revue finance.
Voilà à quoi ressemble la gestion des exceptions en pratique. L'app ne se contente pas de dire oui ou non. Elle décide de mettre en attente, d'orienter ou de rouvrir un dossier sans perdre le contexte, les dates ou les responsabilités.
Les informations manquantes sont normales, pas un cas rare. Si votre app suppose que chaque formulaire sera complet du premier coup, le flux calera dès que de vrais utilisateurs rencontreront une lacune. Une meilleure règle est simple : n'exigez que ce qui est nécessaire pour l'étape suivante.
Planifiez étape par étape. Demandez ce que l'app doit connaître maintenant et ce qui peut attendre. Une demande de frais peut nécessiter le montant et le nom de l'employé avant d'être soumise, mais le reçu final peut n'être requis qu'avant le paiement. Cela permet au travail d'avancer sans diminuer le contrôle.
Les utilisateurs doivent pouvoir sauvegarder leur progression même lorsque certains détails manquent. Un brouillon réouvert est bien mieux qu'un formulaire qui force à tout recommencer. Cela compte encore plus lorsque l'information manquante dépend de quelqu'un d'autre, comme un manager, un fournisseur ou la finance.
Des statuts clairs aident tout le monde à comprendre ce qui se passe. Gardez‑les courts et faciles à lire : en attente d'info, bloqué par document manquant, nécessite revue, prêt pour approbation, renvoyé pour mise à jour.
Ces étiquettes remplissent deux fonctions à la fois. Elles montrent l'état actuel et indiquent à l'utilisateur quel type de problème doit être traité.
Chaque élément manquant a aussi besoin d'un propriétaire. Si un numéro fiscal manque, qui l'ajoute ? Si un reçu est illisible, qui le remplace ? Si une note d'approbation est absente, qui peut la fournir ? Quand personne ne prend la charge de la correction, les dossiers restent en suspens.
Un exemple simple rend cela clair. Imaginez un employé soumettant une dépense de voyage sans reçu parce que l'hôtel ne l'a pas encore envoyé. L'app devrait quand même permettre de sauvegarder et de soumettre la demande avec un statut comme « en attente de reçu ». La finance peut réviser le reste, l'employé sait ce qui manque et la demande ne disparaît pas dans une erreur silencieuse.
L'automatisation fonctionne le mieux quand une même entrée devrait conduire au même résultat presque à chaque fois. Si une demande suit un motif clair, donnez‑lui une règle. Si la réponse dépend d'un contexte manquant, d'un timing inhabituel ou d'un jugement, envoyez‑la à une personne.
Cette séparation est importante. Une bonne app doit aller vite sur les cas normaux et ralentir sur les cas flous. Une mauvaise décision automatique peut créer plus de travail qu'une courte revue manuelle.
Un test simple aide : deux membres d'une équipe feraient‑ils le même choix à partir des mêmes données ? Si oui, automatisez. Si non, gardez un humain dans la boucle.
Bons candidats pour l'automatisation : formulaires complets avec tous les champs requis, demandes qui respectent les limites de la politique, actions répétées avec des délais clairs et approbations qui suivent toujours le même parcours.
Certaines situations ne doivent pas être devinées : détails clés manquants, demande qui brise un schéma normal, règles conflictuelles, coût ou risque élevé, ou nécessité d'une explication humaine pour une exception.
Imaginez une demande de voyage sans destination, avec une date urgente et un coût supérieur à la limite habituelle. L'app ne devrait pas tenter d'être futée. Elle devrait signaler le cas, mettre le flux en pause et l'acheminer vers la bonne personne.
Tout aussi important, conservez la raison de chaque exception visible. Affichez pourquoi l'app s'est arrêtée, quelle règle a été déclenchée et quelle information manque. Cela accélère les revues et aide l'équipe à améliorer le workflow plus tard.
Beaucoup de projets d'app tournent mal avant même qu'on écrive la logique. L'équipe dessine un chemin propre, suppose que les gens le suivront et ignore les cas bizarres qui surviennent chaque semaine. C'est ainsi que des workflows simples se transforment en tickets de support, corrections manuelles et utilisateurs confus.
La première erreur est de concevoir à partir d'hypothèses seulement. Si vous devinez comment fonctionnent les approbations, les champs manquants ou les exceptions, vous passerez à côté des cas qui comptent le plus. Un manager approuve en retard, un dossier client arrive à moitié incomplet ou un paiement nécessite une revue parce que le montant est inhabituel.
Une autre erreur est de masquer différentes situations dans une règle vague. Une règle comme « envoyer à l'administration si quelque chose semble incorrect » paraît flexible, mais crée de nouveaux problèmes. Qui est l'administration ? Qu'est‑ce qui compte comme incorrect ? Que se passe‑t‑il si personne ne répond pendant deux jours ?
Cela nuit aussi aux utilisateurs quand l'app force un redémarrage complet. Si un document manque ou si un approbateur rejette une étape, les gens ne devraient pas devoir tout ressaisir depuis le début. Un meilleur flux sauvegarde la progression, signale clairement le problème et permet à l'utilisateur de corriger uniquement la partie bloquée.
D'autres problèmes sont faciles à manquer parce qu'ils semblent secondaires : timing, responsabilité et historique. Ils ne sont pas secondaires. Si une approbation arrive après une date limite, l'app doit savoir si elle l'accepte, l'escalade ou rouvre la demande. Si un dossier est bloqué, quelqu'un doit être responsable de la prochaine action. Si le statut change, il faut voir qui l'a modifié et pourquoi.
L'historique d'audit importe pour des raisons simples. Les gens ont besoin de savoir qui a modifié une valeur, qui a approuvé une exception et quand le statut a changé.
Avant de transformer un workflow en règles, faites une pause et vérifiez si vos entrées correspondent au travail réel. Les diagrammes propres manquent souvent des cas bizarres qui causent des retards, de la confusion ou des corrections manuelles plus tard.
Une revue rapide aide :
Un cas de test simple suffit souvent à exposer une logique faible. Imaginez une demande d'achat soumise sans nom de fournisseur, puis approuvée tardivement par un responsable de département. Le demandeur peut‑il corriger le champ manquant ? L'app sait‑elle si elle doit rouvrir la demande, continuer ou demander à la finance de la revoir ?
C'est le niveau de détail que vous voulez avant de générer la logique. Des histoires courtes et réelles mènent à des premières versions plus sûres et à moins de surprises lorsque les utilisateurs commencent à utiliser l'app.
Commencez petit. Choisissez un workflow, pas tout le business. Ensuite, collectez cinq cas réels d'exceptions auprès des personnes qui effectuent le travail au quotidien, par exemple une approbation tardive, un reçu manquant, un manager en congé, une demande en double ou un dossier nécessitant l'intervention de la finance.
Construisez la première version autour de ce workflow restreint et de ces cinq cas. Gardez les règles faciles à lire. Si une demande est incomplète, affichez ce qui manque. Si une approbation est tardive, décidez quand rappeler, quand escalader et quand mettre en pause. Si un cas ne suit pas le chemin normal, indiquez clairement qui doit le revoir.
Testez ensuite avec les personnes impliquées : celui qui soumet la demande, le premier approbateur, la personne qui corrige les exceptions, le manager qui reçoit les escalades et toute personne qui voit le résultat final.
Observez où ils s'arrêtent, devinent ou demandent de l'aide. Ces moments importent plus que ce qui a bien fonctionné. Si trois personnes bloquent au même endroit, la règle ou l'écran doit changer.
Une application de frais peut très bien fonctionner jusqu'à ce que quelqu'un soumette un reçu de taxi sans code projet ou l'envoie après la clôture mensuelle. Votre première version n'a pas besoin de résoudre chaque cas rare. Elle doit capter les exceptions courantes, expliquer l'action suivante et laisser une voie claire pour la revue humaine.
Puis ajustez les règles par petites itérations. Supprimez les étapes qui créent de la confusion. Ajoutez des champs uniquement quand ils empêchent des problèmes récurrents. Changez le timing des rappels si c'est trop tôt ou trop tard. De petits ajustements après des tests réels valent souvent mieux que d'ajouter une logique complexe pour des cas spéciaux trop tôt.
Si vous souhaitez prototyper rapidement, un constructeur basé sur le chat comme Koder.ai peut aider à transformer ces exemples réels en une app fonctionnelle étape par étape. La clé reste la même : commencez par les histoires désordonnées, puis construisez les règles autour d'elles.
La meilleure façon de comprendre la puissance de Koder est de le voir par vous-même.