Application de collecte de données : IMOGENE

IMOGENE est une plateforme de développement d'applications de collecte de données basée sur un principe de modélisation/génération (MDA/Model Driven Architecture). Elle permet de développer des applications de collecte de données rapidement.

 

Son principe est le suivant :

A l'aide d'un éditeur graphique, l'utilisateur va modéliser l'application qu'il souhaite obtenir, c'est à dire définir des formulaires et les champs (nom, type, etc.) qu'ils contiendront. Grâce à cet éditeur graphique, le processus de modélisation est simplifié.

Une fois les formulaires modélisés, la plateforme va générer automatiquement un ensemble d'applications de collecte de données qui constitueront le système d’information:

  • une application Web,
  • une application mobile tournant sur les Smartphones fonctionnant sous Android.
  • Une application de synchronisation des données

 

En supplément, elle permet de construire une application Bureau qui peut faire partie du système d'information.

Le système d’information peut inclure également des web services permettant à d’autres systèmes d’information d’accéder à ses données.

L’architecture du système d’information généré est illustrée sur le schéma suivant :


Architecture d'un système d'information généré par la plateforme IMOGENE

Les données collectées par ces différents outils sont stockées au sein d'une base de données centralisée.

 

L’application mobile et l'application Bureau fonctionnent en mode connecté ou en mode déconnecté. Elles stockent les données localement et, dès que le terminal peut se connecter au réseau, une synchronisation manuelle ou automatique permet de synchroniser les données avec la base de données centralisée. Cette synchronisation est bidirectionnelle. Ainsi, ces applications transmettent leurs données au serveur central et reçoivent les mises à jour.

 

Grâce à cette architecture, le système d'information généré permet de collecter des données dans un grand nombre de situations (en situation de mobilité/en situation fixe, en mode connecté/en mode déconnecté).

 

Le système d’information offre les autres fonctionnalités suivantes :

  • Les applications permettent de collecter des données binaires comme des photos, des vidéos ou tout autre type de document.
  • Elles permettent d’acquérir des coordonnées géographiques et les données géo-référencées peuvent être visualisées sur carte.
  • Les interfaces utilisateur sont multilingues.
  • Les applications mobiles intègrent un mécanisme de mises à jour à distance capable de détecter automatiquement la disponibilité d’une nouvelle version.

 

Les applications générées à partir d’IMOGENE sont basées sur des composants open-source (Application Web: Spring, GWT, Hibernate ; Application mobile: Android). Elles respectent les standards JEE (Java Enterprise Edition) de développement industriel.

 

La plateforme IMOGENE elle-même est publiée en open source sous une licence LGPL : http://code.google.com/p/imogene/

Une vidéo de démonstration est disponible à l'adresse suivante :  http://code.google.com/p/imogene/wiki/ImogenePresentationVideo