Les développeurs en général et ceux qui ont la chance d’avoir l’ETL FME pour manipuler les géo-données ont tendance à oublier de documenter les scripts. C’est pourtant une bonne habitude à prendre et je documente systématiquement mes scripts que ce soit pour le client ou pour moi même si je dois revenir sur ces derniers quelques mois plus tard.

Alors bien-sûr, il faut déjà prendre l’habitude de documenter à l’intérieur de FME Workbench que ce soit via des annotations ou des signets. mais pas que


Annotations et signet dans FME Workbench

Métadonnées : documenter vos projets et données

FME Workbench possède une partie métadonnées dans le navigateur (Workspace Properties). On peut y remplir des informations intéressantes comme un descriptif du projet, le classer dans une catégorie… On peut également y mettre un mot de passe pour protéger son utilisation.

Workspace properties FME Workbench (métadonnées)
Workspace properties FME Workbench (métadonnées)

Dans cet article, je souhaite vous expliquer qu’il est également possible de créer une fiche par projet FME afin d’avoir des informations statistiques et générales sur votre projet.

Le Reader FMW : FME est capable de lire ses propres projets

Depuis 2016 FME Workbench propose un reader .FMW soit l’extension des projets FME Workbench. La lecture de ce fichier permet de récupérer beaucoup d’informations sur vos développements. Les métadonnées mais également les Transformers, les paramètres publiés, des statistiques, les fichiers exploités…

Reader FMW de FME Workbench
Reader FMW de FME Workbench

Modélisation et stockage des données en base

Avec ces informations j’ai voulu générer une fiche de métadonnée par projet. A partir des features types et informations remontés grâce au FMW Reader, j’ai modélisé une base sous PostgreSQL afin de stocker les informations.

Base de données postgreSQL sous Pgadmin pour stocker les informations du reader FMW de FME
Base de données postgreSQL sous Pgadmin pour stocker les informations du reader FMW de FME

Exploitation des informations > reporting sous FME en HTML

A partir de ces informations, j’ai utilisé un Transformer nommé HTMLReportGenerator pour créer des rapports HTML. Notez que le transformer HTMLReportGenerator  utilise le style CSS de Boostrap de Tweeter et que cela nécessite donc une connexion Internet pour visualiser le fichier HTML généré par FME. Le Transformer HTMLLayouter est également nécessaire si vous souhaitez mettre côte a côte ou superposer plusieurs blocs HTML issus de plusieurs HTMLReportGenerator.

Rapport HTML sur les métadonnées d'un script FME
Rapport HTML sur les métadonnées d’un script FME

Le résultat de rapport HTMl sur un projet de GraceTHDCheck est visible via ce lien

Perspectives & intérêts

L’intérêt de ce travail est multiple. Il permet de créer une fiche d’identité à chacun de vos projets. En un coup d’œil vous obtenez des informations essentielles sur le projet comme la version de FME utilisée pour sa construction, le nombre de Transformers ou bien le nombre de Transformers à mettre à jour. En plus de documenter vos scripts cela permet également de savoir si vous devez maintenir le script FME en question.

Rapport HTML sur les Transformers utilisés dans un projet FME
Rapport HTML sur les Transformers utilisés dans un projet FME

Un autre rapport intéressant à mettre en place serait celui consistant à avoir une synthèse de vos différents projets afin d’avoir sur une seule page certaines informations pertinentes comme la build (version) de FME Workbench utilisé, les Transformers à mettre à jour, le lieu de stockage du projet…

Le rapport peut bien évidemment être généré par FME comme nous l’avons vu mais également avec un outil de reporting (BI) comme BIRT, Tableau, JasperReport…

Plus d’informations

Si ce travail vous intéresse, n’hésitez pas à me contacter pour que je puisse vous accompagner sur ce projet qui vous permettra de gagner en documentation sur vos scripts mais également d’assurer une meilleure maintenance de ces derniers.

Je suis donc à votre disposition via mon email : contact@sitdi-france.fr ou par téléphone au : 06.27.53.42.43

Cordialement, Loïc Guénin Randelli, Expert ETL FME, BI & SIG indépendant