1. Trang chủ
  2. » Ngoại Ngữ

Accès aux contenus du système iclass grâce à un adaptateur utilisant la SQI

75 247 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 1,06 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Finalement, il pr´esente des travaux ant´erieurs, il s’agit de l’interface SQI dont l’Adaptateur a besoin pour communiquer avec d’autres posants, et du langage de d´efinition des services

Trang 1

M´ emoire de fin d’´ etudes

Acc`es aux contenus du syst`eme iClass grˆ ace

Trang 2

De nos jours, la Technologie de l’Information et de la Communication prend partefficacement `a la formation Plusieurs syst`emes d’apprentissage sont d´evelopp´es afin

de fournir aux ´el`eves la possibilit´e d’acc´eder `a des cours facilement Cependant, enEurope, des statistiques montrent que l’on a besoin d’augmenter l’efficacit´e et l’effetd’apprentissage et d’enseignement C’est particuli`erement ´evident quand on analyseplusieurs indications de la performance de l’´ecole, le taux d’abandon par exemple

Le projet “Intelligent distributed Cognitive-based LeArning System for School”

(iClass), financ´e par la commission europ´eenne, vise `a d´evelopper un syst`eme prentissage avanc´e Il a pour but de r´esoudre le probl`eme pos´e et de pr´eparer unenvironnement pour les g´en´erations prochaines, o`u les comp´etences acquises doiventˆ

d’ap-etre mises `a jour en permanence pour r´eagir `a l’´evolution de la soci´et´e

L’Adaptateur est un composant du syst`eme iClass Il permet l’interop´erabilit´e entre

le syst`eme iClass et d’autres syst`emes d’apprentissage Ce m´emoire de fin d’´etudespr´esente le d´eveloppement de cet Adaptateur Il aborde des ´etudes pr´ealables concer-nant l’Adaptateur, des technologies utilis´ees, des propositions de la gestion num´eriquedes droits d’auteur, et la mise en application de l’Adaptateur

ii

Trang 3

Nowadays, the Communication and Information Technology takes part to the tion effectively Many systems of training are developed in order to provide to the pupilthe possibility of reaching courses easily However, in Europe, some statistics show thatone needs to increase the effectiveness and the effect of the training and teaching It isparticularly obvious when one analyzes several indications of the performance of theschool, the rate of abandonment for example.

forma-The “Intelligent distributed Cognitive-based LeArning System for School” (iClass)

project, financed by the European Commission, aims at developing an advanced ning system The purpose of the project is to solve the problem and to prepare anenvironment for the next generations, where acquired competences must be updatedpermanently reflecting the evolution of the society

lear-The Adapter is a component of the iClass system It allows the interoperabilitybetween the iClass system and another learning systems This thesis presents the de-velopment of the Adapter It shows preliminary studies concerning the Adapter, thetechnologies used, the proposals of the Digital Rights Management, and the imple-mentation of the Adapter

iii

Trang 4

Je tiens avant tout `a remercier David Massart, mon responsable de stage et “SeniorSoftware Architect” `a European Schoolnet Sans lui, mon stage n’existerait pas Sesconseils pertinents et son ouverture d’esprit m’ont permit d’achever ce travail.

Je tiens `a remercier Ulf W Lundin, le Directeur d’European Schoolnet, qui m’aaccord´e une bourse de stage, et m’a ´egalement encourag´e pendant mon s´ejour de 6mois `a European Schoolnet

Le travail est r´ealis´e dans le cadre du projet iClass, un projet des collaborations deplusieurs soci´et´es informatiques, p.ex., Siemens, Sun Microsystems, Microsoft, Intel,Infogate Je voudrais remercier mes coll`egues, particuli`erement Jean-Noel Colin, IgorBlyuss, Oven Colan, Ilhami Gorgun, Eric Meyvis, Ali Turkey Non seulement ils m’ontcollabor´e pour l’objectif du projet, mais ils m’ont apport´e ´egalement la chance deperfectionner mon anglais et mon fran¸cais

Je voudrais remercier mes amis `a European Schoolnet (Quentin Tr´em´erie, ChhuoyBun Chheang, Brigitte Parry, Mourad Etbaz, Sylvia Hartinger, Yong Chui Hsia, SophieVandeputte) Pendant mon stage, j’ai re¸cu leurs aides et leurs encouragements

Je voudrais ´egalement remercier mes parents, ma copine, mes soeurs, mon fr`ere quim’ont encourag´e quand j’´etais loin de la maison

Merci `a tout !

iv

Trang 5

SAC Service d’Acc`es aux Contenus

CGP Conducteur-G´en´erateur-Pr´esentateur

EUN European Schoolnet

IST Information Society Technologies

SQI Simple Query Interface

XML Extensible Mark-up Language

WSDL Web Services Definition Language

SOAP Simple Object Access Protocol

UDDI Universal Description, Discovery and IntegrationCORBA Common Object Request Broker ArchitectureODRL Open Digital Rights Language

SAML Security Assertion Markup Language

SCORM Sharable Courseware Object Reference ModelJAX-RPC Java API for XML-based Remote Procedure CallJAXB Java Architecture for XML Binding

JWSDP Java Web Services Developer Pack

UML Unified Modeling Language

API Application Programming Interface

LCMS Learning Content Management System

LMS Learning Management System

LO Learning Object

LOM Learning Object Model

v

Trang 6

R´ esum´ e ii

1.1 Introduction g´en´erale 1

1.2 Probl´ematique 2

1.3 Objectifs 2

1.4 Structure du rapport 3

2 Travaux concern´ es 4 2.1 Adaptateur dans le contexte de projet iClass 4

2.1.1 Introduction du projet iClass 4

2.1.2 Adaptateur dans le contexte de projet iClass 7

2.2 Travaux ant´erieurs 9

2.2.1 Interface SQI 9

2.2.2 Langage de d´efinition de services Web WSDL 11

2.2.3 Sp´ecification de SQI avec WSDL 17

2.3 Sommaire du chapitre 22

vi

Trang 7

3.1 Sc´enarios d’acc`es aux contenus 23

3.2 M´ecanisme de gestion num´erique des droits et d’authentification 26

3.2.1 Expression de l’accord 27

3.2.2 Protocole de n´egociation et v´erification des droits et d’authen-tification 28

3.3 Formats des donn´ees 31

3.3.1 Requˆete des m´etadonn´ees 31

3.3.2 Format des r´esultats 32

3.3.3 Requˆete de l’accord 34

3.4 Mise en application de l’Adaptateur 35

3.4.1 Environnement de d´eveloppement et de d´eploiement 35

3.4.2 Conception et impl´ementation de l’Adaptateur 36

3.4.3 Test 38

3.5 Sommaire du chapitre 38

4 Evaluation et Conclusion 39 4.1 R´esultats du travail et Evaluation 39

4.2 Conclusion 40

A Connaissances techniques de base 42 A.1 Java Architecture for XML Binding 42

A.2 Java API for XML-based RPC (JAX-RPC) 43

B Interfaces graphique de l’Adaptateur 44 B.1 Introduction 44

B.2 Interfaces de configuration 46

B.3 Interfaces d’administration 47

C Conception de l’Adaptateur 49 C.1 Introduction 49

Trang 8

C.2 Conception d´etaill´ee 50

D.1 Fonctionnalit´es de l’outil 55

D.2 Cas de test 56

Trang 9

2.1 Environnement de collaboration du syst`eme iClass 5

2.2 Architecture du syst`eme iClass 6

2.3 Diagramme des composants qui interagissent avec l’Adaptateur 8

2.4 Diagramme de classe de la “Simple Query Interface” 10

2.5 Sp´ecification graphique de l’exemple de WSDL 17

2.6 Sp´ecification de SQI avec WSDL 18

3.1 Diagramme d’activit´e pour obtenir un objet d’apprentissage 24

3.2 Recherche des m´etadonn´ees et r´esolution le location d’un objet d’ap-prentissage 25

3.3 Un exemple d’expression des droits 27

3.4 Exemple de jeton de s´ecurit´e SAML 29

3.5 Format de l’accord 30

3.6 Protocole de gestion num´erique des droits et d’authentification 30

B.1 Page de maison de l’Adaptateur 45

B.2 Configuration param`etres de SAC 46

B.3 Configuration des param`etres du Conducteur et du Service de S´ecurit´e 47 B.4 Interface d’administration de l’Adaptateur 48

C.1 Diagramme des paquetages 51

D.1 Cr´eation de session 56

ix

Trang 10

D.2 Recherche des m´etadonn´ees 57

D.3 R´esultats des m´etadonn´ees 58

D.4 R´ecup´eration de jeton de s´ecurit´e 59

D.5 Jeton de s´ecurit´e 60

Trang 11

2.1 Sp´ecification de SQI avec WSDL - Gestion de session 18

2.2 Sp´ecification de SQI avec WSDL - M´ethodes de la destination 20

3.1 Environnement de d´eveloppement et de d´eploiement de l’Adaptateur 36 3.2 Liste des fonctionnalit´es de l’Adaptateur 37

C.1 Liste des classes du paquetage “adapter” 52

C.2 Liste des classes du paquetage “sessionmanagement” 53

C.3 Liste des classes du paquetage “sqi” 53

C.4 Liste des classes du paquetage “timeoutmanagement” 53

C.5 Liste des classes du paquetage “tokenmanagement” 54

C.6 Liste des classes du paquetage “translation” 54

C.7 Liste des classes du paquetage “utils” 54

xi

Trang 12

1.1 Introduction g´ en´ erale

Dans le programme de la formation `a l’Institut de la Francophonie pour l’Informatique,l’´etudiant a l’occasion d’effectuer un stage de fin d’´etudes Il s’agit d’un stage dans

un environnement informatique francophone de type d´eveloppement ou recherche qui

a pour but de pr´eparer l’´etudiant `a la vie professionnelle, soit comme ing´enieur, soitcomme chercheur

Mon stage s’est d´eroul´e `a European Schoolnet (EUN)1, 61 rue de Tr`eves, 1040Bruxelles, Belgique C’est une organisation de plus de 26 minist`eres de l’´education

en Europe Son objectif est de d´evelopper des plates-formes d’apprentissage pour leslyc´ees, les enseignants et les apprenants en Europe Mon stage concerne `a un grandprojet dans le domaine e-learning dont l’European Schoolnet est un partenaire J’aiachev´e bien mon travail sous la direction du Dr David Massart2

J’´etais motiv´e par ce th`eme de stage car j’ai des exp´eriences et connaissancesdans le domaine e-learning comme j’ai fait des recherches sur les m´ethodologies et lesnormes employ´ees pour la formation `a distance lors de la r´ealisation de mon TIPE(Travail d’Int´erˆet Personnel Encadr´e) `a l’IFI En plus, je m’int´eresse vivement auxquestions d’interop´erabilit´e entre syst`emes d’apprentissage et `a la construction desnormes D’ailleurs, je voulais participer `a un projet international `a l’´etranger pourprofiter de l’environnement de travail et perfectionner mes comp´etences linguistiques

1Pour vous informer vite, visitez le site Web : http://www.europeanschoolnet.org

2Dr David Massart travaille en tant que “Senior Software Architect” `a l’EUN Son travail concerne

`

a l’architecture, l’interop´ erabilit´ e et aux standards pour les applications d’e-learning r´ eparties

1

Trang 13

a jour en permanence, en r´eagissant `a l’´evolution de la soci´et´e

Traditionnellement, l’utilisation de la TIC (Technologie de l’Information et de laCommunication) pour l’apprentissage se concentre sur l’approche “s’entraˆıner et pra-tiquer” (c.-`a-d., l’apprenant s’entraˆıne puis pratique sur un th`eme donn´e) On n’arrivepas `a int´egrer la TIC dans l’enseignement/apprentissage en prenant en compte le pro-

fil de chaque ´etudiant et sa capacit´e `a d´efinir enfin un mod`ele d’apprentissage qui luiconvient

Le projet “Intelligent distributed Cognitive-based LeArning System for School

(iClass)” , financ´e par la commission europ´eenne, a pour but de contribuer `a lar´ealisation d’un d´ecalage :“rendre la Technologie de l’Information et de la Communica-tion davantage qu’un outil simple” Le projet vise `a d´evelopper un syst`eme d’appren-tissage `a base d’ontologies pour s´equencer les connaissances et les adapter au niveau

de compr´ehension de l’´el`eve et au style d’apprentissage qui lui convient le mieux encr´eant dynamiquement des objets d’apprentissage

Un syst`eme iClass sert non seulement ses utilisateurs, il doit pouvoir interop´ereravec des syst`emes d’apprentissage existants, par exemple les syst`emes qui sont membres

de la f´ed´eration Celebrate [20, 17] ; permettre `a ces syst`emes d’acc´eder `a ses ressourcesd’apprentissage enrichissant par des riches m´edias Le composant “iClass Adapter”(dans notre contexte, nous l’appelons d´esormais Adaptateur) vise `a r´epondre `a ceprobl`eme

Trang 14

proposer un m´ecanisme de gestion num´erique des droits3 et d’authentification Enfin,tous ces aspects seront joints ensemble dans la mise en application de l’Adaptateur.

1.4 Structure du rapport

La suite du rapport est structur´ee comme suit : Chapitre 2 aborde l’introduction

du projet iClass, l’architecture de l’Adaptateur et les besoins concernant teur Il pr´esente ´egalement l’interface SQI et la technique de base utilis´es dans led´eveloppement de l’Adapter ; Chapitre 3, M´ethodes et Solutions, parle de solutionspour les sc´enarios d’acc`es aux contenus ainsi que la gestion num´erique des droits etl’authentification, et ´egalement de la mise en application de l’Adaptateur ; Finalement,Chapitre 4 donne l’´evaluation des r´esultats obtenus et la conclusion du rapport

l’Adapta-3Mots d’origine en anglais : Digital Rights Management

Trang 15

Travaux concern´ es

Ce chapitre introduit le projet iClass et son architecture Puis, il aborde l’Adaptateur,c’est l’objectif du stage, et autres composants qui interagissent avec l’Adaptateur dans

le contexte du projet iClass Finalement, il pr´esente des travaux ant´erieurs, il s’agit

de l’interface SQI dont l’Adaptateur a besoin pour communiquer avec d’autres posants, et du langage de d´efinition des services Web (WSDL) qui est utilis´e poursp´ecifier l’interface SQI dans la mise en application de l’Adaptateur

com-2.1 Adaptateur dans le contexte de projet iClass

iClass est un projet de 54 mois (depuis janvier 2004), 11 millions d’euros nant du programme IST (Information Society Technologies) de la commission eu-rop´eenne et 22 partenaires dans 11 pays (minist`eres, universit´es, ´editeurs de contenu

prove-et fournisseurs des technologies, p.ex., Microsoft, Sun Microsystems, Intel, Infogateetc.)(http://www.iclass.info) Le projet vise `a d´evelopper un syst`eme d’apprentis-sage `a base d’ontologies pour s´equencer les connaissances et les adapter au niveau decompr´ehension de l’´el`eve et au style d’apprentissage qui lui convient le mieux en cr´eantdynamiquement des objets d’apprentissage La Figure 2.1 illustre l’environnement decollaboration du syst`eme iClass, y compris les apprenants, les enseignants, les parentsdes apprenants, les minist`eres d’´education, les fournisseurs de contenu, etc et leurscollaborations orient´ees-apprenant

Le projet iClass prend en compte non seulement l’apprenant et l’enseignant,ce

4

Trang 16

Fig 2.1 – Environnement de collaboration du syst`eme iClass

sont les personnes qui font part directement dans un syst`eme d’apprentissage Il fournit

´

egalement des possibilit´es qui permettent aux parents, et aux minist`eres de l’´education

de suivre les ´el`eves et d’analyser les r´esultats de l’enseignement en temps r´eel (voyez

la Figure 2.1)

L’objectif du projet cherche d’une part `a formuler une nouvelle approche p´edagogiquequi exploite la capacit´e de la TIC de permettre une approche flexible et bas´ee sur ap-prenant, en prenant en compte les styles d’apprentissage, les comp´etences personnelles

et le comportement d’´etude de l’apprenant D’autre part, on va d´evelopper des outilsTIC permettant cette nouvelle approche de l’enseignement et la mettant en valeur

Ceci sera r´ealis´e en cr´eant :

– un syst`eme d’apprentissage avanc´e, fond´e sur une architecture `a base gies ;

d’ontolo-– un environnement distribu´e et de collaboration avec les participants principaux

du processus de la formation (p.ex., les parents, les professeurs, les apprenants,les minist`eres) ;

– une architecture ouverte et capable de garantir un degr´e ad´equat d’interop´erabilit´eavec les syst`emes et les outils d’apprentissage existants et de favoriser l’´evolutiondes normes existantes concernant des objets d’apprentissage

Trang 17

Fig 2.2 – Architecture du syst`eme iClass

Ce syst`eme doit prendre en compte la gestion de distribution de contenus et desdroits d’acc`es aux objets d’apprentissage adaptatifs Ceci permet de prot´eger les droitsd’auteur des fournisseurs des contenus Cette question est discut´ee en d´etail `a la sec-tion 3.2.2

Afin d’atteindre l’objectif du projet, une architecture distribu´ee et ouverte estexig´ee La Figure 2.2 pr´esente une telle architecture : l’architecture du syst`eme iClass.Elle se compose des ´el´ements suivants (illustr´es `a la Figure 2.2) Notons le grandnombre de composants, donc vous pouvez passer rapidement les descriptions quisuivent

– Architecture de r´eseaux C’est l’infrastructure TCP/IP et le protocole HTTP.– Service de base de donn´ees contenant les bases de donn´ees de profils des appre-nants, de donn´ees (r´esultats) interm´ediaires de d´emarche d’un apprenant durantses ´etudes (qui sert `a g´en´erer un chemin d’apprentissage qui lui convient le mieux)etc

– Service de messagerie (SOAP, XML-RPC) Il fournit une plate-forme de gerie pour ´echanger les messages de SOAP/HTTP

messa-– R´eseau pair-`a-pair des d´epˆots des objets d’apprentissage C’est un r´eseau

Trang 18

a-pair des noeuds (chaque noeud correspond `a un d´epˆot des objets sage), il a pour but d’´equilibrer la charge des demandes et ´egalement d’augmenter

d’apprentis-la capacit´e de stockage

– Service d’Acc`es aux Contenus C’est un service qui nous permet de g´erer(d’ajouter,

de mettre `a jour, de supprimer) les m´etadonn´ees des objets d’apprentissage et

de chercher des m´etadonn´ees

– Service de distribution des contenus Son rˆole consiste `a localiser et distribuerdes objets d’apprentissage

– Service de S´ecurit´e et de gestion num´erique des droits

– Composant de gestion de profil des utilisateurs

– S´electeur Grˆace aux r´esultats obtenus par un apprenant, ce composant nique avec le G´en´erateur de LO (Learning Object) pour cr´eer dynamiquementdes contenus adapt´es `a l’apprenant

commu-– Conducteur Ce composant contrˆole tous les acc`es au syst`eme iClass, y compris

le suivi des apprenants

– G´en´erateur de LO Ce composant coop`ere avec le service de distribution descontenus et le S´electeur pour g´en´erer de fa¸con dynamique des objets d’appren-tissage

– Service de Portail Un syst`eme Web qui fournit des interfaces pour les teurs, y compris un Pr´esentateur qui a pour but de consommer un objet d’ap-prentissage

utilisa-– Interfaces client Ce sont des interfaces graphiques sur les navigateurs des sateurs, sp´ecifi´ees pour chaque groupe d’utilisateurs

utili-– Autres syst`emes (syst`emes de 3`eme partie) ou syst`emes existants qui voudraientacc´eder aux contenus de riches m´edias du syst`eme iClass

– Adaptateur C’est le pont liant le syst`eme iClass aux autres syst`emes qui existentd´ej`a La conception de l’Adaptateur est le but de ce rapport

L’Adaptateur est un composant du syst`eme iClass [8] Il permet aux utilisateurs dessyst`emes existants1, comme les syst`emes de num´eriques de travail e et les syst`emes degestion de contenu d’apprentissage qui sont membres de la f´ed´eration Celebrate [20, 17],

de rechercher et d’utiliser les contenus du syst`eme iClass

1Dans le contexte de projet iClass, “syst`eme existant” se rapporte `a n’importe quel syst`eme

non-iClass qui existe d´ ej` a

Trang 19

Fig 2.3 – Diagramme des composants qui interagissent avec l’Adaptateur

Les composants du syst`eme iClass interagissant avec l’Adaptateur sont indiqu´essur la Figure 2.3 Pour ex´ecuter une recherche des m´etadonn´ees, le syst`eme existantcommunique avec l’Adaptateur via la “Simple Query Interface” (pr´esent´e dans la sec-tion 2.2.1) Pour mette en jeu un objet d’apprentissage `a distance, Il connecte auConducteur-G´en´erateur-Pr´esentateur Afin de servir des requˆetes du syst`eme existant,l’Adaptateur interagit avec deux ´el´ements du syst`eme iClass : le Service d’Acc`es auxContenus (SAC) et le Service de S´ecurit´e Le Conducteur-G´en´erateur-Pr´esentateurcommunique avec l’Adaptateur et le SAC en employant leurs interfaces respectivespour ´echanger des jetons de s´ecurit´e (sous-section 3.2.1)

Le SAC est le point d’entr´ee d’un r´eseau pair-`a-pair de d´epˆots d’objets tissage [2] Il propage chaque requˆete re¸cue de noeud `a noeud Chaque noeud traite larequˆete et renvoie les r´esultats au SAC qui va les exp´edier de fa¸con asynchrone `a lasource de la requˆete, l’Adaptateur

d’appren-Le Conducteur-G´en´erateur-Pr´esentateur repr´esente le Conducteur, le G´en´erateur

et le Pr´esentateur du syst`eme iClass Le Pr´esentateur est une interface Web dont lesobjets peuvent ˆetre consomm´es Le G´en´erateur est un service qui cr´ee dynamiquementdes objets d’apprentissage depuis des d´epˆots d’objets d’apprentissage pour un casd’´etude sp´ecifique Le Conducteur a pour but de contrˆoler tous les acc`es au syst`emeiClass Ces trois composants sont group´es pour simplifier notre mod`ele Ils r´esolvent

la demande de jouer un objet d’apprentissage du syst`eme existant

Le Service de S´ecurit´e et de gestion num´erique des droits est un service Web quiproduit des jetons de s´ecurit´e (utilis´es pour authentifier les syst`emes externes) pour lessyst`emes existants lors qu’ils acc`edent au syst`eme iClass Ce service fournit ´egalementdes accords d’utilisation des objets d’apprentissage

Trang 20

L’Adaptateur a pour but de fournir aux syst`emes d’apprentissage existants desacc`es au syst`eme iClass La mise en oeuvre de l’Adaptateur consiste en quatre modulessuivants :

– Gestion des connections (gestions des sessions de communication) avec les syst`emesexistants ;

– Gestion des jetons de s´ecurit´e ;

– Partie principale : recherche des m´etadonn´ees, adaptation des r´esultats et ment de l’objet d’apprentissage ;

lance-– Configuration et administration de l’Adaptateur

2.2 Travaux ant´ erieurs

Pour que les composants du syst`eme iClass et y compris l’Adaptateur soient terop´erables, une interface commune est n´ecessaire Parmi les interfaces d’interrogationexistantes 2, l’interface SQI (Simple Query Interface) est une bonne candidate grˆace

in-`

a sa simplicit´e et sa capacit´e `a fonctionner en mode asynchrone (partie 2.2.1) dont

le syst`eme ayant de r´eseau pair-`a-pair des d´epˆots comme iClass a besoin Cet sectionpr´esente l’interface SQI, un aper¸cu des services Web et le langage de sp´ecificationWSDL qui est utilis´e pour d´efinir SQI de fa¸con partageable Finalement, elle aborde

la sp´ecification de SQI avec WSDL Ce sont des ´el´ements importants dans la mise enoeuvre de l’Adaptateur

L’interface SQI (Simple Query Inteface)[16] est une interface de programmation (API)qui sert `a interroger les m´etadonn´ees des objets d’apprentissage contenus dans desd´epˆots des objets d’apprentissage h´et´erog`enes Ses caract´eristiques principales sont :

– simplicit´e et facilit´e d’impl´ementation

– neutralit´e en terme de langage d’interrogation et de format des r´esultats, et– capacit´e `a fonctionner en mode synchrone et asynchrone

Etant donn´e deux d´epˆots qui partagent au moins un langage d’interrogation et

un format des m´etadonn´ees commun, les phases suivantes sont n´ecessaires pour qu’un

2p.ex., la “IMS Digital Repository Interoperability (DRI) Specification” [4], la “Simple Query

Interface” [16], la “Zing Search/Retrieve Web Service” (SRW) [22], ou la “Open Knowledge Initiative (OKI) Open Service Definition Interface (OSID)” [13].

Trang 21

d´epˆot (nomm´e “source de la requˆete”) puisse interroger un autre d´epˆot (nomm´e tination de la requˆete”) en utilisant SQI :

“des-– la source s´electionne un langage d’interrogation support´e par la destination(p.ex.,XQUERY) Nous pouvons oublier cette phase si le langage d’interrogation estd´ej`a propos´e par la destination,

– la source s´electionne un format de r´esultat disponible du cot´e de la tion(p.ex., le ”IEEE Learning Object Metadata” Cette phase peut ˆetre ´egalementomise si le format est propos´e par la destination,

destina-– la source envoie une requˆete dans le langage s´electionn´e,

– en fonction du mode de requˆete s´electionn´e, la destination fourni des r´esultatsdans le format s´electionn´e soit comme valeur retourn´ee (mode synchrone), soitpar un appel `a un m´ethode (results listener) impl´ement´ee par la source (modeasynchrone) Ce dernier mode est plus robuste Il permet `a SQI d’ˆetre utilis´eecomme interface des recherches f´ed´er´ees sans qu’il ne soit pas n´ecessaire d’at-tendre les derniers r´esultats avant de retourner les premiers r´esultats

Fig 2.4 – Diagramme de classe de la “Simple Query Interface”

Le diagramme de classe 2.4 d´ecrit les m´ethodes de SQI Il y a treize m´ethodes group´ees en quatre cat´egories : gestion des sessions, gestion des param`etres de requˆete,requˆete en mode synchrone, requˆete en mode asynchrone

re-Actuellement, les m´ethodes de gestion des sessions ne font pas partie de la sp´ecification

de SQI et peuvent ˆetre remplac´ees par tout autre m´ecanisme de gestion des sessions quiserait consid´er´e plus appropri´e Les m´ethodes courantes permettent d’ouvrir une ses-

sion anonyme (createAnonymousSession) ou authentifi´ ee (createSession) et de clˆoturer

(destroySession ) une session avec un d´epˆot cible

Trang 22

Les m´ethodes de gestion des param`etres de requˆete nous permettent de configurerles param`etres de requˆete tels que le langage d’interrogation (setQueryLanguage), le

format des r´esultats (setResultsFormat ), le nombre maximum des r´esultats retourn´es

(des setMaxQueryResults ), et la dur´ee d’une requˆete (setMaxDuration ).

En mode synchrone, les r´esultats d’une requˆete sont retourn´es comme le r´esultat

d’un appel (synchronousQuery ) Des m´ethodes additionnelles permettent de choisir

le nombre des r´esultats retourn´es par un appel (setResultsSetSize), et savoir le nombre

des r´esultats d’une requˆete (getTotalResultsCount ).

En mode asynchrone, les r´esultats d’une requˆete sont envoy´es par la destination `a

la source de la requˆete en appelant une m´ethode impl´ement´ee par la source

(query-ResultsListener) Ceci implique que la source doit indiquer la location de la m´ethode

rapporter moyen d’une exception(SQIFault) qui conforte un code d’erreur pr´ed´efini3

et un message en texte libre

En pratique, l’interface SQI est impl´ement´ee dans tous les deux cˆot´es gation : la source et la destination La destination doit impl´ementer les m´ethodes degestion de session, les m´ethodes de gestion des param`etres, les m´ethodes du mode derequˆete synchrone, et la m´ethode asynchronousQuery La source d’interrogation doit

d’interro-impl´ementer la m´ethode queryResultsListener pour que la destination puisse retourner

des r´esultats si l’on applique le mode asynchrone

WSDL est l’acronyme de “Web Services Definition Language”, c’est un standard desp´ecification utilis´e pour d´ecrire les interfaces des services Web (Web Services) Cettesection pr´esente un aper¸cu des services Web ainsi que le WSDL Puis, elle parle de lasp´ecification de SQI en WSDL

3Les codes d’erreur font partie de la sp´ecification de SQI.

Trang 23

Aper¸ cu de services Web

Aujourd’hui, les entreprises comptent sur des milliers de diff´erentes applications delogiciel chacune avec leur propre rˆole en faisant des affaires Pour appeler juste quelquesunes, les applications de base de donn´ees stockent des informations de clients et desinventaires, les applications Web permettent `a des clients de passer en revue et acheterdes produits en ligne, et les applications suivant les ventes identifient des tendances

et prennent des d´ecisions `a l’avenir Ces applications fonctionnent normalement sur

de diff´erents plateformes et syst`emes d’exploitation, et ´egalement elles sont mises enapplication dans diff´erents langages de programmation En cons´equence, il est tr`esdifficile que les diff´erentes applications de communiquer entre eux et partagent leursressources d’une mani`ere coordonn´ee

Pour r´esoudre le probl`eme de communication d’application-`a-application Les treprises ont besoin d’une mani`ere normalis´ee pour les applications de communiquerentre eux via des r´eseaux, n’importe comment ces applications ont ´et´e d´evelopp´ees.Les services Web fournissent exactement cette solution en fournissant une m´ethodenormalis´ee de communication entre les applications de logiciel Elle permet les ap-plications d’exposer leurs ressources au monde ext´erieur de sorte que n’importe quelutilisateur puisse dessiner sur les ressources de l’application Les services Web adh`erentaux normes de communication suivantes :

en-1 un service Web d´ecrit publiquement sa propre fonctionnalit´e par un dossier deWSDL

2 un service Web communique avec d’autres applications par l’interm´ediaire desmessages de XML, normalement ce sont des messages de SOAP

3 un service Web emploie un protocole de r´eseau standard tel que le HTTP

Dans la partie suivante, on parle de WSDL, un ´el´ement important dans la mise

en application de l’Adaptateur, et de l’impl´ementation de SQI avec WSDL XML etSOAP sont omit car il existe ´enorm´ement de documents concernant ces standards

Trang 24

En clair, WSDL d´efinit, de mani`ere abstraite et ind´ependante du langage de grammation, l’ensemble des op´erations et des messages qui peuvent ˆetre transmis vers

pro-et depuis un service web donn´e Le WSDL d´ecrit quatre ensembles des donn´ees portants :

im-– information de type de donn´ee pour toutes les requˆetes de message et requˆetes

de r´eponse,

– information d’interface d´ecrivant toutes les fonctions disponibles publiquement,– information de liaison sur le protocole de transport utilis´e,

– information d’adresse pour localiser le service sp´ecifi´e

Une fois qu’un Web Services est d´evelopp´e, il faut publier sa description et faire unlien vers elle dans un catalogue UDDI (Universal Description, Discovery and Integra-tion), de sorte que les utilisateurs potentiels peuvent le trouver Quand un utilisateurssouhaite utiliser le service, il fait une demande de son fichier WSDL afin de connaˆıtreson emplacement, les appels de fonctions et comment y acc´eder A partir de cela, ilpeut composer, par exemple, une requˆete SOAP (Simple Object Access Protocol) versl’ordinateur du service Tout ce parcours peut ´evidemment ˆetre automatis´e `a l’aided’outils reconnaissant WSDL, et permet ainsi d’int´egrer de nouveaux services prati-quement sans devoir entrer de nouveau code [1]

WSDL est donc con¸cu pour ˆetre la pierre d’angle de l’´edifice Web Services, avec

un langage commun pour d´ecrire les services et une plateforme pour int´egrer tiquement ces services

automa-L’exemple suivant figure un service Web qui a pour but de connaˆıtre le nombred’´etudiants dans une promotion (`a l’IFI par exemple) Ce service a une m´ethode uniqueappel´ee getNombreEtudiant qui prend un param` etre de type “string” (nomClasse)

et retourne le nombre d’´etudiant dans la classe correspondant au param`etre Cettem´ethode est d´eploy´ee en utilisant le protocole SOAP 1.1 sur HTTP

Exemple de sp´ ecification de WSDL : S´emantiquement, l’interface de ce serviceest d´efinie tout simplement comme suivant :

interface

{

service EtudiantService

{

op´eration getNombreEtudiant(entr´ee nomClasse: string)

retour NombreEtudiant: integer;

Trang 25

}

En utilisant WSDL, nous avons donc quatre ensembles principaux pr´esent´es sous

forme de XML comme suivant :

– Type de donn´ees et de messages Ils sont sp´ecifi´es dans les ´el´ements “types et

Trang 26

Description compl` ete du service avec WSDL :

<?xml version="1.0" encoding="UTF-8"?> <definitions

Trang 27

<! Sp´ecification de la Porte sous SOAP 1.1 >

<binding name="EtudiantServiceBinding" type="tns:EtudiantServicePortType">

Trang 28

Ce document WSDL est repr´esent´e de mani`ere graphique sur la Figure 2.5 Il y a

quatre ´el´ements : Services identifient nom du service, son adresses et le regroupement

des interfaces ; Binding sp´ ecifie la liaison sur le protocole de transport ; PortTypes

ecrient les interfaces du service ; Messages contient les formats de messages utilis´es

par le service

Fig 2.5 – Sp´ecification graphique de l’exemple de WSDL

Th´eoriquement, l’interface SQI pourrait ˆetre impl´ement´ee dans n’importe quel langage

ou plate-forme, par exemple : JAVA-RMI, CORBA, Microsoft COM+, etc Cependant,

Trang 29

a l’aide de WSDL, on arrive `a sp´ecifier cette interface de mani`ere universelle, c’est `adire ind´ependante des plates-formes et des langages de programmation C’est pourquoiWSDL est choisi pour sp´ecifier l’interface SQI

Afin d’aborder une vue g´en´erale, cette partie pr´esente la sp´ecification de SQI avecWSDL sous forme graphique dans la Figure 2.6 La sp´ecification compl`ete est mise sur

le site http://sqi-wsdl.sourceforge.net/

Fig 2.6 – Sp´ecification de SQI avec WSDL

La Figure 2.6 montre trois ensembles de m´ethodes (dans l’´el´ement services) : – SqiSessionManagementPort contient des m´ethodes pour g´erer les sessions de tra-vail entre la source et la destination d’interrogation ;

– SqiTargetPort contient des m´ethodes de la destination d’interrogation ;

– et SqiSourcePort contient la m´ethode de r´ecolte des r´esultats

M´ ethodes de la gestion des sessions

Le rˆole de chaque m´ethode est introduit dans le tableaux 2.1

createSession Cr´eer une session authentifi´ee

createAnonymousSession Cr´eer une session anonyme

destroySession D´econnecter

Tab 2.1 – Sp´ecification de SQI avec WSDL - Gestion de session

Le sp´ecification des m´ethodes de la gestion des sessions avec WSDL est regroup´ee

Trang 30

dans l’interface SqiSessionManagementPort (en termes de WSDL) comme suivant :

M´ ethodes impl´ ement´ ees par la destination

Le rˆole de chaque m´ethode est introduit dans le tableaux 2.2

La sp´ecification des m´ethodes de la destination avec WSDL est dans l’interface

Trang 31

M´ ethode Description

setMaxDuration Limiter la dur´ee d’ex´ecution d’une requˆete

setMaxQueryResults Limiter le nombre maximal de r´esultats d’une

requˆetesetQueryLanguage Sp´ecifier le langage de requˆete

setResultsFormat Sp´ecifier le format des r´esultats

setResultSetSize Limiter le nombre de r´esultats par un appel

synchronousQuery Interroger en mode synchrone

getTotalResultsCount Retirer le nombre de r´esultats (utilis´e avec le mode

synchrone)setSourceLocation Sp´ecifier la location `a laquelle la source peur rece-

voir les r´esultats (utilis´e avec le mode asynchrone)asynchronousQuery Interroger en mode asynchrone

Tab 2.2 – Sp´ecification de SQI avec WSDL - M´ethodes de la destination

Trang 32

M´ ethode d´ edi´ ee ` a la source

En appliquant le m´ecanisme de requˆete asynchrone, la source d’interrogation doitimpl´ementer une m´ethode pour recevoir les r´esultat,c’est `a dire une m´ethode que la des-tination d’interrogation appelle lorsqu’il peut retourner des r´esultats Cette m´ethode

s’appelle queryResultsListener Sa sp´ecification est suivante :

Trang 33

L’Adaptateur est un composant du projet iClass, il vise `a permettre aux syst`emesexistants d’acc´eder aux contenus du syst`eme iClass La construction de l’Adaptateurest l’objectif de ce rapport.

L’interface SQI est une interface robuste, neutre avec le langage d’interrogation etfacile `a impl´ementer Elle peut fonctionner en deux modes (synchrone et asynchrone).C’est pourquoi SQI est choisie pour l’interop´erabilit´e entre le syst`eme iClass et lessyst`emes existants, et entre les composants du syst`eme iClass

Les Services Web et le langage de d´efinition des services Web (WSDL) sont des nologies ´emergentes aujourd’hui Ils sont ind´ependants de l’infrastructure de d´eploiement(p.ex., NET, Java, PHP, etc.) L’interface SQI est sp´ecifi´ee en utilisant WSDL pourprofiter des avantages de WSDL

Trang 34

tech-M´ ethodes et Solutions

L’Adaptateur vise `a permettre l’interop´erabilit´e entre les syst`emes d’apprentissageexistants et le syst`eme iClass Ce chapitre pr´esente cette adaptation Il met en oeuvredes sc´enarios d’acc`es aux contenus, des m´ecanismes de gestion num´erique des droits etd’authentification, et des formats des donn´ees utilis´es pour la communication iClass-Syst`eme existant

3.1 Sc´ enarios d’acc` es aux contenus

Un objet d’apprentissage repr´esente un morceau d´efinissable et r´eutilisable de contenu

et de processus num´erique Il est utilis´e dans la formation et l’instruction [14] lement, les objets d’apprentissage peuvent ˆetre n’importe quoi de num´eriques utilis´espour apprendre (p.ex., des textes, des illustrations, des vid´eos num´eriques, des mul-tim´edias interactifs, des essais, des le¸cons ou des cours etc.) La nature dynamique

Actuel-et multim´edia des objets d’apprentissage rend difficile pour les moteurs de recherchebas´es sur le texte, comme Google, de les localiser et ´egalement d’afficher les r´esultats

de recherche Le standard “IEEE Learning Object Metadata” [9] vise `a r´esoudre ceprobl`eme en d´ecrivant les objets d’apprentissage `a l’aide de m´etadonn´ees normalis´ees

L’interop´erabilit´e entre le syst`eme iClass et les syst`emes d’apprentissage existants

a pour but, pr´ecis´ement, de permettre aux syst`emes existants de chercher des objetsd’apprentissage en se basant sur leurs m´etadonn´ees, et de les consommer Les sc´enarios

de recherche et de consommation des objets d’apprentissage sont donc importants etdoivent ˆetre analys´es avec soin Cette section se concentre sur ces sc´enarios

Habituellement, l’obtention d’un objet d’apprentissage est un processus en trois

23

Trang 35

etapes : recherche et ´evaluation des m´etadonn´ees, r´esolution de l’emplacement de jet choisi, et consommation de l’objet Ce processus est d´epeint sur le diagrammed’activit´e dans la Figure 3.1

l’ob-Fig 3.1 – Diagramme d’activit´e pour obtenir un objet d’apprentissage

1 recherche et ´evaluation des m´etadonn´ees : Le choix d’un objet d’apprentissagequi satisfait aux besoins d’utilisateur sur la base de la description a fourni dansles m´etadonn´ees Il peut ˆetre n´ecessaire de r´ep´eter cette ´etape afin de raffiner lescrit`eres de recherche et trouver les objets appropri´es ;

2 r´esolution de l’emplacement d’objet d’apprentissage : Dans quelques tances, les m´etadonn´ees fournissent des r´ef´erences aux objets d’apprentissageplutˆot que leurs endroits Une ´etape additionnelle est n´ecessaire afin de r´esoudrel’endroit d’un objet sur la base de sa r´ef´erence1 Cette situation se produit,par exemple dans le projet iClass o`u la nature adaptative et de multim´ediades objets d’apprentissage est combin´ee avec la nature de pair-`a-pair du r´eseaufondamental des d´epˆots des objets, rend difficile d’acc´eder aux objets d’appren-tissage directement C’est pourquoi, dans le projet iClass, “l’´etape de r´esolution

circons-de l’emplacement” est employ´ee pour rechercher l’objet demand´e dans un r´eseau

de pair-`a-pair des d´epˆots des objets d’apprentissage (abord´e dans la Section 2.1) ;

3 consommation de l’objet d’apprentissage : Obtenant `a l’objet d’apprentissagechoisi `a l’endroit (normalement par son URL) obtenu pendant la deuxi`eme ´etape

Dans le cas du projet iClass, les m´etadonn´ees indiquent l’identificateur de l’objetd’apprentissage et non son emplacement Le deuxi`eme ´etape est ainsi n´ecessaire pourrendre et jouer un objet identifi´e dans les m´etadonn´ees Le diagramme de s´equencesur la Figure 3.2 d´ecrit l’ordre des appels n´ecessaires pour rechercher les m´etadonn´ees

et pour obtenir un objet d’´etude en utilisant l’interface de SQI impl´ement´ee dansl’Adaptateur de l’iClass Il couvre l’´etape de rechercher des m´etadonn´ees et celle dejouer un objet d’apprentissage Pour la simplicit´e, les appels de m´ethode exig´es pour

´

etablir une session entre le syst`eme existant et l’Adaptateur de l’iClass ont ´et´e omis

1Dans certains cas simples, quand l’emplacement d’un objet d’apprentissage est directement fourni

dans ses m´ etadonn´ ees, la deuxi` eme ´ etape n’est pas n´ ecessaire.

Trang 36

Fig 3.2 – Recherche des m´etadonn´ees et r´esolution le location d’un objet tissage.

d’appren-Recherche des m´ etadonn´ ees :

– Le syst`eme existant commence `a envoyer `a l’Adaptateur l’adresse de la m´ethode

de source SQI qui peut ˆetre employ´ee par l’Adaptateur pour renvoyer des r´esultats

de requˆete (setSourceLocation).

– Le syst`eme existant envoie une requˆete asynchrone `a l’adaptateur

(asynchro-nousQuery).

– L’adaptateur fait suivre la requˆete au Service d’Acc`es aux Contenus (SAC)

(asyn-chronousQuery).

– Le Service d’Acc`es aux Contenus traite la requˆete et renvoie les r´esultats (c.-`a-d.,

un ensemble des m´etadonn´ees) `a l’Adaptateur (queryResultsListener).

– A son tour, l’Adaptateur adapte les r´esultats retourn´es pour ajouter l’adresse duConducteur-G´en´erateur-Pr´esentateur (o`u un objet d’apprentissage sera invoqu´e)dans chaque r´esultat Puis il envoie les r´esultats adapt´es en appelant la m´ethode

(queryResultsListener) impl´ement´ee par le syst`eme existant

Mise en jeu d’un objet d’apprentissage : A cet ´etat, Un syst`eme existant peutmettre en jeu un objet d’apprentissage en se basant sur l’information trouv´ee dans

le r´esultat de la requˆete (les m´etadonn´ees contiennent l’identificateur de l’objet prentissage)

Trang 37

d’ap-– Le syst`eme existant ouvre une “fenˆetre de jeu” qui va lancer la page de d´ebut

(startInvokeiLO) du conducteur-g´en´erateur-pr´esentateur (CGP) et envoie

l’iden-tificateur de l’objet d’apprentissage choisi `a cette page

– Ensuite, le Conducteur retire l’identificateur envoy´e par le syst`eme existant,

pro-duit d’une requˆete d’accord (discut´ee dans la section 3.2) et l’envoie `a

l’adap-tateur pour rechercher l’accord qui indique les droits du syst`eme existant vis-`a-vis

d’un objet d’apprentissage (l’accord sera employ´e dans l’´etape prochaine)(getAgreement).

– Le Conducteur v´erifie le jeton de s´ecurit´e et les droits d’utilisation dans l’accord

(authenticateAndCheckRights).

– Si le syst`eme existant passe `a l’´etape de v´erification, le Conducteur appelle la

ethode de getiLO depuis le Service d’Acc`es aux Contenus pour rendre l’objet

d’apprentissage et pour le pr´esenter sur le navigateur de web

3.2 M´ ecanisme de gestion num´ erique des droits et

d’authentification

Fournir l’acc`es g´en´eral aus contenus, par exemple aux programmes, documents, donn´ees,

est certainement l’un des r´esultats principaux du Web Cependant, l’acc`es `a ces

conte-nus n’est g´en´eralement pas libre (dans le sens non-libre), non seulement du coˆut, mais

´

egalement d’autres conditions et contraints d’utilisation Ces contraints et conditions

peuvent atteindre diff´erents objectifs[18] :

– prot´eger le propri´etaire de l’objet : le fournisseur de l’objet peut vouloir demander

le paiement avant n’importe quelle utilisation de l’objet, ou assurer que l’objet

sera non seulement employ´e dans un contexte non-commercial ;

– prot´eger l’utilisateur de l’objet : les droits devraient fournir une mani`ere d’empˆechementdes utilisations interdites ;

– prot´eger l’objet : on peut vouloir limiter le temps de validit´e de l’objet, le rendre

accessible seulement pendant une p´eriode indiqu´ee, ou permettre son utilisation

mais non sa copie ;

– suivre l’utilisation de l’objet pour le but de reportage ou de paiement

N’est pas hors de ce contexte, le syst`eme iClass a besoin d’un m´ecanisme de gestion

num´erique des droits qui peut couvrir ces contraints, d’une part, pour prot´eger les

objets du syst`eme iClass et pour suivre l’utilisation de ces objets, d’autre part, pour

prot´eger les utilisateurs du syst`eme existant, empˆecher leurs acc`es aux contenus dont

ils n’ont pas assez de droits En plus, puisque le syst`eme iClass a plusieurs composants

Ngày đăng: 27/10/2016, 23:13

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w