• Aucun résultat trouvé

visualisation sous forme de graphes

3. Résultats de la phase de conception des processus et de la phase d’expérimentation du prototype

3.2. Le prototype et ses spécificités fonctionnelles

Présentation du prototype

L’agrégation de données multi-sources en écologie marine (Auber et al., 2014) ou en archéologie a permis de tester ces approches grâce au prototype “open source” développé par le consortium IndexMEED (David et al., 2015) dans le cadre du projet « Vigi-Geek109 ».

Figure 43 : Présentation générale du prototype d’IndexMed110 de visualisation des

données représentant dans cet exemple 1492 sites d’archéologie en vert et 12 bases de données sous la forme d’un graphe bipartite.

Les informations proviennent de l’import d’ArkeoGIS111 mais pourraient directement

être interrogées à distance (1) par le prototype sur les systèmes d’information des partenaires, (format JSON ou XML). La colonne de gauche permet d’importer, d’effectuer les requêtes (2) avec un formulaire ou le langage cypher et de les enregistrer. Un bouton (3) permet de lancer l’exécution de la nouvelle requête ou d’une requête pré-enregistrée. Le bandeau du bas (4) permet de configurer les couleurs des noeuds et des liens en fonction des valeurs de descripteurs (david et al, 2017).

109 VIGI-GEEK : VIsualisation of Graph In transdisciplinary Global Ecology, Economy and Sociology

data-Kernel

110 Le prototype d’IndexMEED est accessible à http://data.imbe.fr/neo4j/

111 "ArkeoGIS » est un projet porté par des archéologues, permettant d'agréger des données issues

de bases aussi bien archéologiques que paléo-environnementales. Les données unifiées ont permis suite aux premières journées IndexMEED de produire le graphe de la figure 1.

Ce prototype (Figure 43) permet la mise en place de liens entre objets de bases de données différentes et distantes.

L'interface du prototype utilise Neo4j <neo4j.com/>, une base de données graphique mise en œuvre en java et publiée en 2010. L'édition communautaire de la base de données est sous licence GNU GPL v3. La base de données Neo4j et ses modules supplémentaires (sauvegarde en ligne ou haute disponibilité) sont disponibles sous licence commerciale. Le prototype d’IndexMed permet à un opérateur néophyte d’importer des données (en C.S.V., X.M.L. ou J.SON). Il permet d'interroger Neo4j pour produire le graphe et d'interagir avec lui à l'aide du navigateur Web. Le personnel technique d'IndexMed a développé un frontend Web spécifique à l'aide du langage Ajax / Jquery. Il peut être possible de demander une base de données demandant des objets spécifiques et des relations spécifiques entre eux, sans utiliser un langage de requête technique tel que S.Q.L. ou Cypher.

Le prototype est développé pour pouvoir être générique et permet d'intégrer n'importe quel type de données sous la forme "objet, attribut de l’objet et valeur d'attribut". Il suffit ensuite à l’opérateur de sélectionner la base à utiliser, les champs qui servent de nœuds, les champs qui servent de liens, et ceux qui servent à mettre en évidence des éléments de contextes (Figure 43). Il est aussi possible de faire ces opérations en sélectionnant certaines valeurs de champs. Ce prototype sera disponible avec ses codes et sources pour développer, à moyen terme, l'utilisation de ces graphes pour l'aide à la décision en matière de gestion environnementale et dans le cadre d'un projet de recherche à soumettre aux appels à projet européens (BiodivERsA, ERDF, Seasera, H2020 ...).

Spécifications fonctionnelles du prototype :

Dans le cadre de travaux sur l’interface utilisateurs du prototype IndexMed, un certain nombre de spécifications fonctionnelles ont été définies, certaines développées, d’autres présentées comme souhaitables. Ces spécifications fonctionnelles constituent les rouages permettant la mise en œuvre de nouvelles méthodes et de nouveaux outils prévus lors de la conception de l’architecture du système d’information.

Ces spécifications fonctionnelles prennent en compte l’usager et ses différents niveaux de compétences, et proposent une interface adaptable permettant une découverte de l’approche visuelle par les graphes des jeux de données d’une part, et des fonctions plus avancées d’autre part permettant à un usager expérimenté de faire des requêtes très précises et des constructions complexes. Ce prototype n’est pas abouti, car cela aurait demandé trop de temps et de moyens humains, mais il montre le potentiel de ce type d’outils qui peut être amélioré par le développement des fonctionnalités listées ci-dessous comme souhaitables.

Ce descriptif fonctionnel correspond donc à un état des lieux sur le prototype, et contient des fonctionnalités à améliorer/faire évoluer. Certaines d’entre elles, se complexifiant au cours du développement sont notées « (en cours) », d’autres, n’ayant pas encore débutées, sont notées « (à prévoir) ». Le test itératif de chaque fonctionnalité auprès des différents usagers (avec des niveaux de compétences et de pratiques différents) sera nécessaire pour aboutir à une interface intuitive, pratique et pédagogique.

Ces spécifications fonctionnelles sont exportables et conjugables avec n’importe quel autre projet d’interface sur la fouille de données et peuvent être décrites en faisant abstraction du langage ou de l’environnement de développement.

Ce prototype a une fonctionnalité d’import de données environnementales permettant : • D’explorer des flux de données XML, JSON et CSV normés et référencés par le

prototype. Deux préalables sont nécessaires : des services WEB produisant des flux doivent être mis en place sur les bases de données distantes des partenaires, et ceux- ci doivent être volontairement référencés grâce à leur dictionnaire de données sur la plateforme d’indexation. Sont à développer : un parseur au format le plus générique possible, et des tests de lectures ayant été réalisés sur des modèles de flux simples pour le moment,

• D’indexer toutes les données disponibles dans ces flux et de leur attribuer les éléments nécessaires à leur traçabilité (en cours),

• De produire un identifiant unique de donnée pour chaque enregistrement, « opaque » et basé sur les DOI et un système « d’autorités déclarées » chez un « enregistreur d’autorités» (en cours),

• D’associer à cet identifiant unique d’enregistrement toutes les métadonnées disponibles et si disponible, une url pérenne (en cours),

• De rechercher les identifiants uniques de donnée de versions précédentes ou formats différents pour chaque enregistrement, ou des données sources « parentes » et de conserver ces relations à des fins de résolution (trouver les données/jeux de données les plus récents sur un « objet environnemental », de construction de graphiques du cycle de vie de cette donnée et de recherche de tous les auteurs impliqués dans sa production/transformation (à prévoir dans une version déployée à large échelle). Ce prototype a une fonctionnalité de sélection des données environnementales à partir des flux distants mis en place par les producteurs de données permettant :

• De sélectionner / désélectionner parmi ces objets, types d’objets, descripteurs / attributs, types de descripteurs/attributs et valeurs de ces descripteurs/attributs ceux qui constitueront les nœuds du graphe. Les nœuds peuvent être constitués d’un ou

plusieurs de ces éléments combinés, et leur importance relative peut être pondérée. (Développement réalisé),

• De sélectionner des objets et leurs descripteurs au sein de ces flux, en fonction des types d’objets, des types de descripteurs (aussi appelés attributs), des normes et standards qu’ils respectent et des valeurs que peuvent prendre chacun de ces descripteurs, et ceci de manière générique d’une « discipline » ou « thématique » d’une base de données à une autre (réalisé, à prévoir une augmentation de l’ergonomie, répondant aux qualités pédagogiques nécessaires pour l’interface),

• De préciser le nombre maximal d’enregistrements à prendre en considération dans chacun de ces flux afin de manipuler une représentation graphique exploitable de graphe. Des alertes sont disponibles lorsque la sélection est inadéquate ou trop importante (à prévoir).

• De créer manuellement des correspondances entre les types ou les valeurs prises par ces attributs/descripteurs, afin de travailler sur plusieurs flux (à prévoir).

Ce prototype a une fonctionnalité de visualisation/manipulation des graphes produits à partir de bases distribuées sur le client permettant :

• d’afficher les valeurs / types / noms / origines des nœuds et / ou liens et de gérer la mise en forme de ces valeurs (taille et couleur) (réalisé),

• de colorer / changer l’aspect (forme/épaisseur) d’une ou plusieurs sélections de nœuds/liens parmi ces objets, types d’objets, descripteurs / attributs, types de descripteurs/attributs et valeurs de ces descripteurs/attributs, ceux qui constituent les nœuds et liens du graphe. Les aspects différents peuvent concerner un ou plusieurs de ces éléments combinés, et leur importance relative peut être pondérée (atténuation, motifs etc.). (Réalisé, à prévoir une augmentation de l’ergonomie, répondant aux qualités pédagogiques nécessaires pour l’interface),

• de supprimer manuellement l’affichage de certains nœuds par un “clic” dans le graphique, ces suppressions ne changent pas la forme du graphe généré. (En cours), • d’afficher le nombre d’enregistrements disponibles pour chaque combinaison d’objets, types d’objets, descripteurs / attributs, types de descripteurs / attributs et valeurs de ces descripteurs/attributs utilisés en tant qu’objet ou lien pour construire le graphe. (En cours),

• de mémoriser les requêtes et les mises en correspondances issues des manipulations précédentes (sous la forme d’un journal et sous la forme de mise en favoris) et d’y associer des notes, concernant la/les question(s) scientifique(s) prospectée(s), les perspectives que cela donne et les verrous, et enfin d’ordonner les questions / perspectives/verrous en fonction d’un système de notation sous forme d’étoiles. (En cours),

• de générer des graphes en sélectionnant les types de graphe et les propriétés afférentes (fonctionnalité à développer dans le cadre de futurs appels à projet),

• d’afficher des suggestions de combinaison en fonction des données disponibles et non utilisées. (Fonctionnalité à développer dans le cadre de futurs appels à projet),

de paramétrer ces graphes via une représentation graphique pour fouiller et visualiser ces données pluridisciplinaires en mettant sur le même plan des données de type socio- écologique, économiques, écologique, moléculaire et fonctionnelle (relations trophiques, traits fonctionnels…). (fonctionnalité à développer dans le cadre de futurs appels à projets).

Ce prototype a une fonctionnalité de visualisation/manipulation des graphes produits à partir de bases distribuées sur le serveur permettant :

• La génération d’une visualisation statique des graphes paramétrés avec un grand nombre de données (limitation par le serveur) (en cours)

• Des alertes concernant les incohérences sur les données, les manipulations interdites ou les erreurs générées (en cours et à prévoir pour les parties « statistiques » et « qualité des données »)

Ce prototype a une fonctionnalité d’aide en ligne accessible :

• sous forme de tutoriels pas à pas accessibles sur un onglet (En cours)

• à côté de l’ensemble des boutons fonctionnels en lien direct vers le paragraphe les concernant dans le tutoriel. (En cours)

En perspective :

D’autres fonctionnalités sont en cours de définition mais leur maturation est nécessaire, grâce aux tests utilisateurs prévus avec les participants au projet et lors des futurs ateliers. La phase de test n’a pas encore commencé.

Ce prototype aura une fonctionnalité d’export permettant :

• de sauvegarder les données du graphe généré, soit sous la forme d’un visuel, soit sous la forme flux XML ou J.SON

• de créer un service WEB sous forme de flux XML des graphes

• de permettre la bancarisation des qualificatifs et des équivalences entre jeux de données

Un certain nombre d’outils sont envisagés notamment • Des bibliothèques de normes

• Des bibliothèques de test statistiques sur la sélection de données affichées par le graphe

• L’utilisation d’ontologies téléchargées

Afin de permettre un passage à l’échelle, un travail est nécessaire sur le format et la qualité des données. Afin de mettre en lien les objets de ces bases de données de natures différentes, un travail sur la sémantique de ces données doit impérativement être développé et une recherche de moyen est en cours pour lui donner toute l’envergure nécessaire.