Beruflich Dokumente
Kultur Dokumente
Mémoire
En vue de l’obtention du diplôme de Magister
En Informatique
Présenté par :
Fatiha BOUDALI
Thème :
Publication et découverte des web services pour le
domaine du e-learning
2007 – 2008
Résumé
Notre travail s’inscrit dans cette problématique de prise en compte de ces critères lors
de la découverte des web services afin de donner des résultats convenables et de satisfaire au
mieux l’utilisateur. Donc, pour mieux répondre aux requêtes de découverte, nous proposons
de munir les web services d’une description sémantique de leurs contraintes. Cette description
sémantique est réalisée grâce à l’ontologie DAML-S étendue par une autre ontologie dite
ontologie de qualité d’apprentissage (QA), qui décrit le service en terme de fonctionnalités
pédagogiques fournies et des aspects technologiques. Cependant, vu la diversité des
utilisateurs demandeurs de services, d’autres paramètres doivent être considérés lors de la
découverte, tels que les besoins des utilisateurs, leurs exigences et leurs préférences. A cette
fin, l’élaboration d’une ontologie de profil d’utilisateur est notre deuxième réflexion pour
augmenter le degré de pertinence des résultats de découverte.
Ainsi, nous proposons d’exploiter ces ontologies dans un système pour la publication
et la découverte des web services e-learning.
Mots clés :
e-learning, ontologie, web services, découverte des web services, profil utilisateur, DAML-S.
Abstract
Today’s tendency in learning environments is the increasing use of the web services in
order to allow interoperability between platforms. A web services is an application, put on
Internet, by service supplier, and accessible by the customers through standard protocols. The
services descriptions are recorded in a directory named UDDI.
Currently, the number of web services-based e-learning platforms is more and more
increasing. These platforms are from different suppliers and have different characteristics and
functionalities. Consequently, their discovery and localization becomes a very important
challenge. Selection and choice criteria of the e-learning platform web services depend,
generally, on the adopted teaching model and the ergonomic and technological constraints.
Our work falls under these problems considering of these criteria during a web
services discovery operation. Therefore, for better answering the discovery requests, we
propose to provide a semantic description of the different web services constraints. This
semantic description is achieved with DAML-S ontology, extended by another ontology
named the training quality ontology (TQ), that describes the service in terms of provided
training functionalities and technological aspects. However, due to the diversity of web
services customers, other parameters must be considered during the discovery process, such
as the user's needs, their requirements and preferences. For this purpose, the development of
the user profile ontology is our second reflection to increase the degree of relevance of
discovery results.
Thus, we propose to exploit these ontologies in a system for e-learning web services
publication and discovery.
Key words:
E-learning, ontology, web services, web services discovery, user profile, DAML-S
Remerciements
Je remercie Allah le tout puissant, qui m’a donné la foi, la force et la patience pour
aller jusqu’au bout de ce travail.
Je tiens à remercier, bien sûr, en priorité, mes promoteurs, Monsieur BALLA Amar et
Monsieur AMROUCHE Hakim. Comment, en effet, ne pas souligner, l’aide exceptionnelle
qu’ils m’ont apportée. Leur conseil, leur disponibilité continuelle, leur suivi minutieux de
mon travail et leur soutien, m’ont permis de mener à bien ce travail. Qu’ils veuillent bien
trouver ici témoignage de ma reconnaissance.
Je remercie également les membres du jury pour l’honneur qu’ils m’ont attribué en
acceptant d’évaluer et de juger ce modeste travail.
Sans oublier mes amis pour leur aide que pour leur soutien moral aux moments où tout
allait mal, à vous tous merci.
Cette page n’aurait probablement pas pu s’écrire sans l’appui moral des membres de
ma famille. Je les remercie tous, particulièrement ma mère, mes frères et mes sœurs pour
l’amour qu’ils m’ont apporté tous les jours.
A la mémoire de celui que j’aime tant, et que j’aurais aimé voir présent à ce jour,
…mon très cher regretté père
Introduction générale…………………………………………………..…………………….1
Chapitre 1 : Le e-learning…………………….……………………….……………………..3
1 Les ontologies................................................................................................................... 39
1.1 Définition ................................................................................................................ 39
1.2 Les composantes d’une ontologie ........................................................................... 39
1.3 Rôles des ontologies................................................................................................ 40
2 Le web sémantique........................................................................................................... 41
3 Les web services sémantiques.......................................................................................... 42
4 Approches pour les web services sémantiques................................................................. 42
4.1 DAML-S ................................................................................................................. 42
4.1.1 La classe "ServiceProfile" ................................................................................ 43
4.1.2 La classe "ServiceModel" ................................................................................ 46
4.1.3 La classe "ServiceGrounding".......................................................................... 47
4.1.4 Les ressources................................................................................................... 47
4.2 WSDL-S .................................................................................................................. 47
5 Quelques stratégies de découverte ................................................................................... 48
5.1 La stratégie UDDI ................................................................................................... 49
5.2 Découverte des services selon les qualités de services ........................................... 49
5.3 Un modèle pour indexer et découvrir les services e-learning ................................. 50
6 Synthèse des différentes stratégies ................................................................................... 52
7 Conclusion........................................................................................................................ 52
Conclusion générale………………………..……………………………………………...111
Bibliographie
Chapitre 1
Chapitre 2
Figure 2. 1 : Architecture des web services. ............................................................................24
Figure 2. 2 : Etapes d’invocation d’objets distant avec SOAP.................................................26
Figure 2. 3 : Structure d’un message SOAP.............................................................................27
Figure 2. 4 : Mécanismes d’accès aux services de UDDI. ......................................................29
Figure 2. 5 : Modèle de données de l’annuaire UDDI. ...........................................................30
Figure 2. 6 : Relation entre UDDI et WSDL............................................................................34
Figure 2. 7 : Plateforme e-learning comme web services. .......................................................35
Chapitre 3
Figure 3. 1 : Classes de l’ontologie DAML-S. ........................................................................43
Figure 3. 2 : Un modèle pour l’enregistrement et l’invocation de web services......................50
Chapitre 4
Figure 4. 1 : Ontologie de qualité d’apprentissage................................................................... 56
Figure 4. 2 : Ontologie de qualité d’apprentissage – «Informations pédagogiques». .............. 57
Figure 4. 3 : Ontologie de qualité d’apprentissage – le volet « Informations techniques ». .... 61
Figure 4. 4 : Ontologie de qualité d’apprentissage – le volet « Informations financières »..... 64
Figure 4. 5 : Ontologie des services. ........................................................................................ 65
Figure 4. 6 : Architecture de publication, découverte selon le profil utilisateur et invocation de
web services e-learning. ........................................................................................................... 67
Figure 4. 7 : Cas d’utilisation de tous les utilisateurs............................................................... 69
Figure 4. 8 : Cas d’utilisation du fournisseur de web service. ................................................. 69
Figure 4. 9 : Cas d’utilisation de l’administrateur.................................................................... 70
Figure 4. 10 : Cas d’utilisation de l’enseignant........................................................................ 71
Figure 4. 11 : Cas d’utilisation de l’apprenant. ........................................................................ 71
Figure 4. 12 : Architecture du module de publication.............................................................. 72
Figure 4. 13 : Diagramme de séquence du module de publication. ......................................... 73
Figure 4. 14 : Architecture du module de découverte. ............................................................. 75
Figure 4. 15 : Diagramme de séquence du module de publication. ......................................... 76
Figure 4. 16 : l’ontologie de profil d’utilisateur....................................................................... 80
Figure 4. 17 : Architecture du web service de gestion des profils utilisateurs......................... 83
Figure 4. 18 : Architecture du module d’invocation de web service. ...................................... 86
Figure 4. 19 : Diagramme de séquence du module d’invocation............................................. 87
Chapitre 5
Introduction générale
La progression rapide des technologies de l’information et de la communication a
donné naissance à une nouvelle forme d’apprentissage dite e-learning, un apprentissage rapide
et efficace, avec un minimum de problèmes d’organisation et de logistique. De nombreuses
solutions logicielles ont été proposées pour la réalisation des environnements e-learning telles
que les LMS (Learning Management Systems) et les LCMS (Learning Content Management
System). Cependant les acteurs (administrateurs, enseignants et apprenants) de ces systèmes
ont présenté des besoins de plus en plus accrus en terme d’adaptation, de parcours selon les
exigences et profils d’utilisateurs, de partage et de possibilité de réutilisation des contenus et
des fonctionnalités. Ce qui a incité l’expansion de ces systèmes vers des environnements
distribués en utilisant souvent les ontologies, le web sémantique et les web services pour
satisfaire les exigences des acteurs.
Le nombre de plateformes e-learning, qui sont basées sur les web services, est de plus
en plus croissant. Un web service peut être défini comme un programme autonome qui
s’exécute sur le web. Un web service est décrit par le langage WSDL. Cette description,
purement syntaxique, est enregistrée dans des registres UDDI afin de faciliter la recherche
(découverte) de web service.
Une plateforme e-learning peut être vu comme un ensemble de web services qui
coopèrent entre eux pour fournir certaines fonctionnalités aux acteurs de la plateforme. Ainsi
c’est possible d’utiliser / réutiliser des services externes qui appartiennent à d’autres
plateformes e-learning. Mais avant d’utiliser / réutiliser ces services, il est nécessaire de les
localiser. Cette localisation (découverte) est une opération importante qui doit être
automatique et efficace.
Le mécanisme de découverte doit dépasser certain nombre de limitations afin d’être
efficace, par exemple la découverte de services selon leurs fonctionnalités, leurs temps
d’exécution et leurs coûts. Ceci n’est pas possible avec les standards UDDI et WSDL, vu
qu’ils offrent une description syntaxique des services. Pour pallier à ces limitations, une
nouvelle génération de web services dite web services sémantiques a été proposée. Les web
services sémantiques sont des web services dotés d’une description sémantique, cette dernière
est réalisée grâce à plusieurs langages et formalismes, entre autre l’ontologie DAML-S, qui
offre, en plus de la description syntaxique, des informations sémantiques sur le
1
Introduction générale
fonctionnement de service. Ces informations peuvent être utilisées pour améliorer la qualité
de la découverte.
Les critères de choix d’un service d’une une plateforme e-learning dépendent,
généralement, du modèle pédagogique adopté et des contraintes ergonomiques et
technologiques. Toutefois, DAML-S n’offre pas la possibilité de décrire ces critères. Afin de
soutenir la description de ces critères, nous avons proposé dans ce travail une extension à
DAML-S qui consiste en une ontologie dite ontologie de qualité d’apprentissage (QA). La
pertinence des résultats de découverte dépend aussi des préférences des utilisateurs, de leurs
intérêts, leurs besoins et leurs niveaux d’expertise, etc. A cette fin, l’élaboration d’une
ontologie de profil d’utilisateur est notre deuxième réflexion pour augmenter le degré de
pertinence des résultats de découverte des web services e-learning.
Enfin, nous avons tenté d’exploiter les deux ontologies, ontologies des services et
ontologie de profil utilisateur dans un système pour la publication et découverte des web
services.
Organisation du document
Ce document s’articule autour de deux parties principales :
• La première partie, propose un état de l’art du e-learning et des web services. Dans
cette partie il est question tout d’abord d’introduire le domaine e-learning à travers
quelques formes d’outils e-learning et les modèles de ses acteurs (Chapitre1).
L’évolution de ce domaine et de ses besoins croissant en terme de distribution et de
sémantique nous amène à poursuivre ce chapitre par la présentation des web services
et leurs relations avec le e-learning (Chapitre 2). Nous aborderons par la suite les web
services sémantiques et quelques techniques et approches proposées pour la
découverte et l’invocation des web services (Chapitre 3).
2
Partie I
Etat de l’art
Afin de présenter le contexte de notre travail, cette première partie tente de faire un
récapitulatif sur le e-learning et les web services tout en abordant le thème de publication et
découverte de web services sémantiques.
Chapitres :
1. Le e-learning.
2. Les web services.
3. Découverte des web services.
Chapitre 1
Le e-learning
Sommaire
Chapitre 1
Le e-learning
L’apparition de l’informatique a permit l’avènement d’une nouvelle forme
d’enseignement dite ‘e-learning’, qui a devenu actuellement un des moyens pédagogiques
prometteurs. L’objectif principal du e-learning est d’améliorer la qualité de l’apprentissage et
non de se substituer aux modes traditionnels d’enseignement. Les moyens pour atteindre cet
objectif sont multiples, complémentaires et indépendants : accès à des ressources variées,
offres de services de tutorat à distance, outils de communication, résolution d’exercices,
échanges et collaboration à distance. Ces moyens sont exploités pour la mise en application de
nombreux outils à savoir les LMS (Learning Management System).
Ce chapitre fait un tour d’horizon rapide du principe du e-learning et plateforme e-
learning, leur technologie et leur acteur, suivi d’une présentation des principaux modèles
d’utilisateurs, sont également présentés des plateformes concrètes et une étude comparative
dans le but de donner les principaux critères de choix d’une plateforme e-learning, suivi d’une
présentation des solutions e-learning distribuées.
3
Chapitre 1 : Le e-learning
4
Chapitre 1 : Le e-learning
3. Email : c’est les courriers électroniques, ils assurent une communication bilatérale
déférée (consignes, gérer des groupes d’apprenants en envoyant des messages aux
classes, transmission de documents, aide…etc.).
4. La foire aux questions : équivalents ou assimilés : FAQ, Fichier des questions
courantes, Frequently Asked Questions, Questions courantes. Ensemble des
questions les plus fréquemment posées et qui sont regroupées avec leurs réponses,
postées et mises à jour dans la plupart des groupes de news. Avant de poser une
question, il faut toujours regarder si la réponse ne se trouverait pas dans les FAQ.
La foire aux questions a, en particulier, pour but de faciliter l'intégration des
utilisateurs novices dans un groupe de discussion et de diminuer le nombre des
messages diffusés dans le réseau.
5
Chapitre 1 : Le e-learning
La gestion des apprenants consiste à gérer les demandes de formation, la plupart des
plateformes enregistrent les inscriptions en ligne des apprenants, sur leur initiative ou par
affectation collective. Des listes d’attente sont créées et gérées par la plateforme si les cours
sont associés à des groupes à capacité limitée. Selon la complexité de l’organisation,
l’inscription à une classe peut être soumise à l’autorisation d’un tuteur ou responsable, qui
valide ou non la demande de formation de l’apprenant dont il a la supervision. [LCM, 03]
6
Chapitre 1 : Le e-learning
En réalité, les LMS et LCMS sont souvent retrouvés intégrés dans un même outil. Ceci dans
le but d’éviter les problèmes d’interopérabilité entre les deux outils, notamment en ce qui
concerne la diffusion de contenus sur les plateformes LMS. Une solution LCMS intégrée dans
une solution LMS lui fournit des contenus totalement utilisables.
4.1 Apprenant
Personne qui utilise une plateforme e-learning pour acquérir des connaissances, s’auto-
évaluer, soumettre des rapports, des projets, participer aux forums de discussion, échanger des
données. L’apprenant peut être un étudiant désirant suivre un certain cours, un employé
d’entreprise ayant besoin d’une formation dans un certain domaine, une personne désirant
perfectionner ses connaissances dans une branche quelconque,...etc. [EMN,]
7
Chapitre 1 : Le e-learning
4.2 Enseignant
Le e-learning nécessite plusieurs types d’enseignants, différenciés par leurs rôles. On peut
distinguer quatre types d’enseignants, [OUB, 05] , [EMN, ] :
• Auteur (concepteur) de cours : celui qui développe un cours en utilisant les outils de la
plateforme selon ses objectifs pédagogiques et qui apporte des changements en fonction
des réactions des apprenants ou des tuteurs.
• Orienteur : c’est l’enseignant qui a pour principales tâches, l’élaboration des cursus
des apprenants ou des groupes d’apprenants, l’élaboration des plans de formation, et
gestion du livret des apprenants.
• Tuteur : son rôle est de superviser le déroulement du cours, d’évaluer les apprenants,
de communiquer et d’interagir avec eux, d’animer le groupe ou la communauté
d’apprenants et d’assurer le suivi pédagogique de la formation.
Le tuteur joue un rôle moteur dans la formation. La qualité du suivi permet de garantir
la motivation de l'apprenant et d'éviter qu'il abandonne sa formation en cours de route.
• Evaluateur : son rôle est de créer les tests, de suivre les apprenants et de gérer les
tests d’évaluation.
4.3 Administrateur
On peut distinguer deux types d’administrateurs :
• Administrateur technique : gère la plateforme (installation et maintenance).
• Administrateur institutionnel : gère les inscriptions, gère les comptes, affecte les
droits d’accès pour les acteurs et gère les liens avec les systèmes d’information
externes (scolarité, catalogues, ressources pédagogiques ...etc.).
5 Modèles d’utilisateurs
On a vu qu’une plateforme e-learning peut avoir, selon les besoins, plusieurs rôles et
plusieurs profils d’utilisateurs. La plateforme doit les soutenir tous dans leurs fonctions et
leurs tâches, elle doit faciliter l’expression de leurs besoins et permettre l’obtention des
informations pertinentes lors de leurs accès aux informations.
En conséquence, les plateformes doivent s’adapter à chaque type d’utilisateurs et répondre à
leurs besoins précis. Dans ce contexte, nous allons présenter trois standards, les plus
importants, pour la modélisation de l’apprenant : PAPI, IMS LIP et IMS ePortfolio.
8
Chapitre 1 : Le e-learning
Learner Information
1
http://edutool.com/papi
2
LTSC: Learning Technology Standards Committee. IEE : Institute of Electronic & Electrical Engineering.
9
Chapitre 1 : Le e-learning
Ce standard ne décrit pas toutes les informations possible de l’apprenant, mais inclut
seulement les informations minimales nécessaires pour être au maximum portable tout en
permettant l’extension de ces informations.
A coté de PAPI Learner, il existe un autre standard de spécification nommé IMS LIP, que
nous présentons dans la section qui suit.
3
IMS (Instructional Management System), créé en 1997, est le consortium dominant aujourd'hui. Il regroupe des
industriels et des acteurs de la formation publique et privée. [JEA, 05]
4
http://www.imsglobal.org/profiles/lipbest01.html
5
http://www.imsproject.org/profiles/lipinfo01.html
10
Chapitre 1 : Le e-learning
• Identification: les informations de base pour identifier un apprenant tels que son nom,
son adresse, son email, etc.
• Goal: les données sur les objectifs et les ambitions personnels de l’apprenant.
• QCL: reflète les qualifications, les certifications et les diplômes attribués à
l’apprenant.
• Activity: regroupe les informations sur les activités liées au travail et à la formation
d’un apprenant.
• Interest: les données sur les hobbies et les loisirs de l’apprenant.
• Competency: les compétences, les connaissances et les capacités acquises par un
apprenant dans une formation ou dans un travail.
• Accessibility: les préférences de l’apprenant, en terme d’accessibilité aux
informations, tels que la langue, les préférences physiques (la police, par exemple) et
les préférences technologiques (système d’exploitation, par exemple).
• Transcript: permet la description des résultats d’examen de l’apprenant.
• Affiliation: les informations sur les organisations aux quelles l’apprenant adhère.
• SecurityKey: l’ensemble des mots de passe et de clés de sécurité assignés à
l’apprenant pour accéder aux services et informations du système d’apprentissage.
• Relationship: décrit les relations entre les différentes structures de données du modèle.
11
Chapitre 1 : Le e-learning
De même que PAPI, IMS LIP est limité. Il ne couvre pas toutes les informations nécessaires
sur l’apprenant pour l’échange d’informations. Ce qui a amené IMS à l’étendre et à donner
une nouvelle spécification qui est IMS ePortfolio.
6
http://www.imsglobal.org/ep/ePortfoliobrochureFR.pdf
7
http://www.imsglobal.org/ep/
8
http://www.imsglobal.org/ep/epv1p0/imsep_infov1p0.html
12
Chapitre 1 : Le e-learning
Les spécifications du ePortfolio d'IMS ont été créées pour rendre des ePortfolios
interopérables à travers différents systèmes et établissements.
5.4 Synthèse
PAPI et IMS LIP sont considérés parmi les premiers standards qui collectent des
informations sur les apprenants. Les informations modelées par PAPI sont générales et ne
répondent pas à tous les besoins d’une institution désirant échanger des informations sur ses
apprenants avec d’autres institutions. Le PAPI a été enrichi par IMS en inventant le IMS LIP.
Ce dernier apporte beaucoup d’amélioration par rapport à PAPI, plus précisément, l’élément
« Activity » qui permet de représenter les activités et travaux réalisés par l’apprenant et
l’élément QCL qui permet de spécifier les qualifications de l’apprenant (ou un utilisateur, de
façon générale). Par la suite, IMS étend son LIP pour donner le IMS ePortfolio, qui peut
spécifier plus d’informations sur les apprenants et donne plus de flexibilité d’échange
d’informations.
Les trois standards (PAPI, IMS LIP, ePortfolio) de modélisation des apprenants (ou
utilisateurs) modélisent l’apprenant du point de vue pédagogique (QCL, Activity,…). Ils
visent à améliorer l’interopérabilité entre systèmes d’apprentissage en permettant le transfert
des données d’un apprenant.
13
Chapitre 1 : Le e-learning
9
Pour plus d’informations sur les licences de logiciels voir «Licences Open Source» Annexe du projet
«Nouvelles Plateformes Technologiques Observatoire Technologique» réalisé par «Patrick Genoud, Giorgio
Pauletto ». 30 juin 2003. Centre des technologies de l’information République et canton de Genève.
14
Chapitre 1 : Le e-learning
10
La notion de parcours pédagogique permet de composer des séquences pédagogiques à partir de ressources ou
de fonctionnalités installées sur la plate forme. [ETU, 06]
15
Chapitre 1 : Le e-learning
Afin de mettre en évidence ces critères nous allons présenter par la suite une brève
comparaison entre quelques plateformes portant sur les points précédents.
16
Chapitre 1 : Le e-learning
Standards IMS-LD, SCORM, SCORM 1.2, IMS CP, SCORM, IMS, AICC
AICC, IMS CP IMS/QT2
Parcours Elaborer des parcours compatible avec Parcours personnalisés
17
Chapitre 1 : Le e-learning
SCORM 1.2
Teste QCM, questions Exercice compatible QCM, question de
vrai/faux, appariement, avec IMS/QTI correspondance, à
devoirs, etc. réponse courte,
calculée, ouvertes et
paragraphe,
tests chronométrés,
devoirs.
Sécurité HTTPS, RSS, alertes de SSL, authentification Sécurité physique et du
sécurité externe ou par le réseau, et 3 niveaux de
système SSO (Single sauvegarde de données,
Sign On) Shibboleth et SSL, VPN
LCS
Utilisateur et Utilisateur, groupe et Créer plusieurs groupes Gestion des individus et
groupe sous groupe d’utilisateur. de participants des groupes
Acteurs Administrateur Administrateur, Administrateur
Responsable de cours Assistant Assistant
Enseignant d’administration, d’administrateur
Tuteur Créateur de Enseignant
Etudiant cours/formateur, Assistant d’enseignant
Visiteur Tuteur Coordinateur
Apprenant Concepteur
Apprenant
Communication chat, forum, glossaire, Wiki, forum, chat. Pas forum, messagerie,
et collaboration Wiki, atelier, de visioConférence et chat, FAQ, courrier,
sondage, devoir. Pas de tableau blanc tableau blanc.
vidéoConférence. Téléconférence, classe
virtuelle.
Interopérabilité Exportation de cours sous Supporte les formats : Systèmes
archive Zip, importation WAI, SCORM 1.1 & d’informations,
CSV, contenus 1.2, LDAP, SSO, mécanismes
conforme aux SCORM Shibboleth, LCS, d’authentification,
1.2 / AICC, IMS-LD, IMS/QTI, CSS, HTML, systèmes de
incorporation de modules RSS bibliothèques et portails
créés avec des outils Possibilité d’intégration et
auteurs standard, dans ESUP. Environnements
connexion à un serveur Numériques de Travail
de messagerie, CSS, RSS. les plus couramment
utilisés.
18
Chapitre 1 : Le e-learning
6.3 Synthèse
Après cette étude comparative, nous constatons qu’il n y a pas de solution ou bien de
plateforme idéale mais plutôt une plateforme qui répond à nos exigences et nos besoins précis.
En effet, chacune des plateformes étudiées (Moodle, Claroline, WebCT) présente des points
forts et des points faibles, par exemple, Moodle donne la possibilité de créer des contenus
conforme à SCORM, IMS LD, AICC et IMS CP, de créer des exercices de différents types
(QCM, apparaiement, etc.) qui ne respecte pas une spécification donnée. Quant à Claroline,
elle intègre seulement SCORM et IMS CP pour les contenus, mais elle peut créer des
exercices conformes à IMS/QTI.
En conséquence, on peut dire que c’est à l’utilisateur de choisir parmi les nombreuses
plateformes disponibles sur le marché, celle qui correspond le mieux à sa situation
organisationnelle, pédagogique et technologique.
Le point commun entre les différentes plateformes est l’aspect centralisé. En
conséquence, il est difficile, voir impossible, d’utiliser des fonctionnalités d’une plateforme à
partir d’une autre plateforme. Pour cela, les plateformes ont évoluées vers des architectures
flexibles et distribuées, dans lesquels les fournisseurs offrent non seulement leurs ressources
mais une variété de services aux utilisateurs. Ces architectures font l’objet de la section
suivante.
La majorité des plateformes e-learning ont été des solutions intégrées (centralisées).
En effet, l’intérêt d’avoir un système de gestion et de suivi centralisé est de pouvoir
consolider en temps réel les résultats et les statistiques des différentes formations (temps de
présence, score moyen, temps passé,…etc.). Or les solutions non intégrées fournissent
souvent des fonctionnalités ou des outils supplémentaires plus performants que ceux des
solutions intégrées. Ces solutions visent à réaliser :
19
Chapitre 1 : Le e-learning
• Une multitude de relations entre les individus: many to many, one to one, many to one.
20
Chapitre 1 : Le e-learning
8 Conclusion
Il existe aujourd’hui de nombreux projets de recherche et de développement dans le
domaine du e-learning. Les plates-formes existantes se ressemblent par leurs fonctionnalités.
Cela est dû surtout au fait que les organismes de standardisation LOM, IMS, SCORM
concentrent leurs efforts sur la structuration et la réutilisation des documents pédagogiques (la
réutilisation des objets pédagogique). Par contre, les problèmes du contenu de ces objets et la
réutilisation des fonctionnalités des applications qui les animent ne sont pas bien traités.
Ce qui a impliqué l’apparition des outils e-learning basés sur les environnements distribués
qui visent à réaliser des systèmes complets supportant toutes les fonctionnalités assurant
l’interopérabilité entre les systèmes et la réutilisation de fonctionnalités, tel que l’architecture
KnowledgeTree, qui est basée sur des activités d'apprentissage intelligentes, réutilisables et
distribuées en même temps, et qui adresse le développement des composants et leur
réutilisation dans les systèmes éducatifs et la prise en charge personnalisée des apprenants.
21
Chapitre 2
Les web services
Sommaire
Chapitre 2
22
Chapitre 2 : Les web services
• Un web service est une application logicielle qui est reconnue par un URI : URI
est la façon d’identifier un point de contenu sur le web comme un document tel qu’un
texte, audio ou vidéo. L’URI le plus connue est l’adresse d’une page web, le web
service est donc accessible en spécifiant son URI, c’est-à-dire que le web service est
caractérisé par un seul objet et une seule fonctionnalité, c’est un prolongement de la
programmation orientée objet et à partir de cela, on peut faire la construction d’une
application logicielle très large comportant plusieurs fonctionnalités, afin de
sélectionner les fonctionnalités qui sont recherchées par les URI spécifiques.
• Capacité des interfaces et liaisons (bindings) d’être publiées, localisées et
invoquées via le langage XML : les principales tâches d’un web service sont : la
publication dans un registre, la localisation en interrogeant ce registre qui l’héberge et
l’invocation par un ou plusieurs web services après sa localisation. Ces tâches sont
réalisées en utilisant le langage XML.
• Capacité d’interagir avec les composantes des logiciels via des éléments XML
avec l’utilisation des protocoles Internet standards : un web service est créé pour
être interrogé par d’autres logiciels contrairement à une page web, ou à une autre
application qui n’utilise pas les web services. L’interopérabilité est basée sur
l’utilisation du XML et des protocoles Internet standards, tels que, le HTTP qui est le
protocole du web, le SMTP qui est le protocole du courrier électronique,…etc.
• Composante logicielle légèrement couplée à interaction dynamique : un web service
avec un programme qui l’invoque est appelé le consommateur de web service, et qui
sont indépendants l’un de l’autre. Si une modification est à faire sur le consommateur,
on n’a pas besoin de connaître la machine, le langage de programmation, le système
d’exploitation ou autres paramètres, afin d’établir à nouveau une communication entre
le web service et son consommateur. Le consommateur possède une fonctionnalité qui
consiste à faire une localisation et une invocation du web service, au moment de
l’exécution du programme de web service, de manière automatique.
23
Chapitre 2 : Les web services
les propriétés globales de l’architecture. [PAT, 04], [SOF, 07] L’architecture de référence
comporte les trois éléments suivants :
24
Chapitre 2 : Les web services
service renvoie sa réponse au demandeur sous la forme d’un document XML via SOAP et
HTTP.
Plusieurs standards ont été proposés pour assurer l’interaction entre les trois opérations
précédentes (publication, recherche et lien), entre autre nous citons les standards suivants :
• Le SOAP (Simple Object Access Protocol) est un protocole d’échange inter
application indépendant de toute plateforme, basé sur le langage XML. Un appel de
service SOAP est un flux ASCII encadré dans des balises XML et transporté dans le
protocole HTTP.
• Le WSDL (Web Services Description Language) introduit une grammaire commune
pour la description des services. Il donne la description au format XML des web
services en précisant les méthodes pouvant être invoquées, et le point d’accès (URL,
port, etc..).
• Le UDDI (Universal Description, Discovery and Integration) normalise une solution
d’annuaire distribué de web services, il fournit l’infrastructure de base pour la
publication et la découverte des web services. UDDI se comporte lui-même comme un
web service dont les méthodes sont appelées via le protocole SOAP.
4 Le protocole SOAP
Le protocole SOAP est l’un des produits du W3C, il assure des appels de procédures à
distance (RPC). Il assure l’interaction entre les web services en permettant le transport de
paquets de données sous format XML, ceci à l’aide du HTTP1, SMTP2 et POP3.
Il comporte trois composantes principales qui sont : un framework de messagerie, un standard
d’encodage et le mécanisme RPC. [HUB, 03]
1
HTTP : HyperText Transfer Protocol.
2
SMTP : Simple Mail Transfer Protocol (Protocole simple de transfert de courrier), est un protocole de
communication utilisé pour transférer le courrier électronique vers les serveurs de messagerie électronique.
3
POP : Post Office Protocol (le protocole du bureau de poste), est un protocole qui permet de récupérer les
courriers électroniques situés sur un serveur de messagerie électronique.
25
Chapitre 2 : Les web services
Message de Objet
requête distant
4
1
3
2
Client Serveur
SOAP SOAP
5
6
Message de
réponse
1. Le client SOAP crée un document XML qui contient les informations nécessaires pour
invoquer les services d’un objet distant. Ensuite ce document est inséré dans une
enveloppe SOAP avant d’être transmis sous forme d’une requête HTTP.
2. Le message est transmis via une connexion HTTP.
3. Le message est reçu et analysé par le serveur SOAP, ensuite envoyé à l’objet distant.
4. L’objet fait le traitement de la requête et envoie la réponse au serveur SOAP.
5. La réponse est envoyée, sous forme d’un document SOAP, au client via le HTTP.
6. Le client reçoit la réponse, ouvre l’enveloppe et envoie le résultat au demandeur initial.
26
Chapitre 2 : Les web services
Entrée de Header
L’entête (optionnel) utile dans le
cas où le message doit être traité
Entrée de Header par plusieurs intermédiaires
SOAP Body
5 Le langage WSDL
C’est un langage de description des web services en format XML, il repose
essentiellement sur les mécanismes de SOAP, HTTP et MIME4 pour l’invocation d’objets
distants. Les services réseaux sont décris par une grammaire XML comme des ensembles de
points finaux d’accès aux réseaux ou aux ports. WSDL est extensible afin de permettre la
description de points finaux et leurs messages indépendamment des formats de messages ou
protocoles réseaux utilisés réellement pour communiquer. [HUB, 03]
Un port peut être défini par l’association d’une adresse réseau et une liaison réutilisable, un
web service est un ensemble de ports. Une liaison réutilisable est le protocole concret et les
spécifications de format de données pour un type de port particulier.
4
MIME : Multipurpose Internet Mail Extensions, est un standard Internet qui étend le format de données des
courriels pour supporter des textes en différents codage de caractères autres que l'ASCII.
27
Chapitre 2 : Les web services
• types : fournissent les définitions des types de données utilisées pour décrire les
messages échangés.
• message : représente une définition abstraite de la donnée en cours de transmission.
Un message comporte des parties logiques, chacune étant associée avec une définition
dans un système de type.
• portType : est un ensemble d’opérations abstraites. Chaque opération se réfère à un
message d’entrée et à des messages de sortie. Les portTypes sont utilisés pour définir
les traitements offerts par un web service.
• binding : spécifie un protocole réel et les spécifications de format de données pour les
opérations et les messages définis par un type de port donné.
• port : spécifie une adresse pour une liaison définissant un simple point terminal de
communication.
• service : est utilisé pour agréger un ensemble de ports associés.
6 Le standard UDDI
L’annuaire UDDI permet aux utilisateurs de faire la publication la découverte et
l’invocation des applications (des web services). En effet, UDDI peut contenir des
informations sur les fournisseurs et les services qu’ils publient. L’inscription d’un fournisseur
de services à l’annuaire UDDI lui permet de se présenter et présenter ses services, l’adoption
de cet annuaire par les fournisseurs permet l’accélération des échanges surtout les échanges
commerciaux de type B2B L’enregistrement des web services dans un annuaire UDDI
s’effectue auprès d’un opérateur en accédant au site web de ce dernier à partir d’un navigateur
ou d’un outil intégré à un environnement de développement. Des recherches précises peuvent
28
Chapitre 2 : Les web services
Requête SOAP
Document WSDL
Rechercher la
définition WSDL
Requête SOAP
Recherche de Enregistrer le
service web service web
Enregistrement
Requête SOAP UDDI Requête SOAP
Un enregistrement UDDI est comparable au service DNS, il a deux types de clients : les
fournisseurs de services et les utilisateurs de ces services. UDDI comporte des pages qui
29
Chapitre 2 : Les web services
fournissent des informations sur les fournisseurs (nom, coordonnées,…etc.) et des pages qui
comportent la description, au format WSDL, des web services. Un fournisseur peut disposer
de plusieurs entrées dans l’annuaire pour l’ensemble de services qu’il propose, et des pages
qui disposent d’informations techniques détaillées sur les produits proposés.
UDDI est un modèle de données permettant de décrire un web service, la définition
d’une interface permettant de manipuler ce modèle de données et la mise à disposition de la
communauté de UDDI sous forme d’un service universel gratuit est nécessaire.
businessEntity publisherAssertion
<tModels>
serviceEntity
Descriptions of specifications
Descriptive information for services.
about a particular web
services
<bindingTemplate>
30
Chapitre 2 : Les web services
31
Chapitre 2 : Les web services
• Sécurité : cette interface est utilisée pour obtenir et révoquer les jetons
d’authentification nécessaires pour accéder aux enregistrements protégés dans un
annuaire UDDI.
• Contrôle d’accès et propriété : cette interface permet de transférer la propriété
d’informations (qui est à l’origine attribuée à l’utilisateur ayant publié ces
informations) et de gérer les droits d’accès associés.
• Abonnement : cette interface permet à un client de s’abonner à un ensemble
d’informations et d’être avertis lors des modifications de ces informations. Tous les
répertoires UDDI doivent gérer un avertissement par polling (le client interroge le
serveur pour savoir si des modifications ont eu lieu sur les données auxquelles il est
abonné). Une fonctionnalité optionnelle est également prévue permettant au client de
communiquer au serveur la définition d’un web service sur lequel il souhaite être
prévenu en cas de modification.
• Réplication interne (noeuds d’un même annuaire) : à côté des interfaces
utilisateurs que nous venons de voir, UDDI définit également l’interface permettant de
synchroniser les noeuds d’un même annuaire UDDI.
• Réplication externe (interrogation, publication, abonnement) : La réplication
externe par duplication d’informations entre différents annuaires UDDI n’a pas donné
lieu à la définition d’une interface spécifique mais se fait en utilisant les interfaces
d’interrogation (pour la lecture dans un annuaire), publication (pour la publication
dans un autre annuaire) et éventuellement abonnement (pour pouvoir propager les
modifications ultérieures).
32
Chapitre 2 : Les web services
33
Chapitre 2 : Les web services
En résumé : UDDI est un standard pour faciliter la collaboration entre partenaires dans
le cadre d’échanges commerciaux, le cœur d’UDDI est un annuaire qui contient des
informations techniques et administratives sur les fournisseurs et les web services qu’ils
publient. Donc l’annuaire UDDI permet de publier et découvrir des informations qui
concernent un fournisseur et ses web services.
34
Chapitre 2 : Les web services
Contenu d’Apprentissage
LO1 Meta
donnée
Etudiant / Client
LO2 Meta
donnée
Cours E-
Learning Meta
donnée
Présentation de Contenu 1
Présentation de Contenu 2
Suivi d’apprenant
UDDI
Création de Contenu
-----------
Web services
35
Chapitre 2 : Les web services
Les systèmes traditionnels importent les objets d’apprentissage (LOs) vers leur propre base de
données afin de les utiliser, mais avec ce système l’utilisation des LOs a, aussi, devenu
dynamique. Ceci permet au système d’éviter le problème de la non disponibilité des LOs. Un
annuaire de contenu central est employé afin de permettre aux auteurs de réduire la charge de
travail en offrant la possibilité de créer des cours en réutilisant le contenu des autres auteurs.
Avec ce système, on trouve deux types différent de web services, internes et externes. Les
web services externes sont fournis par d’autres fournisseurs et sont stockés sur les systèmes à
distance. Ils sont enregistrés dans un annuaire UDDI, qui fournit toutes les informations
nécessaires pour utiliser la fonctionnalité du service à distance dans la plateforme. Les web
services internes sont fournis par le système lui-même et peuvent être utilisés par
l’intermédiaire du serveur existant de la plateforme. Ils sont également enregistrés dans
l’annuaire UDDI pour être utilisés par d’autres systèmes, les fichiers WSDL correspondant
sont aussi engendrés.
Dans le système, les acteurs principaux sont les lecteurs et les auteurs ; les autres
incluent les entraîneurs et les administrateurs. Les auteurs (qui peuvent être des professeurs ou
des concepteurs) créent le contenu, qui est stocké sous la commande d’un système de gestion
d’apprentissage (LMS) et typiquement dans une base de données. Le contenu existant peut
être mis à jour et il peut également être échangé avec d’autres systèmes. Les lecteurs (ou
client) peuvent consulter ce contenu selon leurs profils et leurs besoins.
L’auteur peut choisir, en effectuent une recherche dans l’annuaire UDDI, un service pour la
création de contenu. Le système appelle le service trouvé, et l’auteur peut créer le contenu à
l’aide du module choisi. A la fin de la création, l’auteur doit enregistrer le nouveau LO à
l’annuaire de contenu central et le stocker sur un serveur. En fin de compte, l’auteur peut
choisir de créer un autre LO ou accomplir une tâche différente comme créer des cours à partir
des LOs existants. Ce processus peut être divisé en deux sous – processus, à savoir la création
d’un LO et la publication de ce LO, les deux actions peuvent être mises en application en tant
qu’un web service atomique.
Pour le lecteur, il a besoin juste d’un web browser pour utiliser le système et il ne connaît pas
quelle partie de la plateforme fait partie du serveur du système et quelle partie est juste un
web service inclus.
Chaque présentation de matériel est une recherche dans l’annuaire de contenu, un appel du
LO, et un appel du web service correspondant pour présenter le matériel au lecteur.
36
Chapitre 2 : Les web services
9 Conclusion
Les web services ont pour objectif l’interopérabilité entre applications via le web en
vue de rendre le web plus dynamique. Ils facilitent l’accès aux applications et les échanges de
données entre entreprises. Ils poursuivent un vieux rêve de l’informatique distribuée où les
applications pourraient s’interopérer à travers le réseau, indépendamment de leur plateforme
et de leur langage d’implémentation.
Un système e-learning peut être vu comme une collection d’activités ou de processus,
ses fonctionnalités peuvent être découpées en un certain nombre de fonctions autonomes qui
peuvent alors être réalisées séparément sous la forme d’applications autonomes ou de services,
ceci par l’utilisation de la technologie des web services.
La mise à disposition de ces services permet la réutilisation du contenu et des fonctionnalités
d’une une plateforme e-learning, elle permet de donner une nouvelle forme aux plateformes e-
learning, une forme décentralisée.
Les diverses solutions e-learning qui utilisent les web services utilisent les annuaires
UDDI, ces dernières n’offre pas des informations riches pour la recherche des web services.
D’où la nécessité de rajouter une couche sémantique à ces services. Le web sémantique et les
ontologies sont les outils utilisés pour cette tâche, cela fait l’objet du chapitre suivant.
37
Chapitre 3
Découverte des web services
Sommaire
1 Les ontologies................................................................................................................... 39
1.1 Définition ................................................................................................................ 39
1.2 Les composantes d’une ontologie ........................................................................... 39
1.3 Rôles des ontologies................................................................................................ 40
2 Le web sémantique........................................................................................................... 41
3 Les web services sémantiques.......................................................................................... 42
4 Approches pour les web services sémantiques................................................................. 42
4.1 DAML-S ................................................................................................................. 42
4.1.1 La classe "ServiceProfile" ................................................................................ 43
4.1.2 La classe "ServiceModel" ................................................................................ 46
4.1.3 La classe "ServiceGrounding".......................................................................... 47
4.1.4 Les ressources................................................................................................... 47
4.2 WSDL-S .................................................................................................................. 47
5 Quelques stratégies de découverte ................................................................................... 48
5.1 La stratégie UDDI ................................................................................................... 49
5.2 Découverte des services selon les qualités de services ........................................... 49
5.3 Un modèle pour indexer et découvrir les services e-learning ................................. 50
6 Synthèse des différentes stratégies ................................................................................... 52
7 Conclusion........................................................................................................................ 52
Chapitre 3 : Découverte des web services
Chapitre 3
A cette fin, nous présentons dans ce chapitre l’un des concepts clé de la sémantique qui
est l’ontologie suivie par le web sémantique, ensuite la notion des web services sémantiques,
et quelques stratégies de découverte avec une synthèse de ces stratégies.
38
Chapitre 3 : Découverte des web services
1 Les ontologies
1.1 Définition
Afin de décrire ce qu'est une ontologie, de nombreuses définitions ont été proposées.
Parmi les plus répondues, on citera :
Selon [GRU, 93] : "Une ontologie est une spécification explicite d'une conceptualisation".
Cette définition s'appuie sur deux dimensions :
• « conceptualisation » correspond au «modèle abstrait » d'une partie du monde réel,
sur lequel doit travailler le système considéré. Qui se présente comme un ensemble de
définitions de concepts munis de propriétés et de relations entre ces concepts.
• « spécification explicite » signifie que le modèle en question doit être décrit de façon
non ambiguë dans un langage. Ce langage peut être une langue naturelle (ex : français,
anglais) ou un langage formel (ex : logique du 1er ordre, réseau sémantique).
Selon [BOR, 97] : "une ontologie est définie comme étant une spécification formelle d’une
conceptualisation partagée”. On entend par :
• « explicite » : signifie que l’ensemble des concepts utilisés et leurs contraintes
d’utilisation sont définis d’une façon explicite ;
• « formel » : précise que l’ontologie construite doit être lisible par un ordinateur ;
• le terme « partagée » montre qu’une ontologie fournit un vocabulaire conceptuel
commun et une compréhension partagée par la communauté visée.
En informatique, une ontologie est un ensemble structuré de concepts. Les concepts sont
organisés dans un graphe dont les relations peuvent être :
• Des relations sémantiques ;
• Des relations de composition et d'héritage (au sens objet).
L’objectif d’une ontologie est d’avoir une compréhension entre les personnes et les logiciels
ce qui est très utile surtout pour des applications distribuées telles que le web.
39
Chapitre 3 : Découverte des web services
• Concepts: Ils sont également appelés termes ou classes de l'ontologie. Un concept est
un constituant de la pensée (un principe, une idée, une notion abstraite)
sémantiquement évaluable et communicable [BEN, 05]. Les concepts peuvent être
classifiés selon plusieurs dimensions: niveau d'abstraction (concret ou abstrait),
atomicité (élémentaire ou composé) et niveau de réalité (réel ou fictif).
• Relations: Elles servent à exprimer les associations existant entre les concepts
présents dans le segment analysé de la réalité. Elles regroupent les associations
suivantes : sous – classe – de (spécialisation, généralisation), partie – de (agrégation
ou composition); associé – à, instance – de, est – un, etc. Les relations permettent
d'apercevoir la structuration et l'interrelation des concepts, les uns par rapport aux
autres.
• Fonctions: Elles représentent des cas particuliers de relation où un élément (le nième)
est défini en fonction des n-1 éléments précédents.
• Axiomes: Constituent des assertions, admises comme vraies, à propos des abstractions
du domaine traduit par l'ontologie.
40
Chapitre 3 : Découverte des web services
2 Le web sémantique
Le web sémantique, proposé par le W3C, est une infrastructure visant à rendre le
contenu sémantique des ressources web interprétables non seulement par l'homme mais aussi
par les programmes dont le but est d’avoir une meilleure coopération entre humains et
machines. Cette infrastructure permet l’exploitation de connaissances formalisées en plus du
contenu informel actuel du web, elle permet de localiser, d’identifier et de transformer des
ressources de manière robuste tout en renforçant l’esprit d’ouverture du web avec sa diversité
d’utilisateurs. Le web sémantique n’est pas un web distinct mais bien un prolongement du
web que l’on connaît, dans lequel une signification clairement définie est attribuée à
l’information, ce qui permet une collaboration plus étroite entre machines et humains.
Le web sémantique vise à satisfaire les fonctionnalités avancées pour l’interaction utilisateur
– utilisateur, utilisateur – machine et machine – machine. Il permet le partage des ressources
et le raisonnement sur le contenu de ces dernières. Afin de rendre la recherche et la sélection
d’information facile aux programmes chargés de ces fonctionnalités, les documents sont
structurés à l’aide de méta données ou d’annotations ou d’ontologies. [BEN, 05], [ABE, 05],
[BOU, 04]
41
Chapitre 3 : Découverte des web services
4.1 DAML-S
Selon [DAL,] [DAV, 03], DAML-S est un langage de description sémantique de web
services, il est constitué d’une ontologie lui permettant de décrire les web services. Il permet
l’automatisation de nombreuses tâches à savoir : la découverte et la sélection d'un service qui
consistent à mettre en correspondance un demandeur de service avec un fournisseur qui
répond à ce service, l'invocation de ce service qui permet de réaliser l'appel effectif du service
découvert, l'inter opération et la composition de services qui autorisent la composition des
services simples afin d'obtenir un service complexe qui répond aux exigences d'un client et la
surveillance de l’évolution du processus qui sert à surveiller l'état d'accomplissement et de
déroulement du service.
DAML-S définit une ontologie particulière qui permet la description des propriétés des web
services et de les rendre disponibles au monde. Il comporte quatre éléments principaux qui
sont :
42
Chapitre 3 : Découverte des web services
Cette classe fournit des superclasses de chaque type de la description à niveau élevé du
service. Elle n’exige aucune représentation des services, mais elle exige l’information de base
pour lier n’importe quel instance de profil avec une instance de service.
Il y a une relation bidirectionnelle entre un service et un profil, de sorte qu'un service puisse
être lié à un profil et un profil à un service. Ces relations sont exprimées par les propriétés :
• presents : décrit une relation entre une instance de service et une instance de profil,
elle indique que le service est décrit par le profil.
• presentedBy: c’est l'inverse de présents; elle indique qu'un profil donné décrit un
service.
43
Chapitre 3 : Découverte des web services
• serviceName : se rapporte au nom du service qui est offert. Il peut être utilisé comme
identifiant du service.
• textDescription : fournit une courte description du service. Il récapitule ce que le
service offre, il décrit ce que le service exige pour fonctionner et il indique n'importe
quelle information additionnelle que le compilateur du profil veut partager avec les
récepteurs.
• contactInformation : indique une personne ou toute autre entité que le fournisseur du
service veut partager avec le lecteur. Chaque item d'information de contact est une
instance de la classe Actor décrit ci-dessous.
2. Actor : cette classe fournit des informations sur le fournisseur ou le demandeur de service ;
spécifiquement, elle fournit les informations suivantes :
• name : c’est le nom de l’acteur, il peut être le nom d’une personne ou d’une
compagnie.
• title : titre du contact, département de service ou autre information.
• phone : numéro de téléphone qui peut être utilisé pour recueillir l'information au
service.
• fax : qui peut être utilisé pour rassembler des informations au service.
• email : qui peut être utilisé pour recueillir l’information au service.
• physicalAddress : l’adresse physique.
• webURL : URL du site web de produit ou de compagnie.
3. Description de fonctionnalité: elle concerne les spécifications des fonctionnalités fournies
par le service et des conditions qui doivent être satisfaites pour avoir un bon résultat.
• input : elle indique une entrée du service. Elle prend comme valeur une instance de
ParameterDescription (voir ci-dessous) qui spécifie une identification de l'entrée, une
valeur et une référence à l'entrée correspondante dans le modèle de processus.
• output : elle spécifie une sortie du service. Elle prend comme valeur une instance de
ParameterDescription qui indique une identification de la sortie, une valeur et une
référence à la sortie correspondante dans le modèle de processus.
• precondition : désigne une condition préalable du service. Elle prend comme valeur
une instance de ParameterDescription qui indique une identification de la condition
préalable, une valeur et une référence à la condition préalable correspondante dans le
modèle de processus.
44
Chapitre 3 : Découverte des web services
• effect : spécifie un des effets du service. Il prend comme valeur une instance de
ParameterDescription qui spécifie un identifiant de l’effet, une valeur et une référence
de l’effet correspondant dans le modèle processus.
4. ParameterDescription : cette classe fournit des valeurs aux entrées et aux sorties. Elle
collecte en une classe le nom de l'entrée ou de la sortie qui peut être utilisée comme
identifiant, sa valeur et la référence à l'entrée ou à la sortie correspondante dans le modèle de
processus.
• parameterName : fournit le nom de l’entrée ou la sortie, qui peut être juste un littéral
ou l’URI du paramètre de processus.
• restrictedTo : fournit une restriction sur les valeurs de l’entrée ou de la sortie.
• refersTo : une référence à l’entrée ou à la sortie dans le modèle de processus.
5. Les attributs de profil :En plus de la description fonctionnelle des services, il y a d'autres
aspects des services tels que les garanties de qualité qui sont fournies par le service, la
classification possible du service et d’autres paramètres additionnels.
8. Catégorie de service: décrit des catégories de service selon une certaine classification.
• categoryName : c’est le nom de la catégorie actuelle, qui peut être littérale ou une
URI du paramètre de processus.
45
Chapitre 3 : Découverte des web services
• Un processus simple ne peut pas être directement invoqué par le client. Il peut être
utilisé pour fournir une vue d’un certain processus atomique (le processus simple est
realizedBy le processus atomique) ou une représentation simplifiée d’un certain
processus composé (processus simple l'expandsTo le processus composé).
<daml:Class rdf:ID="SimpleProcess">
<daml:subClassOf rdf:resource="#Process"/>
</daml:Class>
<rdf:Property rdf:ID="realizedBy">
<rdfs:domain rdf:resource="#SimpleProcess"/>
<rdfs:range rdf:resource="#AtomicProcess"/>
<daml:inverseOf rdf:resource="#realizes"/>
</rdf:Property>
<rdf:Property rdf:ID="expandsTo">
<rdfs:domain rdf:resource="#SimpleProcess"/>
<rdfs:range rdf:resource="#CompositeProcess"/>
<daml:inverseOf rdf:resource="#collapsesTo"/>
</rdf:Property>
46
Chapitre 3 : Découverte des web services
Le rôle central du Grounding de DAML-S est de montrer comment les entrées et les sorties
(abstraites) d'un processus atomique doivent être réalisées concrètement comme messages.
• La marque de ressource, telle que le carburant dans le réservoir de gaz d'une voiture
particulière.
4.2 WSDL-S
Le WSDL-S est le langage WSDL augmenté d’un ensemble de fonctionnalités
d’annotation sémantique pour les fichiers WSDL. Il définit un modèle sémantique pour
47
Chapitre 3 : Découverte des web services
capturer les termes et les concepts utilisés pour décrire et représenter la connaissance. La
sémantique est ajoutée en deux étapes : la première consiste à faire référence, dans la partie
définition WSDL, à une ontologie dédiée au service à publier ; la deuxième consiste à annoter
les opérations de la définition WSDL de sémantique. [KOP, 05], Quatre rôles du modèle
sémantique sont distingués :
• InputSemantics : le sens des paramètres d’entrées.
• OutputSemantics : le sens des paramètres de sortie.
• Precondition : un ensemble d’états sémantiques qui doivent être vrais afin d’invoquer
une opération avec succès.
• Effect : un ensemble d’états sémantiques qui doivent être vrais après qu’une opération
accomplisse son exécution.
WSDL-S utilise l’extensibilité de WSDL et fournit les cinq éléments et attributs suivants :
• ModelReference: un attribut pour lequel la valeur d’URI désigne un concept dans le
modèle sémantique des web services et spécifie qu’il y a une correspondance one-to-
one entre le propriétaire de l’attribut et le concept référencé. Ce concept peut être
utilisé par lui-même dans un élément d’un schéma XML ou une déclaration de type
pour faire un lien direct avec un concept d’ontologie. Il peut être, ainsi, utilisé en tant
que Precondition ou Effect.
• SchemaMapping : un attribut pour lequel l’URI indique une correspondance entre
les concepts d’ontologie.
• Precondition et effect: sont des éléments similairement structurés, ils sont utilisés
pour spécifier les pré et post conditions d’une opération donnée. les conditions sont
spécifiées par une référence au modèle sémantique (réutilisation de l’attribut
modelReference) ou par l’écriture de la condition comme valeur de l’attribut
expression des deux éléments.
• Category : un élément qui fournit un pointeur vers certaine catégorie de taxonomie. Il
peut être utilisé dans une interface de WSDL.
48
Chapitre 3 : Découverte des web services
Pour réaliser la découverte des web services plusieurs techniques ont été proposées.
Ces techniques diffèrent par le langage de description de service utilisé et l’algorithme de
découverte appliqué.
49
Chapitre 3 : Découverte des web services
50
Chapitre 3 : Découverte des web services
trois dimensions : en tant que ressources d’apprentissage, comme services qui contribuent
et aident les chercheurs et en tant que service général. Ils peuvent être employés par des
clients (des étudiants ou des enseignants) pour interroger et découvrir des services par
l'intermédiaire des pages jaunes comme UDDI ou Trader15. Il a utilisé les ontologies et la
représentation de connaissances pour classer et stocker les caractéristiques des services.
1. Ressource d’apprentissage : une ressource est décrite par : le Titre, le Créateur du
contenu de la ressource, le Sujet de la ressource (les mots clés ou les phrases qui décrivent le
sujet ou le contenu de la ressource), une Description textuelle du contenu de la ressource (y
compris le résumé dans le cas d’un article et d’objet et une description de contenu dans le
cas d’une ressource visuelle), Editeur de la ressource (la personne ou l’organisation
créateur additionnel), la Date, la Langue du contenu, le Format (text/html, JPEG image,.. )
et les Droits d’utilisations.
2. Ressource de recherche: leur investigation consiste à décrire les services qui contribuent
et aident les chercheurs à collaborer, travailler ensemble et pour échanger les informations
dans leurs activités de recherches. Elle comporte les éléments suivants :
• Le domaine de recherche: qui est identifié par l’Index (les mots clés qui décrivent
le domaine de recherche), les Références (ensemble de papier, document et URLs qui
sont utiles dans ce domaine de recherche), les Liens vers d’autres domaines et sujets
liés à ce domaine de recherche, et une Description textuelle du domaine de recherche.
• Un chercheur peut être décrit par: les informations personnelles (nom, email, TEL,
site web, CV), le Titre (ingénieur, professeur, ...), Domaine de recherche, domaine
d’enseignement, les publications, et le département auquel le chercheur est attaché.
• Un département peut être décrit par: le Nom (du département et l’université ou
l’organisation à laquelle est attaché), l’Adresse physique du département, Description,
domaine de recherche, liste des chercheurs attachés au département, les groupes
constituant le département, et le type du service (peut être une ressource
d’apprentissage, un programme, un document,...).
3. Service: le service au sens général peut être décrit par :
• Fournisseur et localisation: les informations du fournisseur (nom, adresse,..) et
localisation du service (adresse de la compagnie, URL,..) ;
15
Le trader est un service qui permet aux objets et aux services de se retrouver dans les systèmes distribués en se
basant sur leurs propriétés (caractéristiques ou index). C’est un annuaire de type pages jaunes qui permet à un
service ou objet d'être découvert via une description basée sur des propriétés (caractéristiques).
51
Chapitre 3 : Découverte des web services
7 Conclusion
Les web services sémantiques visent à faire une combinaison entre le web sémantique
et la technologie des web services afin de permettre une interaction automatique et dynamique
entre les systèmes. L’annuaire UDDI reste toujours l’entité qui serve d’appui à la découverte
de web service pour les applications clientes.
Avec l’avènement des web services sémantiques, de nouvelles approches de découverte dites
approches de découverte sémantique ont été proposées, ces dernières donnent de bons
résultats comparés aux anciennes approches (les approches syntaxiques).
A travers l’étude des différentes approches, [DAV, 03] [OUS, 05] [SHU, 03], proposées pour
réaliser la découverte et l’invocation des web services, nous avons remarqué que les web
52
Chapitre 3 : Découverte des web services
services renforcés par les descriptions sémantiques commencent à trouver leurs applications
dans de nombreux domaines entre autre le e-learning.
A cette fin nous proposons, dans ce qui suit, une approche pour la publication et la
découverte des web services pour le domaine du e-learning, plus particulièrement une
description des différents critères de choix de plateformes e-learning tout en essayant de
répondre aux besoins des différents acteurs.
53
Partie II
Conception et mise en
œuvre
Après avoir passé en revue les concepts relatifs au e-learning, aux web services et aux
ontologies et web sémantique, nous proposons, dans cette seconde partie, une approche pour
la publication et la découverte des web services e-learning basée sur des descriptions
sémantiques des web services en se basant sur l’ontologie DAML-S.
Chapitres :
4. Conception.
5. Mise en oeuvre.
Chapitre 4
La conception
Sommaire
Chapitre 4
La Conception
Dans ce monde grandissant et foisonnant des web services e-learning, la recherche d’un web
service devient une tâche délicate et difficile. En effet, c’est vraiment difficile pour un
utilisateur de chercher le service qui répond à ses besoins dans des dizaines de service, voir
même des centaines de services. A cette fin la définition d’un mécanisme de découverte
automatique a devenu une nécessité qu’on ne peut pas dépasser.
Dans ce chapitre, nous allons parler tout d’abord des insuffisances du DAML-S pour la
description des web services e-learning et de l’ontologie ajoutée à DAML-S, ensuite nous
allons présenter l’architecture du système proposé avec ses différents modules (publication,
découverte et invocation).
54
Chapitre 4 : Conception
Les consommateurs de services e-learning présentent des exigences sur les aspects
technologiques (tels que le soft exigé, niveau de sécurité, …etc.) et sur les aspects
pédagogiques (tels que les ressources, l’évaluation, la collaboration,…etc.) de ces services, ce
qui oblige les fournisseurs de services à publier leurs services tout en mentionnant leurs
caractéristiques technologiques et pédagogiques. Donc, la plupart des aspects des web
services e-learning, tels que la découverte, la sélection, la composition ou l’invocation sont
étroitement liés à ces deux éléments (les aspects technologiques et pédagogiques).
Cependant, DAML-S n’offre pas la possibilité de décrire un service en terme d’aspects
technologiques et pédagogiques. Donc on peut dire que l’ontologie DAML-S ne fournie pas
une description parfaite qui considère toutes les conditions d’utilisations des web services e-
learning.
Afin de prendre en considération les caractéristiques technologiques et pédagogiques des
services, en plus des descriptions fonctionnelles, une ontologie va être ajoutée à DAML-S, qui
va être nommée ‘ontologie de Qualité de l’Apprentissage’ (QA).
55
Chapitre 4 : Conception
Qualité
d’apprentissage
Informations
Informations
pédagogiques
financières
Informations
Est techniques
56
Chapitre 4 : Conception
Administration Informations
Formation
pédagogique pédagogiques
Collaboration
Type Réalise
Acteur
Ressource
Synchrone Asynchrone
Réalisé par
Conforme Tâche
avec
A pour
Est
Modalité
1. La classe « Collaboration »
Comme son nom l’indique ça concerne les différents outils pour la collaboration et la
communication entre les acteurs d’une plateforme (enseignant – enseignant, enseignant –
apprenant, apprenant – apprenant). Ces différents outils peuvent être classés en deux types :
• Outil synchrone : indique si le service utilise des outils d’interactivité en temps réel
tels que : les tableaux blanc, le chat, les vidéos conférence, les classes virtuelles, le
transfert de la voix par voie IP, …etc.
• Outil asynchrone : décrit les outils de communication asynchrone à savoir : le
transfert de fichier, le forum, email, …etc.
2. La classe « Ressource »
Englobe tous les aspects de gestion des ressources pédagogiques au niveau de la plateforme,
ces aspects sont :
57
Chapitre 4 : Conception
58
Chapitre 4 : Conception
4. La classe « Test »
Cette classe décrit tout ce qui concerne le suivi et l’évaluation des apprenants afin de les aider
dans les matières qui font objet de difficultés et de juger les résultats obtenus. Elle comporte
les attributs suivants :
• Trace : garde la trace des tests et des évaluations.
• Fiabilité des réponses : niveau de fiabilité des réponses des tests.
• Fiabilités des évaluations : niveau de fiabilité des évaluations.
Les tests peuvent être classés en plusieurs modalités, pour cela la classe « modalité » a été
définie.
5. La classe « Modalité »
C’est la modalité de présentation des tests en quelque sorte il s’agit les types de tests (QCM,
texte à trou,…) qui peuvent être effectués au niveau de la plateforme.
• Modalité : le nom du type de test.
• Temps : c’est la durée maximale du test.
• Disponibilité : la disponibilité du test.
• Evaluation : c’est la manière d’évaluation du test : évaluation automatique en ligne,
manuelle par les enseignants ou autoévaluation qui permet à l’individu de s’évaluer
individuellement, en utilisant des tests dont les résultats ne sont pas sauvegardés (des
tests non corrigés).
• Action : les actions effectuées avec le test tel que l’inscription du résultat de test dans
le carnet de note de l’apprenant et l’envoi d’un message contenant le test à
l’enseignant.
• Essais : indique est ce que le test autorise plusieurs essais ou non.
• Affichage des résultats : cet attribut précise est ce que l’affichage des résultats est
différé ou immédiat.
• Affichage des réponses : précise si les réponses correctes sont affichées ou non.
• Statistiques : les statistiques sur la progression de la classe.
6. La classe « Standard »
Décrit les standards respectés par les ressources. Un standard est décrit par :
• Nom : le nom du standard.
• Constructeur : celui (organisme, entreprise, consortium, etc.) qui a crée le standard.
• Version : la version du standard.
59
Chapitre 4 : Conception
7. La classe «Type_acteur »
Décrit les différents types d’acteurs gérés par la plateforme.
• Type d’acteur : le nom du type d’acteur.
• Groupe : possibilité de création et gestion de groupe pour ce type d’acteur.
• Description : une description du rôle de l’acteur.
8. La classe « Tâche »
Cette classe recouvre les fonctionnalités offertes pour le type de l’acteur, tel que la création et
l’affectation de test pour les enseignants.
• Tâche : le nom de la tâche.
9. La classe « Formation »
Elle décrit les informations sur les formations réalisées avec le web service, telles que : le titre
de la formation, son objectif, le public visé, date début et date fin, le coût….etc.
10. La classe « Administration pédagogique »
Recouvre toutes les fonctionnalités de gestion pédagogique de formation.
• Plan : la gestion des plans de formation. Un plan de formation est un ensemble de
modules pédagogiques ou de groupes de modules qu’est caractérisé par une
planification précise.
• Domaine : la gestion des domaines de la formation.
• Inscription : la gestion des inscriptions à une formation donnée.
• Niveaux : la gestion des niveaux d’apprentissage.
60
Chapitre 4 : Conception
Informations
techniques
Administration
Adaptation
technique
Langue
Aide
Sécurité Matériel
Caractéristiques
techniques Logiciel
Soft Soft
Serveur Client
Est
1. La classe « Adaptation »
L’adaptation est la possibilité de changement du système afin qu’il s’adapte aux exigences des
utilisateurs. Elle se définit par les attributs suivants :
• Façon d’adaptation : indique si la façon d’adaptation est automatique ou manuelle.
• Type d’adaptation : si elle se fait par rapport à l’individu ou par rapport à un groupe
d’individu.
2. La classe « Langue »
Elle indique est ce que le web service est multilingue, chaque instance de cette classe indique
une langue du service.
61
Chapitre 4 : Conception
3. La classe « Sécurité »
Concerne le niveau et le type de la sécurité proposée au sein du web service. Elle définit si le
service offre les mécanismes de sécurité suivants :
• Authentification : la vérification de l’identité d’une entité (personne, un
ordinateur,…) afin d’autoriser son accès à des ressources pédagogiques (web service,
un cours…).
• Confidentialité: la protection contre l’accès aux informations par des entités tierces
indésirables.
• Contrôle d’intégrité : la vérification que les données n’ont pas été modifiées par une
entité tierce.
• Contrôle d’accès : vérifie que toute entité n’accède qu’aux services et informations
pour lesquelles elle est autorisée.
• Non répudiation : c’est la protection contre la contestation d’envoi et de réception de
données lors d’une communication.
4. La classe « Caractéristiques techniques »
Cette classe décrit les informations technologiques du web service. Ces informations se
résument dans les propriétés suivantes :
• Date de mise à jour : la date de la dernière mise à jour de la plateforme.
• Version : la version de la plateforme.
• Débit : c’est le débit de communication, qu’est la largeur de bande passante exigée
pour utiliser les services de la plateforme.
• Performance: la vitesse d’exécution d’une requête (le temps de réponse).
• Disponibilité: la probabilité que le service peut répondre aux requêtes des utilisateurs.
• Capacité: nombre maximum d’utilisateurs (d’accès Internet simultané) que pourra
supporter la plateforme.
• Nb cours : nombre maximal de cours qui peuvent être gérés par la plateforme.
• Fiabilité : la fiabilité est une valeur probabiliste, on a deux types :
1. La fiabilité de l’institution d’éducation : elle indique est ce que
l’institution est connue par le respect des décisions.
2. La fiabilité du réseau : c’est le degré de fonctionnement du service en
présence d’entrées exceptionnelles pour une période donnée. C'est-à-dire à
quel point le réseau résiste aux désastres.
62
Chapitre 4 : Conception
5. La classe « Logiciel »
Décrit les outils soft (système d’exploitation, navigateur et autres logiciels) exigés pour faire
fonctionner la plateforme, dont les propriétés sont :
• Désignation : indique le nom du logiciel.
• Version : la version du logiciel.
• Description : une description textuelle qui peut contenir d’autres informations sur le
logiciel telle que le nom du fournisseur, la configuration du logiciel,…
6. La classe « Soft du client »
Les logiciels exigés au niveau des postes clients.
7. La classe « Soft du serveur »
Les logiciels exigés au niveau du poste serveur.
8. La classe « Matériel »
Cette classe décrit le matériel avec lequel la plateforme peut fonctionner. Elle a les attributs :
• Désignation : le nom du matériel.
• Capacité : la capacité du matériel.
• Description : un texte qui décrit le dispositif matériel.
9. La classe « Aide »
Les services offerts qui ont pour but l’explication de l'utilité et du mode d’emploi de chaque
fonctionnalité :
• Aide en ligne : possibilité d’offrir l’aide en ligne.
• Assistance TEL: la disponibilité de l’assistance téléphonique pour régler les
problèmes des utilisateurs de la plateforme.
• Technicien : disponibilité de techniciens qui se déplacent pour l’installation ou la
maintenance de la plateforme.
• Documentation : disponibilité de la documentation sur la plateforme.
10. La classe « Administration technique »
Englobe les fonctionnalités de gestion de la plateforme qui sont offertes pour un
administrateur technique. Cette classe a comme attribut :
• Compte : c’est la gestion des comptes utilisateurs et des comptes groupes – utilisateur.
• Droit : la gestion de l’affectation des droits d’accès aux différentes fonctionnalités de
la plateforme, la gestion des droits des cours en contrôlant l’accès en consultation et en
modification des différents cours, et la diffusion des cours selon les demandes des
utilisateurs.
63
Chapitre 4 : Conception
Informations
financières
Coût Administration
financière
Licence
Est
1. La classe « Coût »
Recouvre les coûts affectés au financement des formations, de façon direct ou indirect, dans
l’institution. Elle comporte deux attributs :
• Coûts d'investissement : coût non récurent, par exemple, équipement d’une salle de
formation.
• Coûts de fonctionnement : les coûts requis pour faire fonctionner le service tels que
les salaires des tuteurs afin de suivre les apprenants,…etc.
• Coût étudiant : le coût par étudiant.
• Coût cours : le coût par cours.
• Coût logiciel : coût des autres logiciels nécessaire pour le fonctionnement de la
plateforme (une estimation).
2. La classe « Licence »
Le type et coût de la licence de la plateforme.
• Licence : c’est le nom de la licence.
• Coût : le coût de la licence.
• Durée : la période pendant laquelle la licence est valide.
3. La classe « Administration financière »
Recouvre tout ce qui concerne les recettes et les dépenses de la formation.
• Contrat : la gestion des contrats.
• Payement : la gestion des payements.
64
Chapitre 4 : Conception
Service
Supporte
Presents Communique
A pour
ServiceProfile
Interopérabilité
QA
L’ontologie comporte l’ontologie de qualité d’apprentissage (QA), une partie de DAML-S (la
classe « Service » et la classe « ServiceProfil ») avec un autre élément que nous avons jugé
nécessaire dans la description des services, cet éléments est : l’interopérabilité du service avec
d’autres services.
Pour DAML-S, nous avons exploité seulement une partie de cette ontologie : la classe
« Service » que nous avons enrichi par d’autres propriétés et la classe « ServiceProfil », car
les autres classes (serviceGrounding et serviceModel) visent à définir les services comme un
ensemble de processus, rappelons que notre objectif est la description des caractéristiques et
des qualités de plateformes, à base de web services, afin de les publier et de les retrouver par
la suite et non pas de les modéliser sous forme de processus.
1.3.1 L’interopérabilité
L’interopérabilité est la capacité d’utiliser, dans une plateforme, des composants
d’enseignement développés dans une autre plateforme et la possibilité d’intégration avec des
outils externes tel que LDAP1. Cette classe décrit les services avec lesquels le service en
question peut communiquer. Elle comporte les deux propriétés suivantes :
1
Lightweight Directory Access Protocol.
65
Chapitre 4 : Conception
Après cette présentation de la description des web services e-learning à travers l’ontologie
des services, nous proposons maintenant d’exploiter cette ontologie dans un système de
publication, découverte et invocation des services. Ce système est présenté dans la partie
suivante.
2 Présentation du système
Ce projet est né de la constatation que de nombreuses plateformes e-learning à base de
web services ont été réalisées et les utilisateurs de ces plateformes avaient besoin d’aides,
principalement, pour chercher des web services qui répondent à leurs besoins.
Ces aides existent maintenant depuis de nombreuses années grâce à la généralisation des
UDDI, de WSDL, puis le web sémantique aujourd’hui.
L’étude des besoins des utilisateurs de plateforme e-learning, nous a amené à concevoir une
ontologie pour la description des web services du e-learning et à proposer un système pour la
publication, la découverte et l’invocation de ces services dont l’architecture et les différents
modules sont représentés ci après.
66
Chapitre 4 : Conception
Utilisateurs
67
Chapitre 4 : Conception
Nous allons détailler dans les parties qui suivent le rôle des différents modules du
système, nous proposons de modéliser leurs fonctionnements ainsi que les fonctionnalités qui
doivent être fournies à l’utilisateur grâce aux diagrammes UML.
Nous allons commencer par délimiter notre système et définir les fonctionnalités principales
dont il doit disposer ainsi que les différents types d’utilisateurs qui les effectuent.
Les utilisateurs représente le rôle humain dans notre système, leurs interactions avec le
système sont représentées sous forme de cas d’utilisation dans ce qui suit.
Les utilisateurs dans notre système peuvent être classés selon deux grandeurs : utilisateurs
web services (fournisseur et consommateur de web service) et principaux utilisateurs de
plateforme e-learning (administrateur, enseignant et apprenant). Puisque notre système a pour
tâches principales la publication et la découverte de web service, on a essayé de différencier
les rôles des utilisateurs selon la grandeur web services, ensuite selon la grandeur plateforme
e-learning. Cette différentiation est réalisée comme suit:
• Le fournisseur de service, qui peut être un administrateur ou un enseignant.
• Le consommateur de service, il peut être un administrateur, un enseignant ou un
apprenant.
Ce diagramme représente les cas d’utilisations d’un utilisateur quelconque, autrement dit, les
fonctionnalités que doit fournir le système à tous ses utilisateurs. Ces fonctionnalités sont :
• La recherche de web service : tous les utilisateurs peuvent interroger le système afin
de trouver des web services.
• La recherche de fournisseur : tous les utilisateurs peuvent chercher des fournisseurs.
68
Chapitre 4 : Conception
• L’invocation de web service : l’invocation des web service est faisable par n’importe
quel type d’utilisateur.
• La gestion du profil : chaque utilisateur peut gérer (création et modification) son profil.
Les fonctionnalités que doit fournir le système à l’administrateur sont décrites comme suit :
69
Chapitre 4 : Conception
70
Chapitre 4 : Conception
71
Chapitre 4 : Conception
Fournisseur
DAML-S +
QA
Informations
sur le service Création des descriptions du
service
UDDI
Informations
sur WSDL
72
Chapitre 4 : Conception
73
Chapitre 4 : Conception
• Extraire les informations techniques à partir du fichier WSDL afin d’inscrire le WSDL
en tant que tModels ;
• Ajouter une entrée tModels dans UDDI.
74
Chapitre 4 : Conception
Résultat de
découverte
D’autres opérations sont assurées par ce module telle que la recherche d’un fournisseur, la
recherche d’une formation et de référence. Puisque ces opérations sont assez classiques et ne
présentent pas d’intérêt particulier; elles ne seront donc pas détaillées ici. La recherche des
services est plus intéressante, elle doit être décrites avec précision puisqu’il s’agit de l’un des
thèmes principaux de ce mémoire.
75
Chapitre 4 : Conception
76
Chapitre 4 : Conception
77
Chapitre 4 : Conception
R : requête ;
C : ensemble des critères de recherche ;
A : ensemble des aspects de recherche ;
CL : ensemble des classes cibles de la recherche ;
S : ensemble des services trouvés ;
P : les poids affectés aux services trouvés ;
Entrée
R Requête de l’utilisateur;
A Aspects de recherche sélectionnés par l’utilisateur ;
Début
//********** Découpage de la requête
C découper (R) en un ensemble de mots ;
78
Chapitre 4 : Conception
79
Chapitre 4 : Conception
Est
Sécurité Est Est But
Info_
Souhaite personnelles
avoir A pour
Est caractérisé
par
Education A l’éducation
Effectue Activité
A les
qualifications A les
intérêts
Intérêts
Qualifications
A exercé
A les
préférences Est
Profession
Possède Mot clé
Est
Préférences
Dispositif
DCL
Est Est
Est Est
Contenant Contenu
Logiciel Matériel
1. La classe « Utilisateur »
C’est la classe centrale de l’ontologie.
80
Chapitre 4 : Conception
2. La classe « Info_personnelles »
Cette grandeur comporte les informations personnelles de l’utilisateur classées en trois sous
classes :
• La classe « Identité » : comme son nom l’indique, comprenne l’identité de
l’utilisateur (le nom, le prénom, mot de passe et l’identifiant).
• La classe « Contacts » : les informations permettant de contacter l’utilisateur
(l’adresse, l’email, numéro de téléphone et numéro de carte bancaire).
• La classe « Info_démog » : comprend d’autres informations concernant l’utilisateur
(la date de naissance, le genre, situation familiale, langue maternelle).
3. La classe « Sécurité »
Indique les aspects de sécurité (authentification, confidentialité, contrôle d’intégrité, contrôle
d’accès, non répudiation) souhaités par l’utilisateur.
4. La classe « Education »
Les informations concernant le niveau d’éducation atteint par l’utilisateur. Elle englobe les
attributs suivants :
• Domaine d’éducation : indique le domaine d’éducation de l’utilisateur
• Niveau d’éducation : indique le niveau atteint dans l’éducation (primaire, collège,
lycée, universitaire).
• Organisation d’éducation : le nom de l’organisation au sein de laquelle l’utilisateur a
suivi son éducation.
5. La classe « Compétences »
Les domaines maîtrisés par l’utilisateur.
• Domaine : le domaine dans lequel l’utilisateur a une expérience ou une certaine
compétences.
• Outils : définit les outils que l’utilisateur maîtrise.
6. La classe « Qualifications »
Les domaines où l’utilisateur est qualifié. Elle comporte une sous classe :
• La classe « DCL » : Diplômes, Certifications et les Licences obtenus par l’utilisateur.
Chaque qualification est définie par : le titre, le nom de l’organisation qui a attribué la
qualification à l’utilisateur, la date de l’obtention de la qualification et le niveau de la
qualification.
81
Chapitre 4 : Conception
7. La classe « Préférences »
Les données caractérisant les ressources cherchés ou manipulés par l’utilisateur selon ses
préférences.
Les préférences peuvent être vues comme une présélection virtuelle qui réduit la masse
d’informations à prendre en compte, ils peuvent être comparées à la notion de vue en base de
données.
• La classe «Contenant » : les données relatives à la forme des ressources que préfère
avoir l’utilisateur du point de vue format, volume maximal, date de création de la
ressource et la dernière date de mise à jour.
• La classe «Contenu » : les données relatives aux ressources que préfère avoir
l’utilisateur à savoir : le sujet, les droits d’utilisation de la ressource, la licence (libre,
payante), la langue, les régions où il souhaite que ses ressources soient disponibles.
8. La classe « Profession »
Elle comporte les informations qui caractérisent tous les postes occupés par l’utilisateur.
• Domaine : le domaine de profession exercé par l’utilisateur.
• Grade : indique le grade du poste occupé par l’utilisateur.
• Organisation : l’organisme au sein duquel l’utilisateur a exercé la profession.
• Expérience : l’expérience atteinte par l’utilisateur dans la profession (à noter que
l’unité de mesure diffère selon le domaine de la profession : heures, années,…).
• Période : la période durant laquelle la profession a été exercée.
9. La classe « Dispositif »
Décrit les dispositifs matériels et logiciels que possède l’utilisateur.
• Matériel : les informations relatives aux dispositifs d’entré / sortie ainsi que d’autres
équipements disponibles chez l’utilisateur. Chaque dispositif est caractérisé par sa
désignation, sa description ainsi que sa capacité.
• Logiciel : les données relatives au système d’exploitation, au navigateur et aux autres
logiciels manipulés par l’utilisateur. Chaque dispositif est caractérisé par sa
désignation, sa description et par sa version.
10. La classe « Intérêts »
Les centres d’intérêts de l’utilisateur que se soit dans le domaine de formation ou dans
d’autres domaines. Comporte le nom du domaine et une priorité attribuée à ce domaine.
11. La classe « Requêtes »
L’historique des requêtes déjà formulées par l’utilisateur.
82
Chapitre 4 : Conception
83
Chapitre 4 : Conception
Le web service de gestion de profil est conçu de manière à ce qu’il puisse être invoqué par
n’importe quel autre web service, et pour ce faire on a essayé de recenser les fonctionnalités
qu’il peut intégrer, ces fonctionnalités sont décrites dans des sous modules ou sous systèmes
comme suit :
• Sous module de modification du profil : c’est le sous module qui permet d’effectuer
des mises à jours ou modifications sur le profil. Ces mises à jour sont autorisées selon
des privilèges attribués par l’administrateur de la plateforme. Par exemple les
enseignants ou les apprenants peuvent effectuer des modifications sur leurs buts, leurs
préférences, leurs dispositifs…etc. Notons qu’il y a des informations qui ne peuvent
pas être modifiées telles que les informations sur le nom, prénom, genre, date de
naissance.
• Sous module de recherche dans le profil : c’est le module qui permet l’interrogation
de l’ontologie du profil. Cette interrogation peut se faire à travers une interface de
recherche offerte de façon adaptée aux différents utilisateurs : administrateur,
84
Chapitre 4 : Conception
enseignant ou apprenant ; chacun selon le type de requête qu’il peut effectuer sur le
profil.
Effectuer une recherche sur le profil peut avoir plusieurs utilisations. Ça peut avoir un
but statistique ou de vue globale pour l’administrateur sur n’importe quel point du
profil, par exemple l’administrateur peut effectuer une requête du type « sélectionner
tous les utilisateurs qui ont un but professionnel dans cette formation», ou alors
« sélectionner tous les utilisateurs qui appartiennent à une certaine tranche d’âge », etc.
Pour l’apprenant, il peut faire une recherche sur son profil seulement préalablement à
une modification.
85
Chapitre 4 : Conception
Résultat de Module de
découverte découverte
Récupération des
Choix d’un Chercher informations
(S) techniques pour
service (S) UDDI l’invocation
Consommateur
Etablissement de
la connexion
86
Chapitre 4 : Conception
Une fois que le demandeur a choisi un service, le système recherche le service dans l’annuaire
(serviceEntity) à partir de son nom. Si le service est trouvé, le programme d’invocation
recherche son tModel afin de récupérer les informations techniques sur les méthodes et les
interfaces du service. Dans le cas où ces dernières sont récupérées avec succès, l’interaction
en temps réel entre le demandeur et le service va être initialisée.
3 Conclusion
La découverte des web services e-learning nécessite une description sémantique ou
bien une description ontologique des services afin de pouvoir décrire leurs fonctionnalités,
leurs méthodes de fonctionnement, leurs qualités, …etc.
Le DAML-S peut décrire les services en terme de fonctionnalités et de méthodes de
fonctionnement, cependant d’autres exigences de description tels que les caractéristiques
87
Chapitre 4 : Conception
techniques et les fonctionnalités pédagogiques ne sont pas concevables avec DAML-S, ce qui
nous a amené à lui ajouter une extension nommée ontologie de qualité d’apprentissage.
La découverte nécessite, aussi, une connaissance préalable des préférences et des conditions
de connexion de l’utilisateur effectuant la recherche. Pour ceci l’élaboration d’une ontologie
de profil utilisateur a été le deuxième pas vers la construction d’un système de découverte
capable de délivrer des informations selon les préférences de l’utilisateur.
Dans ce chapitre, nous avons présenté la modélisation de notre système de publication et
découverte de web services. Nous nous proposons de concrétiser notre système, en réalisant
les différentes ontologies et les différentes fonctionnalités (publication, découverte et
invocation). Le chapitre 5 en fait l’objet.
88
Chapitre 5
Mise en œuvre
Sommaire
Chapitre 5
Mise en œuvre
Après avoir présenté le rôle des différents modules qui constituent notre système dans
la partie dédiée à la conception. Nous donnons, dans ce chapitre, une idée de l’environnement
de mise en œuvre du prototype, une architecture fonctionnelle du système et détaillons
l’implémentation de ses modules tout en mettant en évidence le rôle de chaque ontologie.
89
Chapitre 5 : Mise en œuvre
1
IDE : Integrated Development Environment, un environnement de développement intégré, est un programme
regroupant un éditeur de texte, un compilateur, des outils automatiques de fabrication et souvent un débogueur.
90
Chapitre 5 : Mise en œuvre
1.4.1 UDDI
L’annuaire UDDI utilisé est JUDDI (la version 0.9rc4), qu’est une implémentation
open source réalisée par la fondation apache. JUDDI propose le stockage des données sur un
grand nombre de bases de données relationnelles ou bien sur une base xml. Le serveur de base
de données qu’on a utilisé est MySQL dans sa version 5.0.26-win32. UDDI4J est l’API java
utilisée pour exploiter les données JUDDI.
2 Implémentation du système
Cette partie décrit les détails d’implémentation de notre prototype. Nous commençons
d’abord par la présentation de l’architecture fonctionnelle du système, l’implémentation des
différentes ontologies, et nous montrons ensuite comment ces ontologies sont exploitées par
les différents modules du prototype.
91
Choix du service à invoquer
Service
Système de Interface d’invocation (JSP) web LMS
Invocation
Réseau de communication
web services
Réseau de communication
JUDDI
Authentification du consommateur
Système de publication
Utilisateurs profil
Descriptions +
WSDL Ontologie des
Ontologie du
WSDL
web services Fournisseur
profil
utilisateur
JUDDI
93
Chapitre 5 : Mise en œuvre
L’ontologie est organisée, selon les principaux critères que nous avons jugés importants à
prendre en considération lors du choix d’une plateforme e-learning à base de web service,
comme suit :
• Les informations générales sur le service telles que le nom, l’URL,…
• Les informations sur le fournisseur du service, ainsi que les références du service ;
94
Chapitre 5 : Mise en œuvre
• Les informations pédagogiques, qui englobent les informations sur les fonctionnalités
pédagogiques telles que la possibilité de créer des cours, de créer des tests, ainsi que
les informations sur les ressources pédagogiques, dans le cas d’une plateforme
fonctionnelle, telles que les formations et les cours.
• Les informations techniques telles que la version du logiciel, la sécurité et les logiciels
exigés pour le fonctionnement de la plateforme ;
• Et les informations financières, à savoir les coûts, la licence….
95
Chapitre 5 : Mise en œuvre
A travers cette ontologie de profil utilisateur, nous avons essayé d’organiser tous les types
d’information qui peuvent influencer et améliorer la recherche de ressources pédagogiques de
façon générale, et la recherche de web services de façon spéciale. Ces informations sont
organisées dans des classes et des hiérarchies telles que indiquées dans la figure ci-dessus.
Cette ontologie est munie d’un web service pour qu’elle puisse être interrogée et manipulée à
distance par n’importe qu’elle autre web service ou programme d’une plate forme e-learning.
96
Chapitre 5 : Mise en œuvre
Au lancement de l’application, la page d’accueil s’affiche. Via cette page on peut accéder aux
différentes fonctionnalités du système. Ces fonctionnalités sont de trois types : publication
(groupe numéro 1 dans la figure ci – après), recherche (groupe numéro 2 dans la figure c –
après) et gestion de profil utilisateur (groupe numéro 2 dans la figure ci – après).
97
Chapitre 5 : Mise en œuvre
Publication de service
La publication d’un web service avec notre prototype nécessite tout d’abord
l’introduction des informations sur le service. Ces informations peuvent être introduites via
deux interfaces : une première interface pour les principales informations sur le services, et
une deuxième interface pour les informations détaillées sur le service.
Les principales informations sur le service sont : le nom (désignation) du service, URL,
WSDL, description, les types d’opérations sur les ressources pédagogiques (création,
importation, partage,…etc.), les informations techniques et ergonomiques (version, date de
mise à jours, sécurité, adaptation,…etc.), les informations sur les fonctionnalités
d’administration et de gestion (gestion des comptes, gestion des droits d’accès, niveaux…),
les informations sur le coût et la licence du service et le fournisseur du service.
On peut créer un nouveau fournisseur ou bien associer un fournisseur qui existe tel que
indiqué dans la figure ci-dessous :
98
Chapitre 5 : Mise en œuvre
99
Chapitre 5 : Mise en œuvre
100
Chapitre 5 : Mise en œuvre
Après avoir introduit les informations du service, on valide l’ajout par le bouton « Ajouter »,
une fois validé le programme procède à :
1. L’ajout du service au niveau de l’annuaire :
• Ajouter une entrée tModel pour sauvegarder le fichier WSDL,
• Ajouter une entrée serviceEntity afin d’ajouter le service dans l’annuaire,
• Ajouter une entrée bindingTemplate afin de relier le tModel ajoutée avec son
serviceEntity.
2. L’ajout du service au niveau de l’ontologie :
• Charger la base de connaissance par « Project.loadProjectFromFile » et
« getKnowledgeBase() »,
• Instancier la classe « Service »,
• Instancier la classe « ServiceProfil », attribuer le nom, la description et l’URL
du service aux Slot correspondants dans l’instance ajoutée.
• Relier l’instance ajoutée de la classe « Service » avec l’instance ajoutée de la
classe « ServiceProfil »,
• Dans le cas d’un nouveau fournisseur, le programme ajoute une instance de la
classe « Acteur », sinon il récupère le nom de l’instance du fournisseur choisi.
• Relier l’instance du « ServiceProfil » avec celle du fournisseur, c.a.d donner
une valeur au Slot « Information_contact ».
• Selon le reste des informations introduites par l’utilisateur, instancier les autres
classes de l’ontologie, par exemple, si un modèle de test est ajouté alors la
classe « Modèle » va être instanciée et reliée à l’instance du service.
101
Chapitre 5 : Mise en œuvre
102
Chapitre 5 : Mise en œuvre
L’utilisateur introduit les informations sur la formation et valide l’ajout par le bouton
« Ajouter », le programme procède alors à :
3. La création d’une instance de la classe « Formation » ;
4. Relier la classe ajoutée avec la classe du service choisi ;
5. Relier la classe ajoutée avec la classe de l’organisateur de la formation (la classe
« Acteur » dans l’ontologie);
6. Relier la classe ajoutée avec la classe de l’enseignant choisi.
103
Chapitre 5 : Mise en œuvre
104
Chapitre 5 : Mise en œuvre
105
Chapitre 5 : Mise en œuvre
Les services trouvés sont affichés avec une petite description. Pour voir la description
détaillée d’un service, il suffit de cliquer sur le lien « Détails » juxtaposé à la description du
service.
106
Chapitre 5 : Mise en œuvre
Le système offre trois modes d’accès : soit en tant qu’apprenant, ou en tant qu’enseignant
sinon en tant qu’administrateur. Ce dernier a le privilège d’effectuer des opérations de gestion,
à savoir la suppression d’un utilisateur, l’activation ou le blocage d’un utilisateur,…etc.
l’enseignant à le privilège par rapport à l’apprenant de consulter le profil de ses apprenants.
107
Chapitre 5 : Mise en œuvre
108
Chapitre 5 : Mise en œuvre
109
Chapitre 5 : Mise en œuvre
110
Chapitre 5 : Mise en œuvre
3 Conclusion
Dans ce chapitre, nous avons procédé à la réalisation de notre prototype, qui est un
système pour la publication et la découverte des web services e-learning. On a montré à
travers ce système l’intérêt de l’utilisation des ontologies pour la description des services et
leurs apports à la recherche de ces services, ainsi que l’intérêt de la prise en compte du profil
utilisateur pendant le processus de découverte. On a montré que l’annuaire UDDI et notre
ontologie se complètent pour décrire les services. En effet, notre ontologie préserve les
informations sur les fonctionnalités offertes et sur les caractéristiques nécessaires pour la
sélection d’un service, quant à l’annuaire, il préserve les informations WSDL nécessaires à
l’invocation du service.
111
Conclusion générale
Conclusion générale
112
Conclusion générale
du profil par tous les types de système e-learning, nous l’avons réalisé sous forme d’un web
service afin qu’il puisse être utilisé dans un système d’apprentissage complet.
Nous avons implémenté un algorithme de découverte, qui est basé sur une requête introduite
par l’utilisateur, un ensemble d’aspects de recherche ainsi spécifié par l’utilisateur et un
ensemble de préférences de l’utilisateur récupéré par le service de gestion de profil. Comme
résultats, l’algorithme donne un ensemble de services, qui sont présentés à l’utilisateur selon
leurs importances.
L’algorithme donne des résultats assez satisfaisants, et améliore nettement le degré de
pertinence en filtrant les résultats de découverte selon le profil utilisateur demandeur de
service.
Notre système représente un système prototype, il peut être donc modifié et étendu
afin de le rendre plus souple et capable de gérer des cas réels de publication et de découverte,
supportant ainsi l’invocation des web services.
Nous envisageons à étendre la solution pour supporter la composition des web services
e-learning en ajoutant plus de description si nécessaire, en implémentant le présent système
sous forme d’un web service et en implémentant un système de composition.
113
Bibliographie
Bibliographie
[ABE, 05] Marie-Hélène Abel
«Ontologies pour le Web Sémantique et le e-learning», La Journée
thématique « Web sémantique pour le e-learning », Du 30 mai à 03 juin
2005
[AGE, 08] Agence Wallonne des Télécommunications: le portail des Technologies
de l'Information et de la Communication (TIC), Mars 2008.
[ANN, 07] Anne Durand, Marie LEPROUST, Hélène VANDERSTICHEL
« Etude comparative de plateformes de formation à distance dans le cadre
du Projet @2L », octobre 2007
[BEN, 05] BENAYACHE Ahcene
« construction d’une mémoire organisationnelle de formation et
évaluation dans un contexte E-Learning : le projet MEMORAE », Thèse
de Doctorat, l’université de technologie de Compiegne, 2005
[BOR, 97] Borst W. N.
«Construction of Engineering Ontologies », In Center for Telematica and
Information Technology, University of Tweenty, Enschede, NL. 1997
[BOU, 04] BOUTEMEDJET Sabri
« Web Sémantique et e-learning », 2004
[BRO, 05] http://www.imsglobal.org/ep/ePortfoliobrochureFR.pdf
[BRU, 04] Peter Brusilovsky
« KnowledgeTree: A Distributed Architecture for Adaptive E-Learning»,
ACM 1-58113-912-8/04/0005, 2004.
[CER, 02] Ethan Cerami,
« Web Services Essentials », Livre, édition O'Reilly, février 2002.
[CHR, 05] Chris Preist
«A Conceptual Model and Technical Architecture for Semantic Web
Services», HP Laboratories, Bristol, UK. Article 2005.
[CLA, 08] http://www.claroline.net/
[COL, 01] Colin Smythe, Frank Tansey and Robby Robson
«IMS Learner Information Package Information Model Specification »,
Mars 2001
http://www.imsproject.org/profiles/lipinfo01.html
[DAL, ] Dallons Gautier
« DAML-S : interactions, critique et évaluation. », Institut d'informatique
des FUNDP, Namur, Belgique
[DAV, 03] David Martin
«DAML-S: Semantic Markup for Web Services », The DAML Services
Coalition, 2003-05-05
[EMN, ] Emna Ben Romdhane Hatem Skik
« E-learning : élément de réflexion autour d’une expérience en ”blended
learning” développée dans le milieu universitaire », ESC Tunis Assistant
– ESCE Tunis
[EPO, 05] http://www.imsglobal.org/ep/
[EPM, 05] http://www.imsglobal.org/ep/epv1p0/imsep_infov1p0.html
[ERI, 04] Eric van der Vlist
« LE TRIPTYQUE SOAP/WSDL/UDDI » Web Services Convention,
Juin 2004
[ETU, 06] « Etude comparative de plates-formes LMS », 2006
[GOM, 99] Gomez Pérez A., Benjamins V.R.
« Overview of Knowledge Sharing and Reuse Components: Ontologies
and problem-Solving Methods ». Proceeding og the IJCAI-99, workshop
on Ontologies and problem-Solving Methods (KRR5), Stockholm
(Suède), pp.1.1-1.15. 1999
[GOT, 03] Gottfried Vossen & Peter Weterkamp
« E-Learning as Web Services », Un article 2003.
[GRU, 93] Gruber T.
«A Translation Approach to Portable Ontology Specifications »,
Knowledge Acquisition, 5(2): pp. 199-220. 1993
[HUB, 03] Hubert Kadima & valérie Monfort
« Les web services », Livre, Edition DUNOD 2003
[IMS, 01] Colin Smythe, Frank Tansey and Robby Robson
« IMS Learner Information Package Best Practice & Implementation
Guide », Mars 2001
http://www.imsglobal.org/profiles/lipbest01.html.
[JEA, 05] Jean-Philippe PERNIN
« Panorama des normes et standards », LIUM - Université du Mans, LE
MANS. 2005
[JUL, 05] Julien Contamines
« Intégration des normes, standards, et spécifications dans les SABC »,
Télé-université du Québec, août 2005.
[LCM, 03] Ministère de la Jeunesse, de l’Education
« Etude des outils de gestion de ressources », conseil Business Interactif,
29/07/03
[MOO, 08] http://moodle.org/
[KAA, 03] Kaarthik Sivashanmugam, Kunal Verma, Amit Sheth, John Miller
«Adding Semantics to Web Services Standards », Large Scale Distributed
Information Systems (LSDIS) Lab Department of Computer Science,
University of Georgia Athens, GA 30602. Article 2003
[KOP, 05] Jacek Kopecký
«D30v0.1 Aligning WSMO and WSDL-S » , 05 / 08 / 2005
[KOU, 07] B. Kouninef, M. Djelti, S.M. Rerbal
« Conception et réalisation d’une plateforme e-learning avec migration au
m-learning », Article de l’Institut des télécommunications d’Oran.
[OUB, 05] Lahcen OUBAHSSI
« Conception de plates-formes logicielles pour la formation à distance,
présentant des propriétés d'adaptabilité à différentes catégories d'usagers
et d'interopérabilité avec d'autres environnements logiciels », Thèse de
doctorat, 2005, Université René Descartes – Paris V.
[OUS, 05] Oussama Kassem Zein, Yvon Kermarrec, Serge Garlatti, Jean-louis
Tetchueng, Sylvain Laubé
«A Metadata Model for Web Services Applied to Index and Discover E-
Learning Services», 2005
[PAP, 00] LTSC de l’IEEE
«Draft Standard for Learning Technology — Public and Private
Information (PAPI) for Learners (PAPI Learner) », 2000
http://edutool.com/papi
[PAT, 04 ] Patrick Kellert et Farouk Toumani
« Les Web services sémantiques », Article 2004
Laboratoire LIMOS - UMR (6158) du CNRS ISIMA - Campus des
Cezeaux - B.P. 125 63173 AUBIERE Cedex
[RAH, 05] Rahee Ghurbhurn
« Introduction aux Web Services », Master Web Intelligence, 2005
[RAN, 00] Sylvie Chabert-Ranwez
« Composition Automatique de Documents Hypermédia Adaptatifs
à partir d'Ontologies et de Requêtes Intentionnelles de l'Utilisateur »
Thèse de Doctorat de l’université de Montpellier II, 2000
[SAB, 05] Sabrina Menasri.
« Tableau comparatif de plateformes d’enseignement en ligne (e-learning)
utilisées dans un contexte universitaire », Septembre 2005
[SHU, 03] Shuping Ran
« A Model for Web Services Discovery With QoS » article 2003
CSIRO Mathematical and Information Sciences, Canberra, ACT 2601,
Australia
[SOF, 07] Web services
http://www.softeam.fr/technologies_web_services.php, 2007
[WAL, 04] Walid Kassem, Ahmad Mounajed, Nadia Saadoun
« Etat de l’art du E-Learning ». Projet du module : management et NTIC
2004
Annexes
Annexe A
L’ontologie des web services
: Slot de la classe
: Slot hérité d’une superclasse
1. La classe « Acteur »
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
Adresse_physique_acteur String 0:1
Fax_acteur String 0:1
Mail_acteur String 0:1
Nom_acteur String 1:1
Note_acteur String 0 :1
Orchestre Formation 0 :*
Titre_acteur String 0:1
Type {Fournisseur, client} 0 :1
Téléphone_acteur String 0:1
URL_acteur String 0:1
2. La classe « Catégorie_service»
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
Code String 0:1
Nom_catégorie String 1:1
Taxonomie String 0:1
3. La classe « Enseignant »
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
4. La classe « Estimation_qualité»
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
5. La classe « Interopérabilité »
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
6. La classe « Paramètre_service»
Superclasses : Profil_service
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
7. La classe « Profil_service »
Superclasses : aucune
Sous classes : aucune.
Rôle : concrète
Slot Name Type Cardinality
9. La classe « Information_financière »
Superclasses : Qualité_apprentissage
Sous classes : Coût, Licence, Administration_financière
Rôle : concrète
2. La classe « Activité »
Superclasses : aucune
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
type_activite String 0:1
3. La classe « Dispositif »
Superclasses : aucune
Sous classes : Logiciel, Materiel
Rôle : abstraite
Slot Name Type Cardinality
description String 0:1
designation String 0:1
4. La classe « Logiciel »
Superclasses : Dispositif
Sous classes : aucune
Rôle : concrète
Slot Name Type Cardinality
description String 0:1
designation String 0:1
version_log String 0:1
5. La classe « Materiel »
Superclasses : Dispositif
Sous classes : aucune
Rôle : concrète
6. La classe « Compétence »
Superclasses : aucune
Sous classes : Outil_Maitrise
Rôle : concrète
7. La classe « Outil_maitrise »
Superclasses : Compétence
Sous classes : aucune
Rôle : concrète
9. La classe « Qualification »
Superclasses : aucune
Sous classes : DCL
Rôle : concrète
Slot Name Type Cardinality
domaine_qualif String 0:1