Institut de la Francophonie pour l'Informatique
Institut National des Télécommunications
MÉMOIRE DE FIN D'ÉTUDES
MASTER EN INFORMATIQUE
Moteurs de composition
pour le système d'information
sémantique et adaptatif
DO Ngoc Kien
Responsable de stage : Amel BOUZEGHOUB
Ce stage a été réalisé au sein de l'équipe Base des données du département Informatique de
l'Institut National des Télécommunications
GET/INT
13 septembre 2006
Remerciements
Je tiens tout particulièrement à remercier Amel Bouzeghoub pour sa proposition de ce sujet
de stage, son encadrement, ses aides et ses précieux conseils pendant 6 mois de mon stage.
Je tiens également à remercier Guy Bernard de m'avoir accueilli chaleureusement dans
l'équipe de recherche de l'Institut National des Télécommunications (INT).
Je voudrais aussi remercier toutes les personnes qui m'ont aidé et supporté, je pense plus
particulièrement à Bruno Defude et Serge Garlatti pour leurs conseils judicieux ainsi que les
membres du projet SIAS qui m'ont accompagné dans cette formidable expérience.
Mes plus sincères remerciements vont également à tous les professeurs et les personnels
de l'Institut de la Francophonie pour l'Informatique (IFI) pour m'avoir enseigné et donné des
cours de très bonne qualité pendant mes études à l'IFI.
Enn, je remercie ma famille, mes parents et mes amis pour leur soutien, soit-il scientique,
humain ou spirituel. Sans eux, mon travail n'aurait pas abouti.
i
Résumé
L'évolution actuelle des systèmes d'information (SI) va vers plus de personnalisation et
de réutilisation dans un environnement informatique marqué par la répartition et les technologies du web (dont les services web). La notion de composition de ressources (documents,
présentations, composants, services web..) devient centrale. Ce stage s'intéresse aux systèmes
d'information adaptatifs et sémantiques vues comme des systèmes dynamiques, distribués et
adaptatifs fondés sur des mécanismes de composition et des modèles sémantiques. L'idée principale est donc de chercher à mieux analyser la notion de composition pour être capable de
dénir ensuite des moteurs de composition beaucoup plus réutilisables et exibles.
Mots-clefs : Sémantique web, adaptation, services web, composition, système d'information
sémantique, ontologies, métadonnées.
ii
Abstract
Nowadays, information systems need to deal with large distributed repositories, the reuse of
their resources and adaptation. The composition of documents, components, and web services
is one of their main issues. This intership focuses on semantic and adaptive information systems
which are viewed as dynamic, distributed and adaptive systems based on composition engines
and semantic models. A composition engine has the ability to compute an adapted information
system on the y according to user needs. The main goal is to analyze the composition concept
for designing composition engines which can be as exible and reusable as we can.
Keywords : Semantic web, adaptation, web services, composition, semantic information
system, ontologies, metadata.
iii
Table des matières
Résumé
ii
Abstract
iii
1 Introduction
1
1.1
Problématique
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Objectif du stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.3
Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.4
Contribution de stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.5
Organisation du mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2 Systèmes de composition existants
2.1
2.2
2.3
5
Scarce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
2.1.1
Ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.1.2
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.1.3
Composition et Adaptation . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.1.4
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
Système de composition de ressources pédagogiques . . . . . . . . . . . . . . . .
8
2.2.1
Ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.2.2
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.2.3
Composition et Adaptation . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.2.4
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
KMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.3.1
12
Ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iv
2.4
2.5
2.3.2
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.3.3
Composition et Adaptation . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.3.4
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
Système de composition de Web services . . . . . . . . . . . . . . . . . . . . . .
13
2.4.1
Ontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.4.2
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.4.3
Composition et Adaptation . . . . . . . . . . . . . . . . . . . . . . . . .
14
2.4.4
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
3 Modèle de l'utilisateur et techniques d'adaptation
3.1
3.2
3.3
Modélisation de l'utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.1.1
Représentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.1.2
Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.1.3
Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
3.1.4
Feed-back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
Adaptation et Recommandation . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
3.2.1
Adaptation dans les systèmes de recherche adaptative . . . . . . . . . .
26
3.2.2
Adaptation dans les systèmes hypermédia . . . . . . . . . . . . . . . . .
26
3.2.3
Recommandation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
4 Proposition d'un moteur de composition et d'adaptation générique
4.1
4.2
4.3
18
32
Scénario workow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
4.1.1
Architecture du système . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4.1.2
Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
Proposition de moteur de composition générique . . . . . . . . . . . . . . . . .
36
4.2.1
Graph générique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
4.2.2
Architecture générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.2.3
Processus de composition générique . . . . . . . . . . . . . . . . . . . . .
41
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
v
5 Réalisation
5.1
5.2
5.3
5.4
46
Moteurs d'inférence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
5.1.1
Ontobroker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
5.1.2
JESS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
5.1.3
Autres moteurs d'inférence . . . . . . . . . . . . . . . . . . . . . . . . .
51
5.1.4
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
Implantation de moteur de composition générique . . . . . . . . . . . . . . . . .
52
5.2.1
Architecture générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
5.2.2
Métadonnées de graphe en F-Logique . . . . . . . . . . . . . . . . . . . .
54
5.2.3
Implantation de Graphe . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
5.2.4
Algorithme d'instanciation de graphe . . . . . . . . . . . . . . . . . . . .
56
Application de moteur générique . . . . . . . . . . . . . . . . . . . . . . . . . .
58
5.3.1
Composition de document virtuel . . . . . . . . . . . . . . . . . . . . . .
58
5.3.2
Composition des services web . . . . . . . . . . . . . . . . . . . . . . . .
61
5.3.3
Composition des ressources pédagogiques . . . . . . . . . . . . . . . . .
64
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
6 Conclusions et perspectives
67
6.1
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
6.2
Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
Bibliographie
72
vi
Table des gures
2.1
L'architecture de SCARCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.2
L'architecture du système de composition des ressources pédagogiques . . . . .
10
2.3
Un exemple d'une ressource composée dans SIMBAD . . . . . . . . . . . . . . .
10
2.4
L'architecture de Trader des services web
. . . . . . . . . . . . . . . . . . . . .
14
3.1
un exemple de modèle de recouvrement . . . . . . . . . . . . . . . . . . . . . . .
20
3.2
Schéma de modèle de l'utilisateur multi dimensionnel [8] . . . . . . . . . . . . .
22
3.3
Un modèle de l'utilisateur multi dimensionnel [8] . . . . . . . . . . . . . . . . .
23
3.4
Techniques d'adaptation dans le système hypermédia . . . . . . . . . . . . . . .
27
4.1
Un workow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4.2
L'architecture basée sur la norme de WFMC . . . . . . . . . . . . . . . . . . . .
35
4.3
Le graphe générique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
4.4
Le diagramme classe du graph . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
4.5
L'architecture générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
4.6
Création de graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
4.7
Instanciation de graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.8
Consommation de graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
5.1
L'architecture de Ontobroker . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
5.2
Utiliser Jess avec OWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
5.3
L'architecture à 5 couches en général . . . . . . . . . . . . . . . . . . . . . . . .
52
5.4
L'architecture de moteur de composition générique à 5 couches . . . . . . . . .
53
5.5
Le diagramme de classe du graphe . . . . . . . . . . . . . . . . . . . . . . . . .
55
5.6
Le diagramme de classe des noeuds . . . . . . . . . . . . . . . . . . . . . . . . .
56
vii
5.7
Les classes de gestion des graphes . . . . . . . . . . . . . . . . . . . . . . . . . .
57
5.8
La anciene et nouvelle structure de code source de Scarce . . . . . . . . . . . .
60
5.9
Application du moteur générique pour la composition des services web . . . . .
62
5.10 Architecture de composition de services web utilisant le moteur d'exécution workow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
5.11 Architecture de composition de services web utilisant la composition logique et
physique de Scarce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
viii
65
Chapitre 1
Introduction
1.1 Problématique
Ce stage s'intègre dans le cadre du projet SIAS (Système d'Informations Adaptifs et
Sémantiques )1 . Ce projet s'inscrit directement dans le cadre des projets structurants initialisés par le GET2 . Il est le produit d une collaboration entre l'INT3 et l'ENST-B4 .
Actuellement, les communautés Adaptive hypermédia, services web (W3C, Web sémantique
et Web Intelligence), documents numériques (ACM Symposium on Document Engineering,
documents virtuels), E-learning (réseaux d'excellences Prolearn) abordent une problématique
commune sous des angles diérents : le besoin de réutiliser des ressources (documents, présentations, composants, services web...) indexées par des métadonnées sémantiques et les ontologies
correspondantes pour la conception des nouveaux systèmes d'informations fondés sur le web
sémantique et les standards du W3C. La notion même de "moteur de composition" devient dès
lors centrale et permet d'aborder le problème de manière plus conceptuelle.
L'idée du projet SIAS incitatif est donc de chercher à mieux analyser la notion de composition pour être capable de dénir ensuite des moteurs de composition beaucoup plus réutilisables
et exibles. Ensuite, c'est de proposer une nouvelle manière de concevoir des SIAS fondée sur la
composition. La notion de composition est centrale dans notre vision et la plupart des projets
existants au GET dans notre domaine ont déjà développé un, voire même plusieurs moteurs de
1
Site web du
2
Groupe des
3
projet : http ://sias.enstb.org
Ecoles des Télécommunications. Site web : http ://www.get-telecom.fr
Institut National de Télécommunication. Site web : http ://www.int-evry.fr
4
École Nationale Supérieure des Télécommunications de Bretagne. Site web : http ://www.enst-bretagne.fr
1
1.1 Problématique
2
composition comme les projets SIMBAD5 et Scriptures 6 .
Il est nécessaire d'unier toutes les propositions déjà faites autour d'un unique moteur de
composition susamment exible. Un premier travail à faire est d'étudier ce qui diérencie et
unie les approches basées sur la composition de ressources plutôt statiques (comme des documents) de celles basées sur la composition de programmes (comme les services web). Chacune
des approches propose un modèle de composition fondé sur certains principes fondamentaux.
L'adéquation de ceux-ci aux domaines d'application visés garantit sa réutilisation comme l'environnement de conception de SIAS, mais xe aussi les limites de celui-ci. Une autre dimension est
celle du domaine d'application (e-learning, journalisme,..). A un certain niveau d'abstraction,
trois principes de composition peuvent être étudiés :
1. La composition de ressources statiques qui sont organisées à priori et sélectionnées dynamiquement à partir de leurs métadonnées ;
2. La composition de web services qui sont également organisées à priori et sélectionnées
dynamiquement à partir de leurs métadonnées décrivant aussi leurs comportements ;
3. La composition dynamique de services web qui génère le schéma de composition en fonction des requêtes des clients lors de l'exécution.
Cette analyse doit ensuite nous conduire à proposer une modélisation ne de la notion de
composant et de composition. Plusieurs modèles devront être explorés ici à diérents niveaux,
même si nous privilégions à priori les modèles issus du sémantique web.
Actuellement, chaque équipe est penchée sur sa propre problématique et ses mécanismes
particuliers de composition sans aborder nécessairement le problème de "moteur de composition
générique". L'innovation de ce projet réside donc dans l'étude même de la notion de composition, de la réutilisation et de la exibilité des moteurs de composition et de ses impacts sur la
conception des systèmes d'information de demain. Notre principale innovation et contribution
consiste à généraliser les diérentes avancées de ces équipes et à les intégrer dans un cadre
unié.
5
SIMBAD (Semantic Interoperability for Mobile collaBorative and ADaptive application) est un projet de
l'INT qui s'intéresse à la description et à la composition de ressources pédagogiques et de workows.
6
Scriptures est un projet de l'ENSTB qui s'est intéressé à la composition de ressources multimédia statiques avec le moteur de composition SCARCE [15] appliqué au journalisme, au E-learning et au Knowledge
management.
Mémoire de n d'études
1.2 Objectif du stage
3
1.2 Objectif du stage
Dans le cadre du projet SIAS, ce stage a pour objectifs de :
Etudier les approches de composition existantes et les systèmes d'adaptation et personnalisation ;
Proposer un modèle de composition générique ;
Appliquer le modèle proposé à la composition de documents virtuels(DV), de services
web(SW) et de ressources pédagogiques(RP).
1.3 Environnement de travail
Les travaux de recherche qui sont présentés dans ce rapport ont été menés au sein de l'équipe
de base de données, du département Informatique (INF) - un des neuf départements de l'INT,
situé à Evry, France. Cette équipe regroupe plusieurs enseignants-chercheurs de l'INT travaillant
dans le domaine des bases des données, des technologies web, des services et workow.
L'équipe a acquis de très bonnes compétences dans la manipulation complexe de ressources
et de services dans un environnement réparti à grande échelle et dynamique (projet GET
SIMBAD). Une thèse s'intéressant particulièrement à la composition dynamique de ressources et
à la personnalisation des contenus a été soutenue en 2005. L'INT a participé avec les principales
équipes de recherche en EIAH7 française (le laboratoire TRIGONE de Lille entre autre) à l'ASPlateforme du RTP39 [13]. Les spécications d'un portail de mutualisation d'outils (pouvant
être vus comme des " services ") pour la communauté EIAH a permis d'identier les bonnes
pratiques en matière d'ingénierie des EIAH facilitant ainsi la réutilisation et la composition des
services oerts par la communauté.
1.4 Contribution de stage
La principale contribution de ce travail est la proposition d'un modèle de composition
générique basé sur les systèmes de composition existants et sa réalisation et son application
pour la composition de DV, RP et SW.
7
Environnements Informatiques pour l'Apprentissage Humain
Mémoire de n d'études
1.5 Organisation du mémoire
4
1.5 Organisation du mémoire
Après avoir présenté de manière succincte le contexte et la problématique de ce stage, je
présente maitenant l'organisation générale du mémoire. La suite du mémoire est composé de 5
chapitres regroupés en 2 parties :
Première partie : Etat de l'art
Dans cette partie, je présente un état de l'art des systèmes de composition et d'adaptation.
Je me focalise sur deux aspects : la composition et l'adaptation au prol d'utilisateur.
Le chapitre 2 fait la synthèse des systèmes de composition existants Scarce, KMP,
SIMBAD et SW en mettant en évidence leur points forts et faibles.
Le chapitre 3 décrit le modèle de l'utilisateur ainsi que des techniques principales dans
un système d'adaptation et personnalisation.
Deuxième partie : Proposition et Réalisation de moteur de composition générique
Dans cette partie, je dénis mon modèle de composition générique et son implantation.
Le chapitre 4 présente ma proposition de moteur de composition générique et l'architecture générale du modèle de composition.
Le chapitre 5 illustre l'implantation de l'architecture générale de moteur de composition
générique proposée ainsi que ses applications dans les trois domaines étudiés à savoir :
les documents virtuels, les services web et les ressources pédagogiques
Enn, le chapitre 6 donne quelques conclusions et les perspectives du travail.
Mémoire de n d'études
Chapitre 2
Systèmes de composition existants
Dans ce chapitre, notre objectif est d'examiner le principe de composition en faisant des synthèses sur les systèmes de composition existants comme SCARCE, le système de composition de
ressources pédagogique SIMBAD, le système de composition des services web. Nous présentons
leurs fonctionnalités, leurs architectures respectives et nous dressons une étude comparative de
ses systèmes.
Actuellement, la notion de composition est très populaire et devient centrale dans plusieurs
systèmes d'informations. La construction de logiciel basée sur des composants existe depuis
longtemps. Le nouveau système obtenu est établi plus rapidement et de façons plus économique
en assemblant des composants plutôt de le développer à partir de zéro. Les systèmes que nous
allons étudier est de construire la nouvelle ressource à partir des ressources existants. Cette
composition est basée sur la technologie Sémantique Web1 et l'Ontologie 2 .
2.1 Scarce
SCARCE3 est un moteur de composition exible pour le document virtuel (ICCARS4 ) basé
sur la technologie Web Sémantique [15, 17]. Un document virtuel est construit à partir de
l'ensemble des fragments selon une structure narrative prédénie par l'auteur.
1
Le Web actuel est essentiellement syntaxique, dans le sens que la structure des documents (ou ressources
au sens large) est bien dénie, mais que son contenu reste quasi inaccessible aux traitements machines. Seuls
les humains peuvent interpréter leurs contenus. La nouvelle génération de Web - Le Web sémantique - a pour
ambition de lever cette diculté. Les ressources du Web seront plus aisément accessibles aussi bien par l'homme
que par la machine, grâce à la représentation émantique de leurs contenus.[19]
2
Une ontologie est une spécication formelle explicite d'une conceptualization partagée.[17]
3
SemantiC and Adaptive Retrieval and Composition Engine
4
Integrated and Collaborative Computer Assisted Reporting System (http ://iccars.enst-bretagne.fr)
5
2.1 Scarce
6
2.1.1 Ontologies
SCARCE est fondé sur les quatres ontologies suivantes :
Ontologie du domaine : C'est l'ontologie qui représente l'ensemble des concepts du
domaine et aussi leurs relations. Cette ontologie peut décrire le contenu des fragments et
aussi des connaissances, préférences de l'utilisateur.
Ontologie de l'application : C'est l'ontologie qui représente les notions et les termes
dans l'application. Par exemple, dans cette application de composition de document virtuel, on a des notions comme AdaptationMethod, DirectGuidance, TypeDocument, Article, Report....
Un schéma de méta-données : Les métadonnées5 sont structurées selon un schéma de
métadonnés. Ce schéma permet de rechercher, gérer et utiliser des informations hétérogères. Le schéma de métadonnées est composé de diérentes sections (général, cycle de vie,
technique, journalisme, classication, méta-données et droits), chaque section correspond
à un point de vue particulier sur la ressource.
Ontologie de l'utilisateur : Le modèle de l'utilisateur dans Scarce est assez complet.
C'est un modèle multidimensionnels. Il contient 5 dimensions : Données personnelles,
Préférences, Connaissances, Historique, Session. Scarce utilise le modèle du domaine pour
modéliser les connaissances de l'utilisateur. Les connaissances de l'utilisateur sont une liste
d'éléments (concept, niveau).
2.1.2 Architecture
Un document virtuel est généré automatiquement au moment de la consultation. Le moteur Scarce a utilisé la structure narrative pour assurer la sémantique du document virtuel.
Une structure narrative est un type de graphe orienté avec des noeuds et des relations sémantiques entre les noeuds. Elle contient aussi un ensemble de règles d'appartenance pour
faire l'adaptation basée sur le stéréotype de l'utilisateur. Le moteur de composition va générer
dynamiquement les pages web dont le contenu est personnalisé (cf.gure.2.1).
Mémoire de n d'études
2.1 Scarce
7
Fig. 2.1 L'architecture de SCARCE
2.1.3 Composition et Adaptation
Pour construire un document virtuel, le moteur Scarce doit composer des fragments existants. Le document virtuel est composé selon le document générique (structure narrative) créé
par l'auteur. Ce moteur se compose trois sous-moteurs : la composition sémantique, la composition logique et la composition physique (cf.gure.2.1).
La composition sémantique a des fonctions de recherche, de choix et d'organisation des
informations de façon sémantique et adaptée à l'utilisateur. En fait, il instancie les structures
narratives à partir de l'ensemble des fragments.
La composition logique assemble les informations fournie par la composition sémantique en
un chier XML. La particularité de la composition logique est de faire l'adaptation de présentation (contenu personnalisé) et de navigation (inspiré des systèmes hypermédia adaptatifs).
La composition physique (présentation) transforme le chier XML fournie par la composition logique en page web HTML grâce à XSLT. Cette page web est achée dans le navigateur
de l'utilisateur avec un contenu personnalisé.
5
Une métadonnée est l'information additionnelle qui décrit les données auxquelles elle est associée
Mémoire de n d'études
2.2 Système de composition de ressources pédagogiques
8
2.1.4 Discussion
Scarce présente un modèle complet de composition de document virtuel. Les ontologies
utilisées sont riches détaillés et bien construites.
Le modèle de l'utilisateur est aussi puissant. Les connaissances de l'utilisateur sont bien
représentées en utilisant le modèle du domaine. Scarce implémente aussi la propagation des
connaissances de l'utilisateur sur le modèle du domaine en utilisant les règles en F-logique6 .
Mais, ce modèle n'est pas mis à jour pendant l'exécution de l'application.
La composition est fondée sur l'évaluation des fragments pour un type d'utilisateur particulier selon les règles d'appartenance (adaptation basée sur les règles).
Scarce a utilisé l'adaptation de navigation dans l'application d'hypermédia pour permettre
à l'utilisateur de naviguer à travers le document virtuel.
Cependant, les relations dans la structure narrative et la description de fragment sont
simples. La structure narrative contient seulement des relations hiérarchiques et le seul contenu
des fragments sont décrits par le métadonnées. La technique de composition dans Scarce est
aussi simple. Il est donc dicile d'appliquer ses techniques de composition et d'adaptation à
l'autres domaines. De plus, les codes source de Scarce ne sont pas claires et structurés.
Le moteur de Scarce a été appliqué dans le projet Candle7 et KMP (présenté dans la section
2.3).
2.2 Système de composition de ressources pédagogiques
Le système de composition de ressources pédagogiques est pour but de fournir des ressources pédagogiques ou des cours personnalisés à l'apprenant en sappuyant sur son modèle.
L'article[13] présente une théorie sur la description des ressources pédagogiques élémentaires
et aussi de ressources composées (ex : un cours) en assemblant des ressources élémentaires. Le
système pédagogique adaptif présenté par Duitama se compose de méthodes d'évaluation des
ressources et de diérents modèles.
6
Le langage F-Logic est un langage déductif de base de données orientée objets qui combine la sémantique
déductive et l'expressivité des langages de bases de données déductives avec la richesse de modélisation des
modèles de données orientés objets.[17]
7
Collaborative And Network Distributed Learning Environment (http ://www.candle.eu.org)
Mémoire de n d'études
2.2 Système de composition de ressources pédagogiques
9
2.2.1 Ontologies
Il y a trois ontologies dans ce système :
Modèle du domaine : Il s'agit de décrire l'ensemble des concepts pour un domaine
de connaissances donné comme l'informatique. Les concepts sont reliés par des relations
(hiérarchiques, background...)
Modèle de l'apprenant : Il est similaire au modèle de l'utilisateur dans Scarce. C'est
également un modèle multi-dimensionnel avec 2 dimensions : les préférences (nom, email,
préférés...) et les connaissances (un vecteur d'élément (rôle, niveau, concept)). En comparaison avec le modèle de l'utilisateur de scarce, la représentation des connaissances est
très proche.
Modèle des ressources (méta-données) : Il s'agit de décrire les ressources pédagogiques en utilisant le modèle du domaine. Chaque ressource possède les parties suivantes :
Prérequis est l'ensemble des triplets (concept, rôle, niveau).
Contenu décrit le contenu des ressources. C'est également un ensemble des triplets
(concept, rôle, niveau).
Fonction d'acquisition met à jour le modèle d'apprenant. Elle est aussi un ensemble
de triplets (concept, rôle, niveau).
Caractéristiques éducatives LOM8 ont d'autres caractéristiques factuelles sous
forme d'un ensemble (prédicat, valeur).
En comparaison avec le métadonnées décrivant les fragment dans Scarce, le contenu d'un
fragment est aussi l'ensemble des concepts du domaine mais le fragment ne possède pas de
prérequis ni de fonction d'acquisition.
2.2.2 Architecture
Ce système comprend trois niveaux : Domaine, Composant et Utilisateur (cf.gure.2.2).
Comme j'ai présenté dans la section précédente, le domaine est représenté par une ontologie. Le
niveau composant contient les ressources élémentaires ou les ressources composées. L'utilisateur
va rechercher et manipuler ces ressources.
8
Learning Object Metadata est un standard de l'IEEE qui fournit un moyen ecace de repérer et d'indexer
des objets d'apprentissage.
Mémoire de n d'études
2.2 Système de composition de ressources pédagogiques
10
Fig. 2.2 L'architecture du système de composition des ressources pédagogiques
2.2.3 Composition et Adaptation
Composition
Sa thèse a présenté la composition statique des ressources pédagogiques. Cette composition
est représentée par un graphe avec des noeuds (ressources) et les opérateurs entre les noeuds.
Un exemple d'une ressource pédagogique composée est montrée dans la gure 2.3.
Fig. 2.3 Un exemple d'une ressource composée dans SIMBAD
Duitama a décrit trois types d'opérateurs : ALT, SEQ et PAR. Il présente aussi la notion
d'échecs lorsque l'apprenant n'a pas acquis le ou les concepts développé(s) par un composant.
Avant de livrer la ressource composée à l'utilisateur, le système génère tous les chemins
possibles. Les techniques d'adaptation sont appliquées sur ces chemins pour donner une liste
ordonnées à l'utilisateur.
Une ressource composée peut avoir des noeuds intentionnels. Les noeuds intentionnels sont
représentés par une requête. Au moment de l'exécution, le système traite la requête pour obtenir
les ressources adéquates. Ce type de noeud est similaire au noeud dans la structure narrative
Mémoire de n d'études
2.3 KMP
11
dans Scarce.
Adaptation
Étant donné que le système proposé par Duitama est orienté vers la recherche adaptive
de ressources pédagogiques, la technique d'adaptation employée est extraite des techniques
d'adaptation des systèmes de recherche adaptifs.
Cette adaptation est basée sur des règles selon le stéréotype de l'utilisateur. Il y a 3 types
de règles :
Des règles pour la ré-écriture des requêtes ;
Des règles pour la ré-écriture des prérequis qui gurent dans les requêtes ;
Des règles pour le ltrage des résultats des requêtes.
2.2.4 Discussion
Le première concerne l'aspect pédagogique qui n'est pas ou très peu traité. En eet, les interactions entre l'apprenant et l'enseignant ne sont pas traités. Seule la composition de ressource
puis l'adaptation à un apprenant sont développés.
Dans ce système, l'utilisateur ne peut pas dénir ses règles d'adaptation lui-mêmes pour le
ltrage des ressources obtenues.
Une autre limitation liée au type d'adaptation où seules l'adaptation au niveau de connaissances de l'apprenant et à ses préférences sont exploitées. Il n'y a pas d'adaptation de présentation et d'exécution des ressources. De plus, les codes source ne sont pas disponibles.
Par contre, les modèles (de l'utilisateur, du domaine et de ressources) sont bien représentés
en RDF
9
et RDFS10 .
2.3 KMP
KMP (Knowledge Management Platform ) est un projet de Telecom Valley qui fait la conception et l'analyse des usages communautaires d'un service web de compétences partagées par un
9
RDF est un modèle pour dénir l'information sur Internet, en exprimant la signication des termes et des
concepts sous une forme que les ordinateurs peuvent aisément traiter. RDF peut employer XML pour sa syntaxe
et URIs pour indiquer des entités, des concepts, des propriétés et des relations.
10
RDFS(RDF Schema) est une langue pour donner dénir une carte conceptuelle des vocabulaires de RDF
qui permet de créer des vocabulaires de métadonnées, qui indique également comment manipuler et marquer
les éléments.
Mémoire de n d'études
2.3 KMP
12
réseau inter-rmes et inter-institutions dans le domaine des télécommunications.
L'objectif de KMP est de construire une solution innovante de gestion des connaissances
partagées entre diérents acteurs, au sein d'une même communauté de pratique. Cette solution
repose sur l'analyse, la conception, la réalisation et l'évaluation d'un prototype de service web de
compétences, de type hypermédia adaptatif. Il s'agit d'un moteur de composition dynamique de
site web à partir d'une spécication fondée sur les connaissances explicites d'une communauté
de pratiques. Ce prototype sera une composante d'un portail web destiné à une communauté
d'entreprises, d'institutionnels et d'organismes académiques impliqués dans le domaine des
télécommunications ; la communauté étudiée dans l'application est la Telecom Valley.
KMP est réalisé à INRIA et aussi à ENST-B (Brest).
2.3.1 Ontologies
KMP est basé sur le moteur de composition Scarce. Il ajoute une ontologie de domaine de
Télécom pour gérer des connaissances de Telecom Valley.
TelecomValley : Cette ontologie décrit les compétences, les échanges de valeurs... des
Télécom Valley.
2.3.2 Architecture
L'architecture de KMP est basée sur celle de Scarce. La composition sémantique est simpliée et le mécanisme de composition logique et physique est utilisé pour la gestion des requêtes
de l'utilisateur.
2.3.3 Composition et Adaptation
En fait, KMP annonce l'utilisation de la structure narrative pour gérer la chaîne de valeurs
de Télécom Valley mais en réalité il ne l'utilise pas. Il n'y a donc pas de composition dans
KMP. L'adaptation à ce jour n'est pas encore réalisé.
2.3.4 Discussion
Ce projet est une application de l'architecture de Scarce. Cependant, il n'y a pas de composition et d'adaptation qui sont pourtant les points forts de Scarce.
Mémoire de n d'études
2.4 Système de composition de Web services
13
2.4 Système de composition de Web services
Actuellement, il existe de plus en plus des travaux de recherche sur la composition de services
web pour créer de nouveaux services web[28, 20, 2, 25]. L'idée de la composition des services
web est de créer un nouveau service web en combinant des services existants en se basant sur
leurs comportements pour répondre aux besoins de l'utilisateur.
2.4.1 Ontologies
Pour rechercher les services de manière sémantique, il faut annoter des services web. Le
langage OWL-S (OWL pour la description des services web) est actuellement le plus utilisé
dans ce domaine.
Oussama Kassem Zein[28] a proposé un modèle de métadonnées pour les services webs
qui contient 3 dimensions : propriétés statiques (comme localisation, nom, ...), propriétés dynamiques (enchaînement des opérations) et l'interface (description des opérations, leur paramètres
et attributs).
Moussa Lo et Fabien Gandon[20] ont utilisé OWL-S11 pour faire l'annotation des services
web. Ils ajoutent une élément " semanticType " dans OWL-S pour annoter la sémantique des
opérations dans les services web. Cette modication sert à trouver et composer des services
web.
2.4.2 Architecture
L'architecture de l'application de composition des services web est basée sur le modèle
Trader de Oussama et Broker de Moussa Lo et Fabien Gandon. Deux modèles-là sont très
proches.
Le modèle Trader utilise Ontobroker comme moteur d'inférence pour stocker les descriptions du service web. Grâce à cela, Trader peut rechercher en utilisant de la sémantique sur
Ontobroker pour trouver les services web satisfaisants aux besoins de l'utilisateur. Exporter est
le fournisseur des services web. Importer est le consommateur de services web. Tout d'abord,
Exporter inscrit tous les services web qu'il fournit à Trader (cf.gure.2.4 (1)). Ensuite, Trader
les annotent et les stockent dans Ontobroker (cf. g 2.3 (2)). Des que Importer reçoit une re11
OWL est une recommandation de W3C qui décrit les services web.
Mémoire de n d'études
2.4 Système de composition de Web services
14
quête il la transmet à Trader (cf.gure.2.4(3)). Trader consulte Ontobroker qui lui renvoie les
services web satisfaisants la requête(cf.gure.2.4 (4, 5)). Trader transmet la description des services web trouvés à Importer (cf.gure.2.4 (6)). Importer utilise cette description pour appeler
directement Expoter an d'il exploite les services web (cf.gure.2.4 (6, 7)).
Fig. 2.4 L'architecture de Trader des services web
Dans le cas où Trader ne trouve pas les services web correspondant aux besoins de l'utilisateur, il va procéder à la composition de services existants pour fournir à l'utilisateur un service
web composé.
2.4.3 Composition et Adaptation
Composition
La composition des services web se classe en 3 types :
La composition statique est la composition des services web qui est dénie au moment
de compilation ;
La composition semi-dynamique est la composition dont le schéma des types de
services web est prédéni. Au moment de l'exécution, le système va chercher les instances
des services web qui satisfont les types des services web puis les utiliser ;
La composition dynamique est la composition des services web au moment de l'exéMémoire de n d'études
2.4 Système de composition de Web services
15
cution. C'est-à-dire qu'à partir de la demande de l'utilisateur, le système va chercher et
générer dynamiquement le schéma de composition de type service web et ensuite chercher des instances des services web à exécuter. Par exemple, dans l'article de Moussa
Lo et Fabien Gandon, un système de composition de web services est proposé et réalisé
en se basant sur le moteur d'inférence Corese. celui de Oussama est basé sur le moteur
d'inférence Ontobroker.
En comparaison avec la composition de documents virtuels et de ressources pédagogiques,
le type de composition utilisé correspond à la composition semi-dynamique de services web
est similaire. A partir d'un schéma prédénit, au moment de l'exécution on va chercher les
ressources pour instancier ce schéma.
La composition dynamique des services web semble être très diérente de la composition
de documents virtuels et de ressources pédagogiques. Dans cette composition, l'utilisateur exprime sa demande, le système compose des services web dynamiquement en se basant sur les
descriptions des services web existants. Oussama a réalisé la composition dynamique en faisant
des requêtes en F-logique pour trouver le schéma de composition qui satisfait aux besoins de
l'utilisateur. Moussa a écrit les règles dans Corese pour établir les chemins de composition
qui satisfait aux besoins de l'utilisateur. Les deux approches utilisent la même technique de
composition.
Adaptation
Dans les applications de composition de services web, l'aspect d'adaptation au modèle de
l'utilisateur se résume à l'adaptation de la demande des entrées et sorties de l'utilisateur. De
plus l'autre aspect d'adaptation, le plus important et le plus complexe ,à savoir, l'adaptation
au contexte de l'exécution de services web n'est pas traité.
2.4.4 Discussion
Dans cette section, nous avons présenté la composition de services web. Les ressources
assemblées sont ici les services web élémentaires. Deux services web peuvent être composés s'ils
satisfont la condition de types "Input-Ouput". Grâce aux métadonnées de services web, on peut
construire des règles d'inférences pour déduire automatiquement si la condition est veriée.
La composition des services web est diérente par rapport à la composition de documents
Mémoire de n d'études
2.5 Conclusion
16
virtuel et de ressources pédagogiques. En eet, la composition dynamique de services web génère
un schéma de composition selon les besoins de l'utilisateur, alors que dans la composition de
documents virtuels et de ressources pédagogiques, le schéma de composition est prédénit.
2.5 Conclusion
Nous avons étudié dans ce chapitre la notion de composition ainsi que des systèmes basés
sur des techniques de composition diérentes. La plupart de système réalisent la composition en
se basant sur la recherche sémantique. Ils utilisent plusieurs descriptions (métadonnées) pour
annoter le et les composent. On peut distinguer deux types de composition :
La composition selon un schéma pré-dénit (Scarce, Simbad,..). L'auteur dénit le
schéma de composition (ex : une ressources composée). A chaque fois qu'une ressource
composée est sollicitée, le système assigne des ressources élémentaires au schéma prédéni.
La composition dynamique. Il n'y a pas de schéma prédénit. En réponse à une requête
de l'utilisateur, si le système ne trouve pas de ressources satisfaisants, il va composer les
ressources existants. La composition dynamique des services web se fait en 2 étapes :
Composer les types de services web pour avoir un schéma de composition.
Composer des instances de services web selon le schéma qui a été fait dans la première
étape.
Nous avons constaté que chaque type de composition convient à une application diérente. Le
premier type de composition est approprié au domaine pédagogique parce que l'enseignant ou
l'auteur du cours peut prédénir les étapes à suivre ou le schéma du cours selon ses connaissances pédagogiques. Le système fait la composition selon ce schéma-là. Le deuxième type
de composition est approprié l'application de composition de services web. A partir du type
de service souhaité par l'utilisateur ainsi que les entrées/sorties de celui-ci, le système génère
automatiquement le schéma de composition.
Une autre propriété commune aux systèmes étudiées (Scarce, Simbad) est le fait d'intégrer
un mécanisme d'adaptation. L'adaptation peut se faire au moment de la composition comme
pour Scarce, ou au moment de l'exécution comme pour Simbad. L'adaptation est utilse lorsque
le nombre de ressources satisfaisant une requête est important. Le système choisit alors la
"meilleure" ressource, c'est-à-dire la ressource la mieux adaptée au prol de l'utilisateur. Dans
Mémoire de n d'études