vendredi 21 mars 2008

Les gestionnaires de réseaux

Nous concevons ViSit Anywhere comme un outil destiné aux gestionnaires de réseaux de distribution. Pourquoi limiter un tel produit à une cible aussi étroite (une niche) ? Ses fonctionnalités de base (client léger d'édition de données spatiales) permettent de couvrir un spectre très large d'applications : une collectivité pourrait l'utiliser pour maintenir son système d'information géographique, une entreprise pour gérer son parc immobilier, etc.

Dès le début de ce projet; nous avons adopté 'eXtreme Programming' (XP), une méthode de développement 'Agile' qui commence à être reconnue dans le monde du développement de logiciel. Un aspect essentiel de cette approche est son exigence d'une définition précise et concrète des objectifs à atteindre, exprimée du point de vue de l'utilisateur. Pour éviter par exemple qu'un programmeur ajoute une fonctionnalité parce qu'il la trouve 'cool' (de son point de vue naturellement). De la même façon, en ciblant dès le début une cible concrète (les gestionnaires de réseaux), nous espérons éviter d'alourdir le produit de fonctionnalités trop générales pour être vraiment utiles, en manquant du même coup de ressources pour ce qui est vraiment utile.

L'activité d'un gestionnaire de réseau est fondamentalement organisée autour de la maintenance en condition opérationnelle d'un 'patrimoine réseau'. De plus, les gestionnaire de réseau est de fait dans une situation de monopole sur son territoire. A ce titre, il doit en permanence fournir des informations sur ses opérations à un contrôle de plus en plus exigeant. Il doit donc mettre en place un système d'information performant et évolutif. Ce système doit nécessairement gérer des données spatiales. Ceux qui ont essayé de décrire dans une base de données relationnelle 'classique' des composants enterrés (conduite d'eau ou ligne électrique souterraine) sans passer par une représentation géographique savent de quoi je parle ici.

Ces données spatiales doivent être accessibles à quasiment tous les collaborateurs : on peut notamment citer les études, la maintenance, et même la comptabilité (pour garantir la véracité des immobilisations) ou la gestion de clientèle (pour maintenir un lien valide entre un point de livraison et le réseau qui l'alimente). Ces exemples montrent également que ces données spatiales ne doivent pas être confinées dans un 'silo' isolé (un SIG par exemple), mais doivent être en permanence connectées aux autres données (plus classiques) de l'entreprise : gestion d'interventions et de travaux, gestion de clientèle, comptabilité.

L'orientation 'maintenance' de l'activité a un impact majeur sur le système d'information réseaux. Il doit décrire dans la durée (en général plusieurs dizaines d'années) un relativement grand nombre d'objets (de l'ordre du million), avec un nombre annuel limité de changement (de l'ordre de la dizaine de milliers). Il doit représenter de façon fiable un état stable du réseau (en ignorant les modifications temporaires). Ce dernier point implique que les modifications doivent être organisées en transactions : les changements apportés par un utilisateur ne doivent pas être visibles (par les autres utilisateurs) avant qu'il ait terminé et validé son travail.

Le fait de cibler spécifiquement les gestionnaires de réseaux nous oblige à traiter les problèmes clés qui leur sont posés :
  • prendre en charge la dimension spatiale du système d'information réseaux,
  • donner à tout collaborateur un accès aux données spatiales, en consultation et en édition,
  • supporter le travail en mode déconnecté,
  • connecter ces données spatiales aux autres SI de l'entreprise,
  • déployer de multiples applications spécialisées et faciles à utiliser.

Nous pensons que ces besoins ne sont pas nécessairement couverts correctement aujourd'hui, même si des réponses partielles existent. La majorité des systèmes de gestion de bases de données relationnelles (Oracle, Db2, Sql*Server, etc) gère maintenant les données spatiales (stockage, indexation, requêtes). Mais il s'agit seulement d'une infrastructure, et les applications restent à développer. Inversement, les systèmes d'informations géographiques (SIG) proposent généralement une offre applicative suffisamment riche, mais sur une plateforme propriétaire difficile à connecter aux autres systèmes d'informations. Dans les deux cas, le déploiement de tels systèmes sur l'ensemble des postes de travail est souvent trop onéreux pour être envisagé, en termes de licences et de formation.


mercredi 12 mars 2008

Introduction à ViSit Anywhere

Ce blog est entièrement consacré à l'évolution de ViSit Anywhere, la nouvelle application de géo-ingéniérie de Géotech, du stade de projet à celui d'un produit professionel adapté aux besoins de l"entreprise.

Si vous n'êtes pas déjà un client de Géotech, vous devez vous demander qui est Géotech et qu'est ce que ViSit.

Géotech est une petite entreprise implantée à Garches (France) qui fournit des solutions de géo-ingéniérie sous Microstation depuis 1989. Nous avons développé de nombreuses applications dédiées, mais nos produits phares sont ViSit et ViSit/Web. ViSit est un outil généraliste de gestion cartographique des données, qui peut être librement configuré pour de nombreuses applications, comme notamment la gestion de réseaux de distribution (eau, assainissement, gaz, chauffage urbain, électricité, etc) ou du cadastre pour les collectivités. Sa flexibilité nous a permis de mettre en place des applications spécifiques comme le suivi de construction de tunnel ou la gestion de sites industriels et tertiaires.
ViSit/Web est développé au dessus de ViSit pour permettre aux utilisateurs de consulter et de modifiier les données de ViSit à l'aide d'un navigateur Web. Avec cette extension Web, ViSit est devenu une véritable plate-forme SIG, souple et robuste, adaptable à de nombreux contextes d'utilisation.

ViSit (Visualisation de Sites) est un programme qui s'éxécute dans Microstation, l'outil CAO de Bentley Systems. Son principe novateur réside dans son modèle de sites, qui organise logiquement toute collection de fichiers graphiques et assure son indexation spatiale. Ce modèle permet de filtrer logiquement (par thèmes), et géographiquement (par étendue et échelle) des milliers de fichiers graphiques. Ses performances ont permis de l'utiliser sur de très grands jeux de données sur des ordinateurs ordinaires dès le début des années 90. Pour plus di'nformation sur le modèle de sites de ViSit, vous pouvez contacter Géotech.

Avec la version 8 de Microstation, Bentley a radicalement modifié la structure de son fichier graphique, avec un impact majeur sur la logique de ViSit. A cette période, nous avons décidé de ne pas porter le code existant (issu de plus de 10 ans de développement continu) et de ré-écrire entièrement l'application. Cette option nous permettait de restructurer entièrement le programme, en tirant partie à la fois de l'expérience accumulée auprès de nos clients et d'adopter de nouvelles (et attayantes) technologies de développement. Notre objectif était de fournir un produit plus robuste et plus flexible, adaptés aux nouveaux besoins de nos clients. ViSit Anywhere est le résultat de cette décision.

La première version beta de ViSit Anywhere est planifiée pour le premier trimestre 2008. Elle sera fournie à un groupe limité de testeurs dans les semaines qui viennent. Nous allons simultanément alimenter ce site pour expliquer la nouvelle architecture du produit, ses fonctionnalités, divers scenarii d'utilisation et les premiers retours des testeurs.
En prélude à cette première version, je veux mentionner rapidement quelques unes des fonctionnalités que je préfère dans ce produit :

  • Il est implémenté comme une application Microsoft .NET. Ce chois nous apporte une meilleure intégration dans Windows et nous donne accès aux technologies les plus récentes dans le domaine de l'interface utilisateur, de la connectivité et de l'intégration à l'entreprise. ViSit Anywhere est actuellement basé sur le framework .NET 3.0.
  • Il utilise un modèle abstrait de meoteur graphique. L'utilisation de Microstation comme éditeur graphique apporte toute la puissance et la richesse fonctionnelle nécessaires aux utilisateurs. Mais elle a un coût, non seulement en terme de licence Microstation mais également de formation. Aec ViSit Anywhere, nous continuons a fournir une intégration dans Microstation, mais nous approtons également un environnement léger pour les utilisateurs qui doivent contribuer à la maintenance des données sans être des dessinateurs professionnels.
  • Il supporte le travail en mode déconnecté. Les utilisateurs peuvent charger les données nécessaires et partir sur le terrain (ou simplement rester au bureau). Leur travail reste local tant qu'il n'est pas terminé. Ils peuvent ensuite décider de le consolider pour le partager avec leurs collègues ou de l'abandonner. L'utilisation d'un projet local est notamment un excellent moyen d'effectuer des simulations, dès lors qu'il contient l'intégralité des données liées au projet.
  • Il fournit une gestion des transactions simple et robuste. Les projets de géo-ingéniérie sont souvent liés à la maintenance d'un patrimoine, où les changements sont (relativement) peu nombreux et dispersés géographiquement. C'est un excellent contexte pour une gestion optimiste des transactions, sans verrouillage a priori. ViSit Anywhere apporte une résolution des conflits par l'utilisateur lui même (par opposition à une résolution par un administrateur), qui simplifie la gestion des changements.
  • Il utilise une gestion simplifiée des licences. Géotech approte une nouveau schéma de gestion des licences, qui donnera au plus grand nombre la possibilité de modifier les données sans pour autant alourdir le coût su sytème. De plus, la gestion centralisée des licences sur un serveur rend très simple le déploiement de ViSit Anywhere.

En résumé, nous pensons que ViSit Anywhere représente une nouvelle génération d'outil qui va changer la vision qu'ont les entreprises du SIG. Son nouveau modèle devrait leur permettre de valoriser au moindre coût leurs données spatiales.