Full text: International cooperation and technology transfer

le contexte d’un navigateur sur un poste distant. 
Pour l’implémentation du système GEOLIB, la technologie Active 
X de Microsoft a été adoptée. La raison principale de ce choix 
était l’orientation dominante pour cette plate-forme de clients 
potentiels 1 . Le système encapsulé et affichant l’interface avec un 
composant de type ActiveX garantissait à la fois le 
fonctionnement dans l’architecture Internet et l’intégration avec 
un grand nombre d’outils de développement d’applications 
Windows et de systèmes auteurs. La technologie Microsoft était 
plus simple à l’utilisation ainsi qu’au développement et nécessitait 
moins de ressources à l’exploitation que CORBA. Pour le choix 
entre Java et ActiveX, un des critères de sélection était la rapidité 
d’exécution du code binaire. 
3.2. Fonctionnalités GeoLib 
Le premier prototype du système GEOLIB devait supporter les 
fonctionnalités suivantes : 
• acquisition et conversion de données : 
import de données vecteur (spaghetti) et rasteur avec 
des données attributaires associées, 
création et modification des cartes à partir de plusieurs 
couches, 
• exploitation de données, requêtes spatiales et attributaires : 
requêtes sur des critères attributaires, 
requêtes spatiales basées sur la distance, l’adjacence, 
l’intersection et l’inclusion, 
• visualisation de données 2D : 
affichage et suppression visuelle de couches et de 
résultats de requêtes, 
zoom physique sur les couches rasteur et vecteur, 
fonctionnalité de déplacement (“pan”), 
• fonctions géographiques : 
calcul de la longueur et de la surface des objets, 
calcul de la distance entre deux objets, 
opérateurs d’adjacence, d’intersection et d’inclusion, 
• fonctionnalités système : 
gestion d’un tampon client et serveur pour 
l’optimisation de la lecture et du transfert des données, 
système “multi-threads” pour paralléliser l’exécution 
des requêtes, des tâches liées à la lecture sur disque 
et à la communication réseau, 
gestion de la couche de communication Internet. 
3.3. Contraintes architecturales 
Les données géographiques représentent généralement des 
volumes importants. Elles sont organisées en structures simples 
(■spaghetti) ou plus sophistiquées qui intègrent des notions de 
topologie entre objets [Laurini, Scholl], Le modèle spaghetti n’est 
pas adapté pour des opérations telles que le calcul de 
l’intersection entre deux polygones. Les structures topologiques 
le permettent, mais elles augmentent l’espace de stockage et la 
maintenance nécessaire après les mises à jours. Ces structures 
occupent en effet une place plus importante et peuvent même 
doubler l’espace nécessaire pour le stockage. En général, la 
1 Ce choix a été fait au début de l’année 1997. Le langage Java 
manquait des bibliothèques graphiques et était peu performant à 
l’exécution. Aujourd’hui l’évolution du langage Java permet 
d’envisager la migration du système GEOLIB sur une plate-forme 
Java. 
tendance sera la suivante : plus les fonctionnalités d'analyse 
géographique sont riches, plus le modèle de données 
correspondant est complexe, plus il occupe d’espace de 
stockage. 
Bien que les performances des réseaux évoluent sans cesse, 
Internet peut encore être caractérisé comme étant un réseau 
lent. En tenant compte du volume potentiel de données 
géographiques, le transfert de données est donc un des points 
critiques de notre système. 
Par ailleurs, dans une architecture Internet, l’applicatif du client 
est soumis aux règles de sécurité qui peuvent par exemple 
interdire le stockage des données temporaires sur le disque du 
client. Toutes les données que le client manipule doivent alors se 
trouver dans la mémoire vive du poste client. C'est également un 
point critique, car le rapport entre le volume de données et la 
taille mémoire disponible sur le poste client n’est pas toujours 
favorable. 
Le troisième point important concerne l’équilibrage des capacités 
de traitement des données géographiques entre les deux parties 
du système : le client et le serveur. D’une part, il n’est pas 
raisonnable de mettre un outil SIG généraliste sur la partie client 
si la plupart des fonctionnalités SIG ne sont pas utilisées. D’autre 
part, l’architecture serveur de données a aussi ses défauts. 
Supposons que tous les traitements (simples ou complexes) se 
fassent sur la partie serveur et que la partie client ne s’occupe 
que de la visualisation de l’information et de la construction des 
requêtes. Cela oblige à s’adresser au serveur même si le client 
dispose de toutes les données pour répondre à la requête, quelle 
que soit sa complexité et même dans le cas où l'on demande 
d’exécuter à nouveau la même requête. Cela signifie que les 
mêmes données vont transiter sur le réseau et que le serveur 
sera surchargé, faute d’exécuter les mêmes traitements. 
La conception du système dans un environnement Internet doit 
donc tenir compte de deux exigences : 
a) réduire le volume de données à transférer au minimum 
nécessaire pour permettre à l’utilisateur de travailler, 
b) équilibrer les traitements entre le client et le serveur, ce qui 
signifie avoir un client intelligent, capable de traiter certaines 
requêtes en local. 
La solution que propose GEOLIB consiste à laisser les 
traitements complexes s'effectuer sur le serveur de données. Le 
client conserve une partie allégée de la bibliothèque de fonctions 
pour pouvoir répondre à certaines requêtes sans s’adresser au 
serveur. Il est doté d’un tampon d'objets et de réponses qui 
permettra de disposer de certaines données sur le poste client 
afin d’anticiper les actions de l’utilisateur. 
3.4. Architecture générale 
Deux architectures de déploiement ont été étudiées : Internet et 
mono-poste. Ces deux architectures ont des différences 
significatives : 
• une application mono-poste n’a qu’un seul utilisateur, donc le 
système GEOLIB sera visible comme une seule unité et 
s’intégrera totalement dans l'applicatif final. 
• dans un environnement Internet, le système est utilisé par 
plusieurs utilisateurs. Il est composé d’au moins deux parties, 
la partie serveur et la partie client. Une couche de 
communication est nécessaire pour le fonctionnement de 
cette architecture. 
L’étude détaillée de deux types d’applications a permis de 
concevoir une architecture à partir de modules internes. Les 
principaux modules sont les mêmes pour les deux architectures. 
Ces modules s’accordent pour produire deux variantes du 
système GEOLIB : GEOLIB mono-poste (en tant que composant 
ActiveX pour l’intégration avec l’applicatif final), et GEOLIB Web 
(en tant qu'application serveur avec composant ActiveX pour le 
téléchargement et l’exécution dans le navigateur). Les figures 
suivantes (Figure 4 et Figure 5) illustrent ces architectures en
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.