15/12/2009

La couche service du SIG

Dans le rapport d’analyse de ce sujet, j’ai abordé à l’architecture du SIG. Dans cet article, je vais parler détail de la 2ème couche. La couche service (ou couche entreprise) regroupe des objets transversaux à toutes les applications. De plus, cette couche propose des services d’accès à ces objets au travers de méthodes de création, recherche, modification, suppression. Ces méthodes contiennent les règles de gestion associées aux différentes opérations.

+ Tout d’abord, je pose quelques définitions des mots professionnels :

AJAX Asynchronous Javascript And XML
Méthode de développement d’applications Web uti-lisant des technologies existantes (Javascript, XML, XHTML et CSS) pour fluidifier les transferts d’in- formations client-serveur.

API Application Programming Interface
Une interface de programmation définit la manière dont un composant informatique peut communiquer avec un autre.

CGI Common gateway interface
Technologie des serveurs HTTP qui, au lieu de ren-voyer le contenu d’un fichier (image ou HTML), exécute un programme puis retourne le contenu généré.

SVG Scalable Vector Graphics
Format de fichier image vectoriel, basé sur XML, et standardisé par le W3C (World Wide Web Consortium)

WFS Web Feature Service
Interface web autorisant des manipulations sur des objets géographiques. Les données sont transmises au format GML (standard XML).

WMS Web Map Service
Un Web Map Service (WMS) est une interface web qui produit dynamiquement des cartes à partir de diverses sources de données.

+ Exemple d’architecture du SIG avec technologie Java :

architecturejava

L’applet est une application programmée en JAVA insérée dans un document Web. Elle doit être téléchargée à chaque fois que l’internaute consulte un document Web. Cependant, un interpréteur doit être préalablement installé (Machine Virtuelle JAVA). Les données pour être visualisées, sont aussi stockées dans le cache du client, ainsi la qualité et la rapidité se rapprochent des solutions vecteurs.

+ Des fonctions du système SIG ordinaire

On a permis de constituer la liste suivante, hiérarchisée ici en fonction de la richesse fonctionnelle :

Pour apprendre détail de la couche service, d’abord on peut réfléchir l’ordre des requêtes au serveur du SIG.

1. Requête au serveur Web par le biais d’une URL contenant l’adresse du programme MapServer avec des paramètres adéquats.
2. Le serveur transmet à MapServer les paramètres de la requête,
3. MapServer décode les paramètres et va rechercher les informations situées dans le fichier projet “map- file". Celles-ci sont éventuellement modifiées en fonction des paramètres passés lors de la requête.
4. MapServer va rechercher les éléments cartographiques à afficher.
5. MapServer recherche les éléments non-géographiques associés (ex. : récupérer les données correspondant aux requêtes).
6. MapServer lit le modèle de page HTML à générer (TEMPLATE) et valorise les paramètres banalisés.
7. MapServer compose les images bitmap à partir des différentes sources de données et des paramètres. Les images annexes (échelles, références, couches visibles) sont aussi composées.
8. MapServer compose la page HTML de sortie.
9. MapServer envoie la page au serveur Web.
10. Le serveur web renvoie enfin la page au client.

+ Détail d’architecture de service

architectservice

GIS Services Web sont classés en deux catégories: les données des services SIG et traitement des géodonnées et des services fonctionnels. Puisque les données SIG sont composés de l’espace et caractéristiques non spatiales, les données des fournisseurs de services peuvent offrir un ou les deux types de données aux demandeurs de services. Ces services peuvent être classées plus loin ou organisées par vecteur ou raster, ou par thème, par région ou organisation. De cette façon, l’application développeurs, de demandeurs de service, peuvent effectuer des recherches pour leur ensemble de données spécifiques pour construire leur applications. Une telle architecture de système donnera plus de chances pour les développeurs de données à pénétrer le marché et augmenteront la précision des données et la simultanéité.

Service Web de traitement des données SIG et la modélisation seront un domaine prometteur pour développement dans un avenir proche. Spatiale et des données non spatiales peuvent être traitées séparément par des développeurs tiers, même sans aucune relation avec les SIG. Comme l’entrée et la sortie vers et de services Web peuvent être des ensembles de données elles-mêmes, ces services peuvent être facilement chaîné avec d’autres types de services, tels que la cartographie et l’intégration. L’avenir des SIG Web Services “est très prometteur pour les développeurs de services dédié spatiale et intégrateurs dont l’imagination sera la limite primaire à des applications qui peuvent être
construit".

Références:
[1] MapServer, solution de SIG libre en ligne (Cheikh DIOP, Nawel BOUARD Simeon, STANCIOFF, François VAN DER BIEST)
[2] SIG en ligne : panorama des fonctionnalités et modalités de mise en oeuvre, Rapport du projet de Mastère SILAT (Stéphane AVRIL, Frédéric BRAY, Frédéric DENIS, Leyti NDIAYE, Laurent RABBE,)
[3] http://www.w3.org/Graphics/SVG/
[4] http://en.wikipedia.org/wiki/Common_Gateway_Interface
[5] Client-Server Interaction in GIS Applications Through Web Services (Xuan Shi)