ELearning ServicesWeb e IT
ELearning ServicesWeb e IT
ELearning ServicesWeb e IT
net/publication/323334763
CITATIONS READS
6 3,485
1 author:
Ivan Madjarov
Aix-Marseille Université
26 PUBLICATIONS 75 CITATIONS
SEE PROFILE
All content following this page was uploaded by Ivan Madjarov on 20 March 2018.
Ivan Madjarov
1. Introduction
A l'heure actuelle les concepts et les technologies e-Learning (e-Formation) ne sont
pas figés. On ne trouvera donc nulle part de définition unifiée caractérisant ni le
concept, ni l’architecture standard. Les auteurs tels que [Abel et al., 2003] rappellent
que le e-Learning peut désigner des notions aussi variées que la gestion administrative
d’une formation sur Internet, la diffusion d’un cours basée sur le Web ou la mise à
disposition d’outils de conférences virtuelles. Dans la pratique, le terme e-Learning
désigne souvent de nouveaux services techniques : on l’associe aux cours numériques, à
l’enseignement par Internet, ou encore à l’apprentissage en ligne. Nous le voyons plus
globalement comme une évolution des systèmes d'information et des dispositifs
d’enseignement. Ainsi, à notre avis la théorie et la pratique des systèmes d’information
sont fortement impliquées dans le processus de conception technologique des plates-
formes e-Learning.
Les efforts de standardisation dans ce domaine se concentrent sur la réutilisation des
documents pédagogiques, mais ne concernent pas la réutilisation des fonctionnalités des
applications. Les plates-formes, aussi bien commerciales que libres, sont en général
centralisées offrant des cours avec un contenu bien défini.
Notre approche se base sur la conviction qu'un système e-Learning est une collection
d'activités ou de processus qui agissent d’une part sur les étudiants et d’autre part sur le
contenu pédagogique convenablement choisi sous forme d’objets pédagogiques
(Learning Objects). Ainsi, nous pouvons découper les fonctionnalités de base d'un
système e-Learning en un certain nombre de fonctions, qui peuvent alors être
implantées séparément sous la forme d’applications autonomes (stand-alone) ou sous la
forme d’e-Services en utilisant des services Web. La mise à disposition de ces services
permet la réutilisation du contenu et des fonctionnalités dans une plate-forme e-
Learning.
Cet article présente nos travaux qui sont basés d’une part sur des normes connues et
partagées dans le domaine du e-Learning, et d’autre part sur des concepts
technologiques clés comme les services Web pour la réalisation de notre plate-forme
XESOP. Nos efforts sont orientés vers la réalisation d'un mode distribué de conception
et de diffusion de cours d’enseignement, afin de proposer des formations mieux
adaptées aux besoins des étudiants. Cela soulève un certain nombre de défis comprenant
la maintenance des contenus pédagogiques et des services offerts.
Cet article est organisé comme suit : en section 2, nous passons en revue les
composants souhaitables dans une plate-forme e-Learning (plate-forme en abrégé). La
section 3 est consacrée aux mécanismes de diffusion d’objets pédagogiques sur le Web.
En section 4, nous décrivons notre vision des services et tâches que doit fournir une
plate-forme. La section 5 donne des détails techniques d’implantation. Enfin, nous
concluons en section 6.
part cette activité assure la création d'un contenu d'enseignement et d'autre part la
construction d'un parcours pour l'apprenant. Le parcours définit un cadre temporel et
une organisation pour les activités d’apprentissage des étudiants. A cette activité
principale nous pouvons ajouter la construction de liens entre les parcours et des
documents externes, la création de tests (questionnaires) et d'exercices, des moyens de
communication synchrones ou asynchrones.
Les plates-formes en général n’autorisent l’intervention que d’un seul créateur de
cours, ou alors elles autorisent plusieurs créateurs, mais sans gestion du partage dans ce
cas. Cela veut dire que le mode collaboratif de création des cours est rarement
disponible : cela est dû, à notre avis, surtout aux technologies informatiques utilisées
dans ces plates-formes. L’administration des documents pédagogiques est une fonction
distincte de leur création et concerne les procédures de stockage, de recherche, de
partage et d’importation des documents pédagogiques. La gestion des évaluations assure
des fonctionnalités permettant de faire passer des évaluations et d’administrer les
résultats de ces évaluations.
pédagogiques est gardé dans des sites distribués des auteurs de cours ou des
intervenants d’enseignement. A partir de ce schéma de fonctionnement nous pouvons
dégager certains des problèmes surgissant dans la réalisation d'une plate-forme d’e-
Services : le stockage du contenu pédagogique de manière distribuée, et l’échange
dynamique de ce même contenu si nécessaire. En utilisant un tel schéma fonctionnel, le
contenu pédagogique serait publié et organisé pour être échangé, et serait accessible
dans un environnement basé sur des services Web.
Dans un système e-Learning la variété des dispositifs et des composants peut être
perçue comme une variété de processus et par conséquent réalisée en tant que services
Web atomiques ou composés. Notre étude, à partir de différentes sources : [PCBI, 2003]
et [Vossen, 2004], donne une liste non exhaustive composants d’un système e-
Learning : conception d’un contenu pédagogique ; publication d’un cours à partir d’un
contenu choisi ; gestion des objets pédagogiques ; mise à jour d’un contenu
pédagogique ; adaptation d’un contenu sur demande ; recherche et présentation d’un
contenu pédagogique ; inscription d’un étudiant et la gestion de son compte et profil ;
évaluation des connaissances acquises, mise en place et gestion d’une classe virtuelle ;
gestion d’un système de communication synchronisé de type chat. Ainsi, son
fonctionnement est décomposé en différentes activités ou groupes d'activités qui
peuvent être mises en application de façon indépendante sous la forme de services. Le
fonctionnement intégral d’un système peut être reconstitué par une composition
appropriée des services définis et choisis.
En conclusion, cette approche fournit des avantages pour un grand nombre
d’apprentissages et d'étudiants. En particulier dans l'enseignement supérieur ces
avantages peuvent se ressentir dans le cadre du modèle LMD (Licence, Master,
Doctorat) et pour une poursuite de formation à la demande mieux adaptée aux besoins
du moment. En effet, dans la société contemporaine, des besoins de formation sont
nécessaires tout au long de la vie professionnelle, à cause de la mobilité et des
mutations technologiques. Le développement du Web apporte une flexibilité pour
l'étudiant dans son choix de formation.
eb
W
ce
rvi
Se
problèmes de différents niveaux pour les différentes options suivies par un groupe
d'étudiants. Il est évident que son cours doit être adapté au niveau demandé. Cela
implique dans notre système la possibilité d'extraire (par simple marquage) des parties
choisies d'un cours, déjà préparé et enregistré dans la base de données, pour la
composition d'un contenu adapté aux besoins du moment (transparents pour la
présentation du cours en format SMIL, pages Web pour les supports de cours en ligne –
format HTML, polycopiés pour une impression et consultation ultérieure en format PDF
ou RTF).
Toutes ces transformations sont effectuées à l’aide d’outils connus et accessibles :
les parseurs XML. Dans une action de diffusion des documents pédagogiques à partir
de la base de données chaque transformation appelle un processus transformateur qui
peut être implanté comme un service Web (Figure 2).
4.4 Implantation des exercices
Partie intégrante d’un cours, l’exercice apporte une pédagogie d’apprentissage et un
suivi d’acquisition des savoirs. Dans notre conception l’exercice est un objet
pédagogique à part. L’auteur du cours définit l’énoncé de l’exercice et son emplacement
dans sa présentation. Le cours publié par un serveur Web, devient accessible aux
étudiants via un simple navigateur. A l’emplacement de l’exercice apparaît le cadre
d’une applet. C’est un environnement de développement à distance (EDD), réalisé côté
client, pour accéder aux ressources d'un serveur d'application. L’exécution de l’exercice
en temps réel est associée à un outil basé sur un service Web. L'intérêt de cet
environnement se résume en une indépendance de l’étudiant par rapport à son système
d'exploitation en lui apportant une solution efficace des étapes d'installation, de
configuration des logiciels et des problèmes de licences.
4.4.1 Environnement de développement à distance
Dans le cadre d’une formation en programmation par exemple, l’étudiant aura
besoin, suivant le choix du langage, d’une copie de l’interpréteur ou du compilateur
pour son système d'exploitation qu'il doit installer et configurer. Il lui faudra ensuite un
éditeur de texte de préférence avec la colorisation des lignes du code pour une meilleur
lisibilité et compréhension du contenu. Enfin, il doit maîtriser les options de la ligne de
commande de ces outils. Cela demande en plus la maîtrise d'un ensemble minimal de
commandes du système d'exploitation pour la gestion des fichiers, des répertoires et de
son propre compte.
Tous ces « petits problèmes » qui sont bien encombrants et qui ne portent pas sur
l’essentiel de la formation, peuvent distraire l'étudiant et le détourner de l’objectif
pédagogique. Par exemple lorsqu’il doit abandonner le cours pour chercher les outils de
développement recommandés par l’enseignant. S'il trouve une version différente ou si
l'installation du logiciel dans son système d'exploitation est incomplète il risque de se
confronter à des messages et à des problèmes peu communs. En effet ces outils peuvent
dans certains cas s’avérer inaccessibles car chers, ou impossible à installer sur une
machine donnée, que ce soit à cause d’une contrainte de ressources, de système
d’exploitation ou autre, d’où la nécessité d’un outil qui nous permettra de pallier à ces
difficultés et d'améliorer l'ambiance de formation à distance. La solution apportée par
sur le même package SOAP pour exécuter l'inverse. Le package décode le message
HTTP et extrait le message SOAP, ensuite le désérialise et obtient la valeur de retour.
5.4 Mise en œuvre du service
Les paramètres de configuration du service Web sont dans un fichier XML qui
contient les informations nécessaires pour l’exécution des programmes dans chaque
langage spécifié. A titre d'exemple nous présentons la configuration pour le traitement
des programmes de trois langages : C/C++ et Java.
L’élément racine du document de configuration est <coursconfig>. Il peut
contenir un ou plusieurs éléments <language>. Chaque élément n’a qu’un seul attribut
name pour le nom du langage que le service reconnaît. La définition d’un langage peut
contenir un ou plusieurs éléments (<step>) chacun décrivant la commande à exécuter
pour le traitement du code. La balise <command> définit la commande à exécuter (name
= "lcc") par un chemin d'accès relatif ou absolu à l'environnement système du côté
serveur. La balise <file> définit le nom du fichier par l'attribut id, l'extension de ce
fichier par l'attribut extension = ".cpp" et un contenu obligatoire par l'attribut
hasContent = "yes".
Le cas des langages C/C++ contient trois « step » (étapes) à exécuter. En premier
on définit la compilation du code source à partir d'un fichier « .cpp », en deuxième le
processus d’assemblage des fichiers « .obj » et la création du fichier exécutable, et
en troisième l’exécution du programme. En cas d'erreurs à la compilation ou aux
« step » suivants l'arrêt du processus est assuré par l'attribut stopOnErrors =
"yes".
<?xml version = "1.0"?>
<coursconfig>
<language name = ”c”>
<step stopOnErrors = "yes">
<command name = "lcc"/>
<file id = "FichierC" extension = ".cpp" hasContent = "yes"/>
<file option = "-Fo" id = "fichierObj" extension = ".obj"/>
</step>
<step stopOnErrors = "yes">
<command name = "lcclnk"/>
<file id = "fichierObj"/>
<option name = "-o"/>
<file id = "fichierExe" extension = ".exe"/>
</step>
<step>
<file id = "fichierExe"/>
</step>
</language>
</coursconfig>
hasContent = "yes"/>
</step>
<step>
<command name = "java"/>
<option name = "-classpath"/>
<file folderid = "testFolder"/>
<option name = "test"/>
<file id = "FichierClass" name = "test.class" folderid =
"testFolder"/>
</step>
</language>
...
Nous avons déjà mentionné que l'utilisation d'une applet du côté client est soumise à
plusieurs contraintes de sécurité. Une applet évolue dans le cadre d'un navigateur Web
et ne peut pas avoir d’accès direct aux ressources systèmes sauf exception liée à la
procédure de signature des droits d'accès [SUN-Applet, 2003]. Dans notre cas, nous
avons besoin d’accéder aux ressources réseaux, et au presse-papier (clipboard) de la
machine client. A cela s'ajoute le besoin de créer des fichiers sur le serveur. Ces
possibilités seront offertes à condition que le client accepte la signature à la demande du
navigateur.
La procédure de signature est une technique réalisée par les packages Java avec des
outils de création des clés cryptées pour les certificats émis à chaque connexion du
client (keytool). La signature elle-même se fait par la signature de l’archive .jar où se
trouvent les classes accédant aux ressources autorisées (jarsigner).
Pour faciliter cette procédure nous avons créé un outil genkey. Ainsi l’utilisateur
pourra désormais créer ses propres clés enregistrées dans une base de données.
L’identification d’un client se fait alors à partir de cette base de données avec son nom
d’utilisateur et son mot de passe.
6. Conclusion
Dans cet article, nous avons défini les composants et les fonctionnalités de base d’un
système e-Learning. Nous avons montré qu’un système d’enseignement à distance peut
être décomposé en plusieurs activités réalisées comme des applications autonomes sous
la forme de services. Nous avons décrit aussi comment un contenu pédagogique peut
être créé et diffusé dynamiquement dans un système e-Learning distribué basé sur des
services Web.
Nos études ont montré que la plupart des solutions existantes, qui peuvent gérer
d’une manière dynamique les contenus pédagogiques, se situent toujours dans le cadre
des systèmes centralisés et emploient des formats propriétaires. Cela pose d’autres
problèmes, dont celui de l’interopérabilité des systèmes e-Learning. Nous estimons que
les technologies des services Web peuvent contribuer à la résolution de ce genre de
problèmes.
Les quelques cas d’utilisation des services Web dans un système e-Learning
distribué [Vossen, 2004] restent pour le moment à un niveau conceptuel, et sont
déployés sur les « gros moyens » des systèmes dits d’entreprises. Notre approche
s’appuie sur les principes simples en utilisant le plus possible des concepts standards et
outils « open source ».
Nous avons représenté un exemple d’implantation des services Web dans un
système e-Learning pour l'animation d’exercices. L’environnement que nous avons
réalisé reste dans les normes des objets pédagogiques et permet aux étudiants de
pratiquer des apprentissages divers.
7. Bibliographie
Anne Bouthry, Christophe Jourdain, Construire son projet de formation en ligne,
Éditions d'Organisation, 2003, ISBN 2-7081-2854-X.
Alonso G., F. Casati, H. Kuno, V. Machiraju. Web Services – Concepts, Architectures
and Applications. 2004. Springer-Verlag. Berlin.
Apache, Project Apache Tomcat, 2004, En ligne : http://jakarta.apache.org/
tomcat.
Apache, Project Apache SOAP. 2003, En ligne : http://jakarta.apache.org/
soap.
Catalyst, Technical Evaluation of selected Learning Management Systems. The Open
polytechnic of New Zealand. 2003.
Chauvet J. M., Services Web avec SOAP, WSDL, UDDI, ebXML..., Eyrolles, 2002.
IEEE, Position Statement on 1484.12.1, 2003, Learning Object Metadata (LOM)
Standard Maintenance Revision, En ligne : http://ltsc.ieee.org/wg12/.
IMS GLC. IMS Content Packaging v1.1.4 final specification, November 2004.
http://www.imsglobal.org/ content/packaging/.
IMS GLC. IMS Learning Resource Meta-data Specification v1.3 Public Draft. May
2004. En ligne : http://www.imsglobal.org/ metadata/.
SUN, The Java Swing Tutorial, 2003, En ligne : http://java.sun.com/.
Madjarov I., Betari A., Un éditeur XML sémantique pour objets pédagogiques stockés
dans une base de données XML native, In Les Nouvelles Technologies de la
Répartition, (NOTERE 2004), juin 2004, Saidia, Maroc, p. 218-233.
Madjarov I., Boucelma O., Betari A., An Agent- and Service-oriented e-Learning
Platform, Proceedings of Third International Conference on Web-Based Learning
(ICWL 2004), Beijing, China, August 2004, LNCS 3143, pp. 27-34, Springer.
Madjarov I., Betari A., Shishedjiev B, Remote Development Environment In An E-
Learning System, Proceedings of 18-th International Conference SAER 2004,
Varna, Bulgaria (September 2004) pp.178-182.
ORAVEP, Étude comparative technique et pédagogique des plates-formes pour la
formation ouverte et à distance, Rapport d'étude pour DT/SDTETIC, 2000.
PCBI, Etude des outils de gestion de ressources numériques pour l'enseignement,
Ministère de la jeunesse, de l'éducation nationale et de la recherche, juin 2003.
SCORM, Sharable Content Object Reference Model, Advanced Distributed Learning,
2004, En-ligne : http://www.adlnet.org/.
SUN-Applet, Advanced Programming for the Java 2 Platform, Chapter 10: Signed
Applets, 2003, En ligne : http://java.sun.com/.
Vossen G., P. Westerkamp. Maintenance and Exchange of Learning Objects in a Web
Services Based e-Learning System. Electronic Journal of e-Learning Volume 2 Issue
2 2004. pp. 292-304.
Walckiers M., De Praetere T., L'apprentissage collaboratif en ligne., Distances et
savoirs. Volume 2 - n° 1, 2004, pages 1-23.