Axège accentue son implication dans le monde du logiciel libre et démontre sa volonté d’offrir des outils innovants en mettant à disposition des analyses multi-dimensionnelles directement à partir d’OpenOffice.
Toutes les fonctionnalités des indicateurs dynamiques peuvent désormais être reproduites dans un tableur, comme le fait le navigateur (JPivot [1]).
Destiné aux différents niveaux de directions opérationnels jusqu’à la direction générale, ce plugin permet d’adapter les fonctionnalités du cube aux outils de bureautique (tableurs) généralement plus connus et maitrisés par ces personnes. La manipulation, la compréhension et l’utilisation des données en est facilitée.
Cette étude porte donc sur le développement et l’adaptation pour OpenOffice des fonctionnalités du navigateur JPivot du cube OLAP [2] Mondrian [3] utilisé dans Axège Santé.
OpenOffice permet de gérer des cubes d’analyse multi-dimensionnel mais en local (c-a-d à l’aide de données présentes dans le document). La connexion à Mondrian par l’importation de données externe n’est donc pas possible.
Il a fallu créer un plugin (application complétant un logiciel hôte ) dans le gestionnaire d’extension. [4]
Une première version du plugin dans OpenOffice a permis d’obtenir un cube, mais comme OpenOffice ne prend pas en compte les dépliements des membres, celui-ci était sans hiérarchie. L’ajout d’un fichier de paramètres que l’utilisateur aura à choisir à résolu ce problème. L’insertion des dépliements donne à l’utilisateur une plus grand liberté dans ses choix.
L’API permettant de manipuler des cubes OLAP [5] depuis OpenOffice Calc se trouve sous forme d’un projet Eclipse qui fournit, à la compilation, l’extension .oxt.
Ce projet contient :
les librairies utilisées dans les sources
le code source commenté avec les fichiers java et le build.xml
une documentation sur la réalisation et la manipulation de l’extension
Une fois l’extension installée, l’utilisateur peut choisir, manipuler, et représenter sous OpenOffice le cube OLAP Mondrian qu’il souhaite. Il n’est donc plus obligé d’aller sur le logiciel Axège Santé.
Avec OpenOffice il a donc le choix :
des dimensions
des membres associés aux dimensions
des emplacements des dimensions (filtre, colonne, ligne, en deuxième position,...)
L’utilisateur pourra donc enregistrer son cube sous le format d’OpenOffice.
Limites
Les limites proviennent surtout d’OpenOffice. Une dimension ne peut pas être dépliée comme dans AxègeSanté. En effet dans ce logiciel il suffit de cliquer sur un membre pour le déplier alors que dans OpenOffice il faut changer un fichier de paramètres et relancer la création. On est obligé d’avoir des dimensions avec une seule hiérarchie, et des hiérarchies avec un seul niveau. Le cube est à plat, sans hiérarchie.
Améliorations
Tout d’abord une fois que ces limites seront corrigées, l’extension atteindra pleinement les fonctionnalités attendues et les nouvelles améliorations découleront de celles d’Axege Santé ou de Mondrian.
En attendant, il existe une extension OpenSource Palooca écrite en java qui permet de représenter les cubes OLAP dans OpenOffice sans utiliser les DataPilot [6] et qui gère le dépliement dans le cube.
Le problème est qu’il n’utilise pas Mondrian mais les bibliothèques Palo. Si Palooca est facilement intégrable dans Axège Santé, nous pourrions essayer de remplacer Mondrian et ainsi obtenir une extension complète.
L’extension sous OpenOffice Calc permet de visualiser et manipuler des cubes selon le choix de l’utilisateur, mais elle doit être accompagnée de fichiers de paramètres pour fixer les informations à traiter. Elle est donc pour le moment encore moins souple que JPivot dans Axège Santé mais donne l’avantage aux utilisateurs de ne pas changer leur outil privilégié.
Sources :
« Base OLAP Analyse Multidimensionnelle », sur le portail francophone du pilotage de la performance
http://www.piloter.org
Hypercube OLAP sur Wikipédia
http://fr.wikipedia.org/wiki/Hypercube_OLAP
« Mondrian 2.2.2 Technical Guide Developing OLAP solutions with Mondrian », mars 2007,
http://mondrian.pentaho.org
Manuel utilisateur sur la façon dont employer JPivot comme un outil d’analyse présent sur le wiki du HISP (Health Information Systems Programme)
[1]
JPivot :
JPivot est une API Java permettant de naviguer dans des cubes OLAP qui ont été créés à partir d’un serveur OLAP, ici Mondrian. Il a été intégré dans le progiciel Axège Santé.
Il permet d’une part d’écrire et d’afficher le résultat d’une requête MDX (MDX (MultiDimensional Expressions) est le principal langage de requête pour les bases de données multidimensionnelles OLAP. Il est comparable au langage SQL pour les bases de données relationnelles) : un tableau OLAP ou plus précisément un tableau croisé. D’autre part pour ce tableau, JPivot permet de modifier les paramètres d’un état en utilisant les nombreuses fonctions d’exploration de données telles que :
• parcourir les hiérarchies d’une dimension (c’est-à-dire accéder aux différents niveaux des axes d’analyse ou revenir à un niveau supérieur)
• modifier la structure du tableau (permuter les axes d’analyse dans un tableau, insérer un nouvel axe d’analyse...)
• extraire un bloc de données (en sélectionnant une ou plusieurs valeurs pour n’importe quel niveau d’un ou de plusieurs axes d’analyse)
• accéder au détail élémentaire des informations
• trier les valeurs d’une mesure par ordre croissant ou décroissant
De plus, JPivot permet de réaliser des graphiques, d’exporter un tableau et son graphique associé sous forme d’un fichier PDF imprimable ou d’un document Excel.
[2]
OLAP :
OLAP ou Online Analytical Processing (Traitement Analytique en Ligne) désigne une catégorie d’applications et de technologies permettant de collecter, stocker, traiter et restituer des données multidimensionnelles, afin qu’elles soient analysées.
Le concept OLAP a été créé suite à la constatation que les bases de données de type relationnel étaient inadaptées aux besoins décisionnels, car les requêtes décisionnelles mobilisent abusivement les ressources machines.
Une base de données doit suivre plusieurs règles si elle veut intégrer le concept OLAP.
[3]
Mondrian :
Mondrian est un serveur (ou moteur) OLAP open source écrit en Java. Plus précisément, Mondrian permet de construire des cubes OLAP à partir de données stockées dans une base de données relationnelle (non limitée en taille). C’est pour cette raison que l’on dit que Mondrian est de type R-OLAP (OLAP Relationnel).
Un schéma Mondrian définit une base de données multidimensionnelle c’est-à-dire un cube OLAP. Pour créer un schéma Mondrian, il faut écrire un programme XML qui décrit tout ce que contient le cube, c’est-à-dire les dimensions, les mesures, les hiérarchies...
[4]
Le « Developper’s guide » et l’ « API » d’OpenOffice ont permis d’ouvrir la voie dans ce domaine. Le SDK (Software Development Kit) a rendu possible l’accès aux librairies associées et UNO (environnement de développement et d’exécution) a lié les deux composants (plugin et OpenOffice) entre eux.
[5]
Cube OLAP :
Grâce au concept OLAP, les utilisateurs peuvent créer des représentations multidimensionnelles (appelées hypercubes ou cubes OLAP) selon les critères qu’ils définissent afin de simuler des situations. Autrement dit, un hypercube ou cube OLAP est une représentation abstraite d’informations multidimensionnelles exclusivement numériques. Voici un exemple d’hypercube :

[6]
DataPilot :
DataPilot fournit une fonctionnalité similaire à celle du tableau croisé dynamique dans Microsoft Excel. Il est utilisé pour une présentation des tableaux intéractif et dynamique d’analyse des données. Avec OpenOffice, DataPilot a ajouté le support des champs de paye qui permettent de tirer des données sur leurs champs.
Articles sur le même thème