mise en place d`un serveur spatial
Transcription
mise en place d`un serveur spatial
JEAN-YVES GARINET COMMUNICATION & SYSTEMES M I S E E N P LAC E D ’U N S E RV E U R S PAT I A L RETOURS D’EXPERIENCES S E RV E U R S S PA T I AU X , I D S , S I G – L E C O N T E X T E – L E S Q U E S T I O N S Il est devenu commun de dire que la mise en place d’un Système d’Information Géographique est transverse à une organisation, il en est toujours de même au XXIème siècle quand le SIG se transforme en IDS ... Infrastructure de Données Spatiales. La définition , le périmètre fonctionnel , l’architecture de ce SIG/IDS fait donc souvent l’objet de longues discussions, arbitrages et décisions dans un collectif partenarial multiple, que ce soit entre plusieurs entités ou plusieurs services d’une même collectivité ou entreprise. Lorsque le projet informatique est enfin défini et consigné dans un cahier des charges, il est réalisé et déployé selon les termes de ce cahier des charges et il reste alors le travail le plus difficile : l’adhésion des utilisateurs. Ceux ci se retrouvent t-ils dans le système déployé ? Sont ils satisfaits de son implémentation ? de ses fonctionnalités ? de son niveau de service ? de ses performances ? Il y a très souvent une déception exprimée par les utilisateurs, déception qui est d’autant plus grande au regard du travail partenarial qui a été mené en amont. Le processus de mise en œuvre d’une IDS , du projet jusqu’à son utilisation opérationnelle est une succession d’étapes avec transmission et partage d’informations et documents . Le cahier des charges du système d’information est un document central, point de passage entre les utilisateurs et l’équipe de réalisation. Le contenu de ce cahier des charges est déterminant pour la réussite du projet d’IDS. Notre réflexion porte sur ce cahier des charges : critique de choses vues, conseils , spécifications à ne pas oublier , exigences importantes, etc… Nous séparerons toutefois deux contextes assez distincts d’utilisation de serveurs spatiaux : 1. Les Infrastructures de Données Spatiales d’une collectivité ou d’une entreprise, brique géo-informatique au service des applications métiers. L’IDS est interne , au service de l’activité interne de la collectivité ou entreprise, l’ouverture externe de cette IDS s’exerce dans le cadre de ses missions auprès du public. On parle souvent Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 1 de cartographie et urbanisation des SI, voire quelquefois d’orchestration ou chorégraphie du système d’information !! 2. Les IDS multipartenariales , entrepôt mutualisé de données et services que l’on trouve généralement au niveau régional , mais aussi en interne aux grandes administrations. Ces IDS ne sont pas des briques internes à quelque chose de plus grand, mais une fin en soi , s’articulant bien sûr avec des contextes externes, mais pas dans la réflexion d’un systèmes d’information plus global. Le retour d’expérience, exposé ci-après, se base sur quatre situations distinctes : La réalisation de composants de systèmes d’information intégrant un serveur spatial pour un client L’analyse de cahiers des charges lors de réponses à appel d’offre intégrant la mise en place d’un serveur spatial Le parcours critique de sites publics internet, composantes d’une IDS. Les questions posées par Internet sur le forum Georezo dans les domaines BD et Webmapping. LE CAHIER DES CHARGES IDEAL Il n’y a pas de modèle unique de cahier des charges pour toutes les situations , mais il existe 5 rubriques indispensables (pour tout système d’information) , dont la teneur peut évidemment varier selon les contextes. Le rédacteur du cahier des charges doit obligatoirement se plonger dans les 5 rubriques suivantes : Les spécifications Fonctionnelles Ce que doit faire mon système et ce qu’il ne fait pas. Les spécifications fonctionnelles sont souvent organisées hiérarchiquement , quelquefois classées et numérotées. Elles doivent faire l’objet d’une rédaction soignée et peuvent être illustrées. Cette section est généralement présente, mais souvent imprécise avec des concepts aux contours trop lâches. Ceci a pour conséquence la mise en place d’un système très compliqué à comprendre pour les utilisateurs. Les spécifications Opérationnelles Qui utilise mon système ? Quels sont les différents profils ? Quels sont leurs privilèges ? Combien sont ils ? Quelles sont les horaires de service ? Cette section est souvent absente ou bien très peu détaillée . Les conséquences à terme sont multiples … Fonctions interdites … Situations de blocage … Serveur fermé le week-end … indisponible pour maintenance …. Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 2 Les spécifications d’Interface Avec qui mon système doit-il communiquer ? Quel protocole ? Quel formats de données doivent être supportés ? Section souvent oubliée, beaucoup pensent qu’un serveur spatial est capable d’ absorber toutes sortes de choses dans des formats les plus exotiques et surtout s’adapter à tous les modèles de données !!! Les spécifications d’Architecture et de Réalisation Mon système doit s’inscrire dans un schéma directeur avec telle technologie (.NET, J2EE). Mon système doit être réalisé en OpenSource (ou le contraire avec tel éditeur !!). C’est dans cette section que l’on trouve souvent beaucoup trop de choses !!! Au détriment de la rubrique fonctionnelle. Les conséquences d’une mauvaise réflexion ou de mauvais choix peuvent être dramatiques. Dans beaucoup de situations, il vaut mieux laisser l’intégrateur faire ce choix et le responsabiliser sur le moyen terme. Les spécifications de Performances Quel est le nombre d’accès simultanés ? Quel délai maximal d’affichage de ma carte ? …Quel volume de données ? Cette section est quelquefois rédigée , rarement vérifiée en recette , mais on regrette trop souvent de ne pas l’avoir imposée. Combien de sites géographiques sont inexploitables par défaut de performances ? Notons que ces cinq rubriques sont rarement indépendantes. Dans de très nombreuses situations (IDS de petites tailles) , les études préalables pourront faire converger les spécifications fonctionnelles avec ce proposent les éditeurs et ainsi rechercher une solution « sur étagère » plutôt que laisser un intégrateur proposer une solution. Il y a toutefois deux types de danger (situations déjà rencontrées) : - Le marché est orienté directement vers un éditeur alors que la problématique d’intégration dans un SI (architecture, interfaces, performances) aurait nécessité l’expérience d’un intégrateur. Cette situation se retrouve souvent dans les collectivités. - Le marché est confié à un intégrateur qui ré-invente et re-développe des fonctions déjà existantes sur étagère. Cette situation arrive souvent lors de choix OpenSource trop peu consolidés. En plus des 5 rubriques associées à la description du système à réaliser , il existe trois autres rubriques , qu’il ne faut absolument pas négliger : Les plans de développement (phases du projet) de formation et de maintenance. Il n’y a pas de spécificités particulières relatives aux IDS. Mais l’expérience fait très souvent apparaître des défauts dans les dispositifs de maintenance. Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 3 Q U E L Q U E S C R I T I Q U E S E T C O N S E I L S PA R R U B R I Q U E LES SPECIFICATIONS FONCTIONNELLES Parmi toutes les fonctions de systèmes s’articulant autour d’un serveur spatial, il y en a deux qui méritent d’être creusées plus particulièrement : Publier … des choses Consulter des données … et des métadonnées La fonction de publication , quand elle est imprécise, peut amener des défauts « structurels » du système : Que publie-t-on ? des cartes ou des données ? Qu’est-ce qu’une carte ? Qu’est-ce qu’une donnée ? Où publie-t-on ces choses (cartes ou données) , sur le serveur ou sur Internet ? Pour certaines personnes, une carte est un ensemble de couches de données avec une symbologie choisie, pour d’autres, c’est un résultat final, issu d’une rédaction ayant pu avoir en entrée du travail de rédaction un ensemble de couches. Les confusions peuvent être amplifiées si la solution technologique utilise le mot map , layer etc.. Et plus fondamentalement … pour « présenter » une donnée, ne faut-il pas obligatoirement faire une « carte » ? Ce manque de réflexion et de précision se retrouve dans les IDS qui ont pour mission le partage d’information géographique : la limite entre l’entrepôt de données partagées et le « WebSIG » est floue. Le manque de réflexion est souvent du à une précipitation des acteurs vers des solutions technologiques (pour ne pas citer MapServer) , transférant le centre de gravité de la discussion sur des problèmes techniques. Dans le domaine de la consultation de données, nous souhaitons tout d’abord pointer les effets désastreux du terme Webmapping mal approprié. Ce terme peut être utilisé pour décrire une fonction du système (une volonté de diffuser des cartes sur intranet/internet) et ainsi soulever deux effets collatéraux constatés : La carte affichée sur internet n’est que la partie émergée d’un iceberg appelé système d’information (basé sur un serveur spatial) , système occulté dans le cahier des charges. Si des cartes sont publiées sur le Net, c’est à partir de données qui doivent être gérées dans un serveur de données, ce serveur de données doit être administré et mis à jour des informations provenant de systèmes d’informations internes etc… La volonté de mettre en place des cartes consultables sur Internet fait donc apparaitre l’absence de l’étape préalable et nécessaire consistant à mettre justement en place un serveur spatial et ses services associés (administration, mises à jour, etc ..). Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 4 L’utilisation directe de solutions sur étagère met à disposition des utilisateurs des interfaces de consultation de type SIG (gestionnaire de couches) , peu conviviales et très éloignées de leur métier. Une dernière critique dans la spécification fonctionnelle est relative aux accès « WMS » où là encore, le discours technologique prend le pas sur l’expression de besoins fonctionnels. Pour les IDS ouvertes , as-t-on réellement besoin de nommer « WMS » les sources externes accessibles à l’utilisateur final et ainsi les ranger dans un compartiment spécial ? Cet utilisateur final a-t-il réellement besoin de savoir que les sources utilisées par le serveur cartographique qu’il consulte sont internes ou externes au serveur ? LES SPECIFICATIONS D’INTERFACE, ARCHITECTURE ET DE REALISATION Dans ces domaines, les cahiers des charges peuvent être extrêmement différents selon : La taille de l’IDS en jeu (de quelques utilisateurs à plusieurs centaines simultanés). L’IDS d’une communauté de communes ne s’aborde pas de la même façon que le Géoportail IGN. La forte connotation métier, qui est en opposition avec la « pure » donnée géographique (si celle-ci existe vraiment ?). L’infrastructure de données géographiques de la Police Nationale ou de RFF n’a pas la même vocation qu’un CRIGE … La présence et les compétences d’une équipe informatique en charge de l’exploitation et de la maintenance du système. Ceci peut contraindre ou orienter fortement le cahier des charges. Malgré ces disparités, nous pouvons apporter quelques conseils : Dans la mesure où l’infrastructure de données spatiales s’inscrit dans un système d’information plus large , au service des métiers de la collectivité ou de l’entreprise, il nous apparaît nécessaire et vital que les normes et standards du schéma directeur informatique de la collectivité ou de l’entreprise soient applicables à l’information géographique. Pour parler autrement , l’IDS ne doit pas, à long terme, être bricolée dans un coin avec du PHP/MapServer/OpenLayers quand l’organisme construit son SI dans une infrastructure Java/J2EE. Dans la même veine et dans le même contexte mais en terme d’interface et de modèle : L’information géographique doit se plier aux règles de définition et de gestion du modèle de données de l’entreprise. Celle-ci nécessite au « géomaticien » de mettre ses lunettes d’informaticien pour changer d’angle de vue. Pour l’informaticien en charge du design de son système d’information, la structure de la base de données est « drivée » par un modèle (UML, MERISE, MEGA,…) alors que pour le « géomaticien » , la structure de la base de données est souvent souple, « drivée » par les formats d’entrée, voire modifiable par un utilisateur… Toujours dans le domaine de l’infrastructure « lourde » de type Java/J2EE, faire bien attention au souci de performances : En imposant l’utilisation de couches multiples pour Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 5 respecter le modèle MVC et l’utilisation de middleware de type Hibernate, on peut se retrouver devant une machinerie complexe et lente => Confier au SGBD/Serveur la complexité des requêtes. SPECIFICATIONS DE PERFORMANCES C’est souvent le manque de performances qui limite l’adhésion des utilisateurs … Les exemples sont ici très nombreux…. Tout l’effort de construction d’une IDS s’effondre dès les premiers jours d’utilisation… Et pourtant, c’est rarement le bout de la chaine qui est en cause (la ligne finale ADSL ou le réseau intranet) … Comment faire ? Une des causes les plus souvent constatées provient de l’hébergement du (ou des serveurs) insuffisamment dimensionné, l’hébergement qui trop souvent fait les frais des contraintes budgétaires. Les solutions d’hébergement externalisées, voire le cloud computing sont des solutions à analyser sérieusement même pour une collectivité ou une entreprise. Cette ligne budgétaire doit être anticipée très tôt, la performance passe presque avant les fonctionnalités. Sur le plan organisationnel, il faut au maximum responsabiliser l’intégrateur sur les performances du système par l’expression de spécifications de performance et la tenue de tests de réception. Attention, l’intégrateur ne pourra s’engager que s’il maitrise toute l’installation et les conditions d’hébergement du système, il ne peut y avoir d’engagement de performances si le client impose son propre hébergement. En amont, il est intéressant pour l’intégrateur de disposer d’estimations d’accès au système. Ces estimations doivent être précises et renseignées sur le comportement des opérateurs (nb d’accès à une carte, déplacements ? , zoom ?). Dans certains cas, l’architecture même du serveur peut dépendre de ces comportements (caches, vectoriel sur poste client, etc..). SPECIFICATIONS DE MAINTENANCE La maintenance, c’est un peu comme la performance, la dernière roue du carrosse …Et pourtant, la correction des anomalies , les évolutions, sont des signes de dynamique de l’application et contribuent à l’adhésion des utilisateurs. Voici ci-dessous quelques conseils : Le choix de solutions (Opensource ou éditeur) doit se mesurer à moyen terme, en intégrant un paramètre de pérennité et dynamique de la communauté (dans le cas de l’Opensource). Dans ces temps de technologie évolutive et chaotique, l’obsolescence guette et peut tomber rapidement sur un produit ou composant. Le management de la maintenance n’est souvent pas assez rigoureux et tout comme l’hébergement, il doit est budgetisé très tôt dans le processus d’estimation des coûts. CONCLUSIONS Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 6 Mettre en place une Infrastructure de Données Spatiales … ou un serveur spatial dans sa collectivité ou entreprise , c’est un projet de système d’information, régi par les règles et codes et standards de l’informatique , le « géo » qui précède ne justifie pas un traitement particulier. Le cahier des charges , document phare de transmission d’information entre les utilisateurs et le (ou les) prestataires de réalisation, doit suivre les 3 principes énoncés ci-dessous : Il doit être précis et cohérent : Les concepts employés (cartes, données, publication, consultation, services, ..) doivent avoir la même signification pour tous les acteurs du projet. Il doit être complet et aborder les 5 thèmes cités (fonctions, opérations, interfaces, architecture/réalisation, performances). Il doit rester proche du besoin des utilisateurs et éviter de verser trop tôt dans la technologie. Jean-Yves Garinet – Rencontres SIG La Lettre – Mai 2010 7