Le RPA, Robotic Process Automation, c’est la Macro Windows devenue mature et permettant de faire +tout+ ce que ferait un humain avec un clavier, un écran et une souris. Au-delà des usages évidents, explorons l’intérêt de ces technologies
RPA : robotic process automation, pour quoi faire ?
Il n’y a pas d’API partout
On nous rebat les oreilles avec l’intelligence artificielle appuyée sur le Big Data, pour faire de la transformation digitale.
L’autre jour, j’explorais l’opportunité de prendre un logiciel SaaS pour notre paie. En discussion avec le responsable commercial de la société en question, je pose la question de l’alimentation du système en variables de paie : jours de congés, maladie, bonus, avance de frais…
Je fus étonné d’entendre : « il n’y a pas d’API pour cela. Nos clients ne nous le demandent pas. Nous avons un tableur excel formaté à remplir et à déverser dans le système ».
Je repensais à l’aphorisme de Steve Jobs : « Quand on demandait aux gens [aux clients] quel téléphone mobile ils voulaient dans les années 2000, ils demandaient des téléphones plus petits avec une batterie qui tenait plus longtemps. »
Donc c’est bien d’écouter le client, mais aller au devant de ses besoins non exprimés, c’est encore mieux.
Autre exemple : la banque. Quand nous voulons virer des paiements, via un fichier XML ISO 20022, pas moyen d’automatiser à des coûts raisonnables. Il faut se connecter avec un login, mot de passe et token, une première fois pour arriver dans l’interface web de gestion, puis une seconde fois pour se connecter au service de transfert de fichiers : login, mot de passe et token. Au total, minimum 5 minutes de temps. Heureusement que nous passons plusieurs dizaines de lignes de virement par fichier, sinon nous passerions ces 5 minutes multipliées par le nombre de lignes, ce qui prendrait des heures chaque mois, sans compter les risques d’erreur.

Que faire pour connecter les données entre des systèmes hétérogènes ?
Internet n’est pas un inter systèmes
De tels exemples où des gens doivent accomplir des tâches mécaniques, sans aucune intelligence, avec une grande répétitivité, sont innombrables.
On a créé des systèmes de traitement de l’information pour libérer du temps aux gens, mais on a pas fini le boulot aux frontières, et pour cause, car on ne sait pas ce qu’il y a de l’autre côté, et que personne n’a normalisé la manière d’échanger les données.
Résultat : on paie des heures et des heures de personnes ayant des BAC+5 pour faire des copier-coller, ou pire, recopier des données à la main, car pas possible de faire un copier-coller dans le champ de saisie.
Nous avons enfin un internet, mais à bas niveau : de la transmission de données. C’est déjà formidable ! Nous n’avons pas encore d’ « Intersystem » qui permettrait à des systèmes d’informations différents d’échanger des fiches produits, des commandes, des fiches salariés, des factures…
L’intérêt du RPA : combler les vides entre les systèmes
C’est là que le RPA entre en scène. Le RPA signifie Robotic Process Automation, automatisation de processus par des robots. Quand les interfaces sont prévues pour être opérées par des personnes, le RPA reproduit les actions des personnes. Et les meilleurs systèmes sont capables de s’adapter quand les champs s’affichent à des endroits différents en fonction du contexte, comme le ferait une personne qui cherche avec les yeux où se trouve dans la page la donnée qu’elle cherche. De même pour les champs de saisie : les robots de RPA permettent de faire comme un humain, et s’adaptent en fonction du contexte, pour saisir un login, un mot de passe, récupérer un One Time Password reçu par SMS pour se connecter à un service, aller à la page idoine, téléviser un fichier…
Le RPA est la transposition au niveau d’un poste de travail de macros écrites dans une application. Et comme une macro, les robots peuvent être robustes, c-à-d. s’adapter à des changements de contextes pas forcément tous imaginés, ou bien être très fragiles, et ne plus fonctionner si on ajoute une colonne ou si la donnée qui s’affiche normalement en 3ème ligne d’une page web se retrouve en 5ème ligne.

Un robot pour faire des copier-coller à ma place !
Le RPA vivra au-delà de la montée en maturité des API
On peut se dire le RPA est un mal nécessaire pour résoudre un problème temporaire, et que les efforts de normalisation vont permettre de converger d’un internet vers un « intersytem » . Pour ma part je n’y crois pas, tant que nous avons à faire à des interfaces homme-machine et à des processus traitant de données métiers hors du champ de la normalisation.
Ce que je mets dans le champ de la normalisation sont des données prescrites par les règlements comme la paie ou les données comptables. L’Etat a prescrit une manière de coder la donnée pour la paie avec la DSN, et les données comptables avec les fichier FEC et les normes de factures avec Chorus
Hors champ de la normalisation, il y a tout le reste hors champ d’intervention de l’Etat : une description d’article, une fiche salarié, un bordereau de livraison, un argumentaire marketing… et tout autre objet propre à un métier hors du domaine d’intervention de l’Etat.
Le RPA, le chainon manquant de la Data Science ?
De nombreux systèmes proposent des chaines de traitement de données automatisées, comme Dataiku, Google Data Studio et PowerBI. Mais comment alimenter ces systèmes si une partie des données provient de systèmes ne disposant pas d’interface sortante autre que celle mise à disposition d’utilisateurs comme un tableau de données ? Le RPA peut apporter une partie de la réponse, surtout s’il est additionné de machine learning pour améliorer continuellement la qualité de la reconnaissance et pour la rendre robuste aux changements de forme.
Le RPA est donc une solution durable pour faire le lien entre des systèmes hétérogènes et gagner de précieuses minutes en évitant des bullshit jobs, et donner ce temps aux gens pour leur confort, leur capacité de création et d’humanité.