Dans le contexte d’un projet de migration, nous sommes souvent confrontés à la problématique du passif de données et de reportings qui continuent de vivre. Sans parler de la reprise d’historique (transfert des données existantes de l’ancien vers le nouveau système), les équipes ont parfois besoin de maintenir leurs reportings qu’il faut unifier le temps de la transition. On pourrait croire qu’il suffit de faire des concaténations, mais ce n’est pas aussi simple. Et même lorsqu’il y a des API pour récupérer des données, elles ne font pas toujours l’affaire et il vaut mieux se tourner vers une solution de RPA(1) pour une migration menée avec succès.

Migrations de systèmes : la RPA à la rescousse

Ce n’est pas simple car qui dit changement de système dit changement de logique, de fournisseur, de version, de possibilités. Par quel bout l’attraper alors ? Le travail à réaliser pour fournir un reporting unifié aux équipes se découpe selon moi en 5 phases.

Comprendre le besoin

Tout part du besoin des équipes. Faut-il tenir un décompte des clients ? Savoir ce qu’il reste à facturer ? Relancer des contacts ? Quelles sont les règles de gestion ? Les règles d’affichage ? De consolidation ?

Comprendre le besoin suffisamment tôt permet d’y répondre au mieux, et au plus vite. Quitte à itérer par la suite si on ne souhaite pas rentrer dans un cycle en V.

Identifier et réconcilier les sources « à la main »

Une fois que le besoin est compris, vous pouvez commencer à identifier les sources de données. Vous vous rendrez peut-être compte que votre nouveau système n’est pas capable de produire toutes les informations que vous aviez à disposition précédemment. A l’inverse, il en produit peut-être de nouvelles.

Une fois que les sources sont bien identifiées, il va falloir mettre les mains dans le cambouis et raccrocher les wagons. En partant de l’ancien reporting, et avec les données du nouveau système à disposition, déterminer les indicateurs :

  • Que l’on retrouve directement
  • Ceux qu’il faut retravailler pour reproduire l’existant
  • Ceux qui sont perdus
  • (Optionnel) Les nouveaux indicateurs que l’on peut obtenir

Choisir et développer une solution

Après le travail de mise en correspondance manuel, la plupart des équipes souhaitent automatiser la consolidation de leurs reportings. Pour ce faire, je vois 2 solution :

    1. Il y a une API qui est exploitable :
      1. Comprendre l’API
      2. Exploiter l’API pour récupérer les données nécessaires
      3. Traiter les données
      4. Consolider
      5. Ordonnancer le travail automatisé
    2. Comme souvent, il n’y a pas d’API ou c’est une « API de merde » :
      1. Développer un robot (solution de RPA)
      2. Traiter les données
      3. Consolider
      4. Ordonnancer le travail automatisé

Dans les 2 cas, il y a une courte phase de développement. La solution 1 coûte plus cher en développements mais a un coût en run quasi-nul. La solution 2 coûte peu cher en développements mais a un coût plus élevé en run (licence du robot). Vous pourrez arbitrer en fonction de la durée du biseau et du temps humain gagné.

Reboucler, tester et ajuster

Il est important à mon avis de présenter le résultat du travail à son client (interne ou externe). Il faut lui laisser le temps de se l’approprier et de le tester pour détecter les écarts ou remonter de nouveaux besoins auxquels il n’aurait pas pensé initialement. Cela peut donner lieu à des ajustements à la marge.

J’insiste sur l’importance d’attribuer de la charge aux tests. Il est parfois difficile d’obtenir des retours des équipes déjà occupées à traiter d’autres sujets. On repousse la validation à la fin du projet et… on se rend compte que ça ne colle pas tout à fait, ce qui entraîne du rework, des délais, et donc des coûts.

Déployer

Lorsque l’équipe cible est satisfaite, vous pouvez déployer votre solution en production. Les points d’attention que j’ai pu relever :

  • Prévoir des comptes utilisateurs avec des droits adéquats
  • Prévoir une machine en capacité à faire tourner un robot si c’est la solution sélectionnée, lancer la démarche d’achat de licences suffisamment en amont pour ne pas se retrouver bloqués
  • Ordonnancer le travail des systèmes dans le bon ordre

(1) https://fr.wikipedia.org/wiki/Automatisation_robotis%C3%A9e_des_processus