Ou comment fournir des données significatives pour les tests lors de la préparation d'une migration de données.

Très souvent, dans les projets multifonctionnels, tels que la mise en œuvre d’un progiciel de gestion intégré, les différentes équipes évaluent leur solution indépendamment les unes des autres jusqu’aux dernières étapes des tests. Et régulièrement, le projet de migration des données fonctionne de la même manière, en identifiant et en validant la transformation des données parallèlement au reste du projet.

Le risque est que la nouvelle solution et les nouveaux processus soient testés avec des données « positives », c’est-à-dire des données censées produire un résultat attendu, et non avec des données « négatives », c’est-à-dire des données qui ne sont pas censées produire un résultat négatif mais qui en provoquent un. En effet, avec les solutions ERP intégrées d’aujourd’hui, des valeurs différentes saisies dans un domaine fonctionnel peuvent avoir un impact négatif sur un autre domaine pour des raisons imprévues.

Pour réduire ce risque et accélérer la conception de la transformation des données, il est utile de travailler avec des données « réelles » et de les échantillonner de manière intelligente. Les données réelles sont extraites des bases de données opérationnelles, puis transformées pour le nouveau modèle de données si nécessaire et injectées dans l’environnement de test. Voyons ce processus plus en détail.

Échantillonnage de données réelles

Il y a deux conditions préalables.

  1. Première condition préalable : vous devez évidemment savoir quelles données ou quel type de données sont nécessaires. Faut-il des produits et des clients pour tester une solution de gestion des commandes ? Avons-nous besoin de nomenclatures ? Avons-nous besoin de matières premières, de documents d’ingénierie, de prévisions de la demande, de données historiques ?
  2. Deuxième condition préalable : vous devez obtenir l’accord de toutes les parties concernées. Une fois que le champ d’application est compris, nous pouvons commencer à sélectionner des éléments de données, mais il est essentiel d’expliquer le processus d’échantillonnage et d’obtenir un alignement à ce sujet. En effet, chaque groupe aura des exigences différentes, de haut niveau à très détaillées, et demandera des données pour satisfaire toutes ces exigences. D’après mon expérience, moins les exigences sont détaillées, plus les données demandées sont nombreuses (en termes de volume). C’est ce que j’appelle le syndrome du « juste au cas où (j’ai besoin de plus) ».

L’absence d’alignement est une voie sûre vers des modifications du champ d’application et des demandes de changement.

Pour réaliser un bon échantillon, il faut également garder à l’esprit qu’il s’agit d’un exercice dynamique. D’après mon expérience, la plupart des tests peuvent commencer par un échantillon de base. Mais elle doit évoluer, en termes d’ampleur et de volume. Nous pouvons travailler à partir d’une base de données très restreinte jusqu’à une base de données plus importante avec des centaines de milliers d’enregistrements.

Construction d'un échantillon de base

Dans la plupart des cas, ce sont les entreprises qui sont les mieux informées. Quel que soit le sujet du projet, ils savent quels sont les principaux cas de figure et connaissent les données utilisées pour exécuter ces cas de figure. Par exemple, si nous prenons l’exemple de la fabrication de biens, votre personnel commercial saura quels sont les différents biens, ce qui les différencie les uns des autres, comment ils sont fabriqués ou vendus, etc. Permettre de proposer un échantillon basé sur des types ou des catégories, ou des méthodes de production, ou des sites, ou des canaux commerciaux, ou des moyens de transport, ou des méthodes de comptabilité, ou des méthodes d’entreposage, etc. Dans la gestion des actifs, il peut s’agir des catégories d’actifs, de leurs règles d’amortissement, des différents types de charges qu’ils entraînent, etc.

Là encore, un échantillon de base de ce type est généralement suffisant pour les premières phases d’essai, où l’on a davantage besoin de polyvalence des données que de volume. Mais au fur et à mesure que les essais progressent, davantage de données sont nécessaires pour répéter les scénarios d’essai avec un nombre croissant de petites variances et pour fournir des données à des fins de formation. Pour l’instant, nous disposons d’un échantillon de base et, en raison de sa petite taille, nous pouvons le manipuler manuellement, en mettant à jour les enregistrements un par un si nécessaire, et le transformer selon les besoins de la solution cible. Attention toutefois à ne pas sélectionner les données à la main. Vous souhaitez définir un ensemble de règles pour sélectionner un échantillon de données, et non pour sélectionner des enregistrements directement à partir d’une liste ou d’une base de données.

Pourquoi devrions-nous préparer l’échantillon initial avec des hommes d’affaires ? En effet, lorsque nous essayons de transformer les données, nous remettons en question, dès le départ, la qualité des données et les règles de transformation avec des données auxquelles nos collaborateurs peuvent se référer. Nous ne travaillons pas avec des données artificielles, créées à partir d’hypothèses, mais avec des informations réelles, opérationnelles, actuelles. Cela permet de susciter l’engagement des personnes, qui travaillent avec leurs données et non avec certaines données. Cela permet également de passer à l’action avant que l’élaboration des plans ne soit entièrement terminée. En effet, toutes les équipes ne peuvent pas achever leur plan (ou leur mise en correspondance ou autre) en même temps et cela ne signifie généralement pas qu’une équipe peut rester inactive jusqu’à ce que toutes les autres la rattrapent. Ils voudront commencer à faire des essais, ne serait-ce que pour valider certaines hypothèses. Grâce à cette approche qui consiste à créer un échantillon initial avec les professionnels, nous avons couvert les éléments de données clés et les cas d’entreprise. Nous pouvons passer à l’action, mais sans perdre d’efforts pour la migration principale des données.

En résumé, nous permettons plusieurs choses :

  • L’engagement des entreprises ;
  • Données pour le prototypage et les premiers essais ;
  • Des données cohérentes pour l’ensemble du projet et non pour une seule équipe ;
  • Passer rapidement à l’action.

Que se passe-t-il si vous êtes mis au défi et que certaines personnes veulent beaucoup plus de données ou des données différentes ? D’après mon expérience, la réponse à une question brève fait des merveilles : pourquoi ? Pourquoi l’échantillon initial ne fonctionne-t-il pas ? Pourquoi ont-ils besoin de plus de données ou de données différentes ? Très souvent, les données supplémentaires ne seront de toute façon pas utilisées : il s’agit seulement d’un « juste au cas où ». Avec ces informations en main, vous pouvez repousser ou accepter les faits, en fonction du temps et des ressources disponibles.

Profilage et intelligence économique

Idéalement, cet exercice doit avoir lieu au début du projet, avant ou pendant la phase d’élaboration du projet. Du moins, cela devrait être fait immédiatement après la création d’un échantillon initial.

Grosso modo, le profilage consiste à identifier des schémas dans les données. Il est souvent utilisé dans l’optique de la qualité des données et permet de définir des règles de qualité des données, mais il est facile de s’arrêter là. Si cette analyse reste la pierre angulaire de la migration, le profilage lui-même peut être plus efficace. En effet, nous pouvons utiliser la grande quantité d’informations collectées pour comprendre également comment l’entreprise est structurée. L’examen des données opérationnelles ou transactionnelles permet de dégager quelques éléments :

  • Données de base, telles que les clients, les matériaux ou les actifs
  • Données transactionnelles, telles que les commandes de vente ou les connaissements
  • Données de référence, telles que les types de commandes, les codes d’usine ou les conditions de paiement

Ces données permettront de répondre à des questions telles que « quels types de commandes sont utilisés par quels types de clients, dans quels pays et à partir de quel entrepôt sont-ils approvisionnés ? ».

Nous ne pouvons pas entrer dans les détails ici, car il existe de nombreux cas particuliers, mais la logique est simple. Avec toutes ces informations, nous avons une bonne compréhension des données et de la logique d’entreprise qui les unit. Nous sommes prêts à discuter des nouveaux échantillons.

Rééchantillonnage

Nous sommes désormais en mesure de ventiler les données en fonction des scénarios commerciaux que nous devons tester. Et nous pouvons encore limiter les données à l’aide de filtres supplémentaires, comme une période de temps. Par exemple : sélection des données utilisées au cours des six derniers mois d’activité. Il est évident qu’il y aura des scénarios qui ne s’inscriront pas dans cette fenêtre. Mais elles seront facilement identifiées en comparant le profilage avec les données sélectionnées, et les données correspondantes pourront alors être ajoutées à l’échantillon.

Reprenons nos commandes de vente : nous avons peut-être identifié les types de commandes utilisés par les différents clients, les produits qu’ils achètent généralement, les conditions d’expédition convenues, etc. Pour nous aider à échantillonner les données, nous pouvons également établir des classements et sélectionner, par exemple, les 10 premiers clients en termes de volume de ventes ou de volume de transactions. Nous pouvons également identifier les produits qui réalisent 80 % des ventes, etc. En combinant les cas d’entreprise identifiés avec ces classements, nous pouvons construire une base de données très solide.

Soutenir davantage le projet

Grâce à ce nouvel ensemble d’informations, nous sommes désormais en mesure d’aider le projet général en apportant un éclairage plus approfondi sur certains scénarios d’entreprise. Nous disposons d’un inventaire des transactions et des tendances, de manière à pouvoir les classer, mais aussi de manière à pouvoir repérer les exceptions significatives (une commande annuelle qui représente une bonne partie du chiffre d’affaires, par exemple) et les bizarreries. Tous ces éléments peuvent contribuer à améliorer le plan, en incluant des cas négligés et en éliminant le bruit.

Conclusion

J’ai montré l’intérêt de construire des échantillons et d’exécuter le profilage des données pour l’intelligence économique dès le début du projet. Ce nouvel ensemble d’informations peut soutenir la migration des données et le projet général avec une grande efficacité à plusieurs égards :

  • Impliquer les entreprises à un stade précoce et de manière constructive ;
  • Améliorer la compréhension de l’entreprise pour toutes les parties concernées ;
  • Fournir des données significatives pour les essais avec des volumes gérables.

Il est parfois difficile de suivre cette approche. Il y a des clients qui refuseront le profilage des données par crainte de ce qu’il pourrait révéler et des personnes qui contesteront les résultats. Il est certain qu’il n’y a pas de « taille unique ». Dans ce cas, j’essaie d’éduquer les parties prenantes avec quelques exemples ou de garder les résultats pour l’équipe de projet uniquement.

Jean-Francois Minsart
Jean-Francois Minsart
Jef is a veteran SAP data consultant with over 20 years experience. His career took him around the world to support initiatives as varied as mergers, systems integration, upgrades, software development and roll out, etc.​