Par Michel Mouchon · 29 juillet 2026

Un montant s’affiche à l’écran. Il est faux, ou simplement personne ne sait expliquer comment il a été calculé. Le développeur qui a écrit cette règle est parti à la retraite, et la documentation, quand elle existe, n’en dit rien. Reste la vieille méthode : ouvrir les sources une à une et espérer tomber sur la bonne ligne.

Le data lineage de DISCOVER renverse ce problème. Au lieu de chercher dans le code, vous partez de la valeur affichée et vous remontez son calcul, zone après zone, jusqu’à la règle de gestion d’origine. Graphiquement, et sans relire le code source.

Points clés

  • 1

    DISCOVER retrace le data lineage IBM i, du champ affiché jusqu’à la règle de gestion d’origine, sans parcourir le code source ligne par ligne.

  • 2

    L’analyse est déterministe et fiable : elle visualise les calculs, dépendances et flux de données impliqués dans la production d’une valeur.

  • 3

    Le data lineage facilite la modernisation, l’investigation des bugs et la transmission de la connaissance, même lorsque les experts historiques ne sont plus disponibles.

Le data lineage, une réponse à 3 situations

Le data lineage peut être utilisé dans ces 3 cas de figure :

  • La modernisation. Réécrire une application sans en comprendre les règles de gestion, c’est risquer de les perdre.

  • L’explication fonctionnelle. Un nouvel arrivant, un analyste, doit comprendre comment une donnée est produite sans avoir à déchiffrer le code.

  • L’investigation d’un bug. « La valeur n’est pas bonne. » Encore faut-il savoir d’où elle vient pour la corriger.

À ces trois cas s’ajoute celui du changement à risque : avant de toucher à un programme, un calcul de taxe par exemple, mieux vaut visualiser tout ce qu’il impacte.

Et derrière tout cela, un enjeu de fond qui guide notre travail : la connaissance applicative repose souvent sur quelques personnes clés. Quand elles partent, la connaissance s’évapore.

Le principe : du champ affiché à sa règle de gestion

Le point de départ est volontairement côté utilisateur : un écran, une valeur. La question : comment est-elle calculée ?

DISCOVER permet de remonter le chemin de la donnée. Ce champ provient d’un calcul ; ce calcul implique d’autres zones ; ces zones viennent elles-mêmes de la base de données. On suit ainsi deux fils en parallèle : le chemin de la donnée et le chemin de son calcul. Une même valeur peut reposer sur plusieurs règles de gestion, par exemple une règle d’initialisation et une règle de calcul. Le lineage ne donne pas une réponse unique, il expose toutes les façons dont la valeur peut être produite.

C’est ce qu’on appelle une « navigation avec sens » : on ne parcourt pas le code au hasard, on descend dans une direction précise, dictée par l’interaction des zones et par le calcul que l’on cherche à comprendre. Là où une recherche dans le source oblige à fouiller fichier par fichier, le lineage trace directement le lien, bien plus efficace qu’une recherche dans chaque source.

Exemple concret : d’où vient le montant de TVA ?

Prenons un exemple parlant. Le montant de TVA résulte de l’addition de deux valeurs. Chacune de ces valeurs provient soit d’une initialisation, soit d’un calcul pouvant lui-même dépendre d’autres valeurs, et ainsi de suite.

En remontant la branche, on finit par devoir retrouver le code TVA à partir du code article. Et là, le calcul se complique : deux fonctions imbriquées entrent en jeu. DISCOVER les expose toutes les deux et donne accès au code de chacune si besoin.

Autre exemple : lorsqu’on saisit une nouvelle commande, une quantité ou un prix peuvent partir à zéro : c’est la règle d’initialisation. Puis, au fil de la saisie et des traitements, la valeur se construit. Le lineage rend cette construction visible, étape par étape.

Par où commencer : deux points d’entrée

DISCOVER propose deux façons d’attaquer une analyse de lineage.

  • Depuis un écran (fichier DSPF). On raisonne comme l’utilisateur : voici la valeur affichée, d’où vient-elle ?

  • Depuis une zone de base de données. L’analyse s’appuie alors sur les entrées/sorties, ce qui entre dans la zone et ce qui en sort.

Dans les deux cas, l’exploration est graphique. Les éléments de code qui agissent sur une zone se présentent sous forme de petits blocs : un clic, et l’on voit l’affectation ou le calcul correspondant, avec le numéro de séquence concerné. On peut survoler un composant pour faire apparaître la procédure impliquée, descendre dans les sous-procédures, déplier les zones et remonter la branche jusqu’à l’origine de la valeur.

Un lineage déterministe, une IA complémentaire

Le data lineage n’est pas construit avec de l’IA. Il repose sur les analyses d’impact et sur les liens entre zones, hérités de notre longue expérience en transformation et modernisation automatisée. Conséquence directe : des résultats garantis, et non probabilistes. Aujourd’hui, ces liens s’appuient sur les références croisées de l’application.

L’IA n’est pas absente de DISCOVER pour autant : elle intervient ailleurs, là où elle apporte le plus de valeur, explication de code, nommage fonctionnel des composants, interrogation en langage naturel. Les deux approches se complètent. Le déterministe trace le calcul avec fiabilité ; l’IA enrichit l’accessibilité et la compréhension autour. C’est d’ailleurs la direction que nous prenons pour le lineage lui-même, puisque des explications générées par IA y sont prévues.

Conclusion

Le data lineage de DISCOVER répond à une question simple en apparence, mais coûteuse en pratique : d’où vient cette valeur ? En partant de l’écran ou de la base, on remonte le calcul, on identifie les règles de gestion, on visualise les impacts, sans relire le source ligne à ligne.

Le bénéfice dépasse le gain de temps. C’est une connaissance applicative qui cesse de dépendre de quelques mémoires individuelles, et qui redevient consultable par tous : développeurs, analystes, responsables de modernisation.

Côté évolutions, nous préparons deux ajouts : un bouton de sauvegarde des diagrammes de lineage, pour les intégrer à la documentation, et des explications générées par IA directement dans ces vues.

Envie de tester le data lineage sur votre propre application ? Demandez une démonstration de DISCOVER.

À propos de l’auteur

Michel Mouchon

Business Line Manager DevOps, ARCAD Software

CTO d’ARCAD Software depuis 2000, Michel Mouchon est chargé de définir la stratégie technologique globale d’ARCAD, pionnier du marché dans des domaines tels que le DevSecOps et la digitalisation, pour stimuler la croissance de l’entreprise. A ce titre, il joue un rôle majeur dans la coordination des départements R&D, Ingénierie et avant-vente. Michel s’est construit des compétences très transversales en informatique, en commençant sa carrière par un double diplôme en électronique et en génie logiciel. D’abord Analyste Programmeur sur des mini-systèmes IBM, il a été nommé Responsable Systèmes et Méthodologie avant de rejoindre ARCAD Software. Le don de Michel pour la communication a renforcé la communauté des utilisateurs d’ARCAD et a été déterminant dans la mise en lumière de nouvelles technologies.