Professional Documents
Culture Documents
conception et déploiement
Sommaire
Sommaire........................................................................................................................page 1
Introduction.................................................................................................................... page 2
4. Bilan........................................................................................................................... page 57
4.1. Résultats obtenus et difficultés rencontrées........................................................ page 57
4.2. Prolongements possibles.................................................................................... page 57
Conclusion...................................................................................................................... page 58
Glossaire......................................................................................................................... page 61
Bibliographie................................................................................................................... page 62
Introduction
Afin d’y répondre, nous nous focaliserons sur différents axes. En premier lieu, nous allons
présenter le contexte du projet tuteuré. Puis nous traiterons de la méthodologie pour concevoir un
cours en ligne. Nous détaillerons alors le déploiement d’une solution logicielle qui permettra
d’installer la plateforme de e-learning et nous procéderons à cette installation. Enfin, nous
terminerons avec un bilan de nos travaux et ferons le point sur les améliorations possibles.
1. Présentation du contexte
Le e-learning étant une autoformation, il en possède donc les intérêts, à commencer par la
souplesse temporelle et spatiale. En effet, l’apprenant est libre du temps et du lieu auxquels il va
se connecter à la plateforme de formation. Cela contraste avec les cours traditionnels qui
imposent le fait de se retrouver dans une salle donnée à un moment précis avec le formateur et les
autres apprenants.
Par ailleurs, le coût de la formation est réduit : il n’est pas nécessaire de payer un
formateur qui fera cours pendant un certain nombre d’heures. Une fois le contenu créé, il est
distribué à distance et non enseigné en salle. Ces économies sont à relativiser car le e-learning
provoque des dépenses en développement et déploiement qui, même si elles sont incomparables
avec le salaire d’un enseignant, ne sont pas à négliger.
Dans une entreprise, l’autoformation est adaptée lorsque deux unités de production sont
éloignées et que l’on doit former en ces deux endroits des employés de même qualification. Ils
reçoivent alors tous la même formation sur une plage de temps identique. Le niveau
d’enseignement est égal et aucune unité n’a d’avantage en étant formée avant l’autre.
Par multimédia, on entend l’ensemble des techniques qui font que le cours se retrouve
dématérialisé et affiché sur un écran d’ordinateur, avec tous les procédés que cela implique.
Avec le multimédia, il est aussi possible d’évaluer de manière plus régulière les apprenants.
La lourdeur d’un examen écrit où tous les apprenants sont réunis dans une salle est ainsi évitée.
En outre, par la mesure plus fréquente des acquis, on peut évaluer plus précisément l’efficacité
pédagogique de la formation et éventuellement corriger celle-ci le cas échéant.
En troisième lieu, la simplification par les schémas et les animations, ajoutée à une
structure plus claire amplifie la motivation de l’apprenant. Il montrera plus d’intérêt envers un
cours possédant un côté ludique (avec la présence d’animations, parfois sous forme de jeux
comme le permet le multimédia) plutôt qu’envers un cours papier, qui lui apparaîtra plus
rébarbatif.
Enfin, on peut considérer dans un certain sens que le multimédia permet un enseignement
plus personnalisé. En effet, l’apprenant peut pleinement suivre son rythme. Certes, sa progression
sera indéniablement encadrée par des dates limites pour les évaluations. Mais il est libre de passer
quelques heures de plus sur un module qu’il n’aurait pas assimilé au premier abord et qu’il
n’aurait jamais assimilé en prenant des notes durant un cours magistral. Avec le multimédia, il est
possible de répéter un nombre infini de fois les données audio et vidéo présentes dans le cours.
Faisons tout d’abord un état des lieux du marché du e-learning. Celui-ci a été expérimenté
pour la première fois, il y a une quinzaine d’années, par une compagnie aérienne suisse dans le
but de faire apprendre les codes internationaux des aéroports.
Il fut déployé, dans un premier temps, par les grandes entreprises qui y voyaient un moyen
plus rapide de former leur personnel. De plus, elles étaient les seules à pouvoir investir dans ce
nouveau créneau. Pendant longtemps et en particulier jusqu’à l’éclatement de la bulle Internet, la
surenchère technologique a masqué la pauvreté pédagogique et la mauvaise qualité des contenus
diffusés via le e-learning.
Depuis, les acteurs économiques en matière de formation à distance ont tiré des leçons et
ont rendu les solutions plus attractives sur un plan économique mais aussi sur un plan
technologique, en développant, par exemple, une interactivité qui enrichit la portée pédagogique
du e-learning.
Le contexte économique actuel incite les entreprises diminuer les coûts dans le plus de
domaines possibles. Ainsi, le budget pour les formations des employés s’en trouve réduit ce qui
nécessite un nouveau type moins onéreux. Par ailleurs, la nécessité des formations est aussi voire
plus présente qu’avant (avec notamment l’évolution permanente des outils informatiques). Enfin,
la problématique de la mobilité croissante des cadres vient s’ajouter à ce besoin.
Ces éléments tendent à faire du e-learning une solution adéquate pour l’enseignement de
savoir-faire au personnel, ayant prouvé son efficacité tout en diminuant sensiblement les coûts. Le
e-learning se voit donc de plus en plus utilisé par les entreprises et un nombre croissant d’entre
elles s’y intéressent.
Les raisons précitées donnent à notre sujet un grand intérêt c’est donc pour cela qu’il nous
a été demandé de le mettre en œuvre.
1.3. Démarche
L’ensemble de notre démarche se décompose en deux éléments : il y a tout d’abord
l’aspect méthodologique. En effet, la conception d’un cours en ligne présente des différences
notables avec les cours traditionnels sur papier. Il faut savoir exploiter au mieux les possibilités
offertes par web et cela passe par des méthodes d’élaboration nouvelles pour le cours. C’est ce
que nous étudierons dans la partie suivante.
Sur le plan technique auquel nous nous attacherons dans une troisième partie, l’idée de
notre projet est d’aboutir à une plateforme de e-learning pleinement fonctionnelle. A cet effet, il
est nécessaire de passer par différentes étapes, ou plus précisément de déployer les différents
éléments qui permettront d’aboutir à notre objectif.
L’étape suivante consiste à installer des applicatifs serveurs. Chacun de ces logiciels
remplit une fonction qui sera utilisée par la plateforme de e-learning. Apache 2 est le serveur
web : il rend disponible les pages web ; MySQL* est le service de base de données : les utilisateurs,
les cours et les paramètres de la plateforme sont stockés dans une base. PHP* est l’applicatif
permettant de chercher les données présentes dans la base puis de les afficher avec le serveur
web.
Ce n’est qu’une fois le système d’exploitation et les logiciels serveurs déployés qu’il est
possible d’installer Dokeos.
Nous pouvons résumer l’ensemble des tâches techniques par le schéma suivant.
Système
d'exploitation
(CentOS)
Logiciels
serveur
(Apache, PHP,
MySQL, ...)
Plateforme de
e-learning
(Dokeos)
Figure 1.3.1. : Démarche technique et hiérarchie entre les éléments à mettre en place.
Même si la finalité voulue est commune entre un cours en ligne et un cours traditionnel,
c’est-à-dire enseigner des savoirs et des savoir-faire, le moyen utilisé est différent. Ainsi, réaliser
un cours en ligne nécessite de suivre une méthodologie autre. Nous étudierons, tout d’abord, les
critères généraux de réussite d’un cours en ligne. Puis nous nous pencherons sur les particularités
de sa structuration. Nous aborderons alors l’importance de l’ergonomie et de l’interactivité. Enfin,
nous nous focaliserons sur les outils multimédia intervenant dans la formation.
Deuxièmement, le succès d’un cours en ligne passe par l’indentification du public cible.
Pour cela, il faut se poser les questions suivantes :
Le contenu motive-t-il les apprenants ?
La formation leur apparait-elle intéressante ?
L’objectif pédagogique leur parait-il clair ?
Le public est-il homogène d’un point de vue de la formation initiale ?
A quel point les apprenants sont-ils autonomes ?
Enfin, il faut développer une stratégie d’apprentissage adéquate. Elle dépend du public et
de la formation. Différentes stratégies sont envisageables :
le blended learning, parfois appelé mode d’apprentissage mixte en français, est le
regroupement de cours en ligne et du mode d’apprentissage classique (cours
traditionnels). C’est une solution très utilisée puisqu’avec elle, le suivi de l’apprenant est
très présent.
la formation asynchrone s’adapte pleinement aux disponibilités de l’apprenant car le suivi
s’effectue uniquement par des outils sans contrainte temporelle pour les interlocuteurs,
par exemple par mail ou par le biais d’un forum.
la formation synchrone : le suivi s’effectue en groupe grâce à la visioconférence (on
emploie de plus en plus le terme de ‘‘classe virtuelle’’ dans le cadre du e-learning). Il y a
donc une contrainte de temps.
Comme nous l’avons vu, la structure fait partie des éléments clé de la réussite d’un cours
en ligne.
Étudions désormais la manière dont un formateur doit le structurer.
2.2. Structuration
La structuration d’un cours dépend de la stratégie d’apprentissage qui a été choisie par le
formateur mais aussi de trois critères.
Le premier est l’autonomie de l’apprenant. Si son niveau est faible, alors il faudra l’aider
davantage. Les moyens pour y parvenir sont les aides contextuelles (des bulles d’aides
apparaissant au survol d’un élément avec le curseur) et plus généralement des repères visuels
pour que l’utilisation soit la plus intuitive possible. Il faut faire en sorte que le multimédia ne soit
pas source de blocage pour l’apprenant s’il est peu expérimenté. En revanche, si celui-ci est
autonome et bien familiarisé avec le e-learning, il sera préférable de lui donner plus de liberté
quant à son parcours. Il est aussi possible de lui donner accès à des modules plus complexes.
Le deuxième à prendre en considération est le niveau initial des apprenants. Si celui-ci est
homogène, alors on privilégie une structure à un seul parcours. Au contraire, s’il est hétérogène, il
est préférable de faire plusieurs parcours pour intéresser les plus expérimentés sans perdre les
débutants.
Les structures
Toutes les structures étudiées ici ont des éléments en commun. Ce sont les éléments
minimums.
La première structure que nous allons détailler est la plus courante. Elle alloue une certaine
liberté à l’apprenant parmi les grains (ou séquences) pédagogiques ; si celui-ci a un bon niveau
alors il est susceptible d’en passer quelques uns car la navigation est libre.
1.1
Objectif spécifique
Séquence 1
1.2
Séquence 2
Écran
Objectif
Introduction Menu principal
Séquence 3
Synthèse
Évaluation
L’évaluation reste commune et porte sur tous les grains pédagogiques. Concrètement,
dans le cas du blended learning, cette évaluation peut potentiellement se dérouler dans une salle
avec l’ensemble des apprenants.
Dans le cas où les apprenants ont un niveau plus hétérogène, on peut envisager des
parcours différents dans une même formation. Celui proposé va varier en fonction des résultats à
une autoévaluation. Celle-ci est effectuée en début de formation.
1.1
Objectif spécifique
Séquence 1
1.2
Séquence 2
Écran Objectif
principal
Introduction Menu
Séquence 3
Synthèse Évaluation
Auto évaluation
La navigation reste libre pour le confort de l’apprenant, mais celui-ci doit s’organiser en
fonction de ses capacités et des conseils de parcours.
Enfin, la dernière structure concerne un public avec un faible niveau de compétence initial
dans le domaine visé. De plus, ce niveau doit être assez homogène. L’autonomie de l’apprenant
est réduite : le parcours imposé.
Séquence 1 Séquence 3
Séquence 2
1.1 1.2
Écran
Objectif spécifique
Objectif principal
Un test est proposé avant chaque séquence. Un apprenant peu habitué au e-learning s’y
retrouve grâce à la structure figée du cours.
Quelle que soit la structure utilisée, certains éléments doivent impérativement être
présents dans le cadre d’une application de formation en ligne. Ces éléments sont typiquement
proposés par les plateformes disponibles actuellement. Il y a tout d’abord le module d’accueil dont
la fonction est de présenter le cours de manière globale ainsi que les dates clé de la formation. Un
sommaire doit aussi être présent. Idéalement, il doit être présenté de manière dynamique en
affichant la progression de l’apprenant dans le cours et éventuellement montrer ce qu’il reste à
faire. En outre, une formation contient des écrans de contenu mais ceux-ci se présentent de
manière variée, et de préférence sans avoir de longs blocs de texte. Enfin, l’expérience de
l’utilisateur a son importance. Il faut aider, par tous les moyens possibles, l’apprenant dans sa
tâche. Cela passe par une aide présente dans le cours lui-même ou une solution dans laquelle
l’apprenant va entrer directement en contact avec son formateur (nous étudierons cela en détail
dans la partie 2.4.).
Durant tout le déroulement de l’apprentissage, l’apprenant doit être guidé. Étant donnée
l’absence immédiate du formateur, c’est la machine qui joue le rôle de guide. C’est là qu’entrent
en jeu des notions indispensables au bon déroulement du cours : l’ergonomie et l’interaction.
2.3.1. Interactivité
A ce titre, différents types d’interactivité existent. Elle peut tout d’abord être directe, dans
le cas où la réponse est apportée à l’apprenant suite à un clic. Elle peut aussi être indirecte, si elle
n’intervient qu’en fonction d’actions précédentes de l’apprenant. Par exemple, proposer une
structure de cours particulière en fonction du résultat à l’autoévaluation (dans la structure
correspondante vue précédemment) est une forme d’interactivité indirecte. L’interactivité générale,
elle, donne une cohérence globale à l’application en intervenant uniquement dans les outils de
navigation du cours.
Différents moyens existent pour créer cette interactivité : on peut citer l’ajout de vidéos, de
jeux tels que des textes à trous, puzzles ou QCM, des infobulles apparaissant au survol ou au clic
sur un mot du cours. Les deux principales technologies du web permettant cette interactivité à
l’heure actuelle sont Adobe Flash* et JavaScript*.
2.3.2. Ergonomie
Précisons tout d’abord de quoi il est question en donnant une définition de l’ergonomie.
Notion apparue dans les années 1950, l’ergonomie s’apparente à l’étude du confort du milieu de
travail afin d’améliorer l’efficacité des personnes dans leur tâche.
Pour dire les choses clairement, afin que le savoir soit enseigné de manière optimale, il ne
faut pas négliger certains éléments pouvant apporter un certain confort à l’utilisateur.
Par ailleurs, l’interface doit être compréhensible en un minimum de temps par le plus
grand nombre. Cela passe par la présence de points de repère pour naviguer aisément dans le
cours.
La fiabilité est aussi un élément à prendre en compte dans le cadre de l’ergonomie. Par
fiabilité, on entend la capacité de l’application à remplir sa mission sur la durée prévue. En effet,
elle ne doit pas souffrir de problèmes techniques causant ralentissements et/ou plantages, en
particulier aux heures où les apprenants sont le plus susceptible de se connecter (en général de 18
à 22 heures).
Il est possible de résumer les éléments nécessaires pour qu’un cours soit ergonomique par
le schéma suivant :
Fiabilité
Temps
Confort d'adaptation
faible
Application
Efficacité Intuitivité
ergonomique
2.3.3. Navigation
2.3.4. Graphisme
Il faut définir une charte graphique qui sera utilisée durant tout le module. Celle-ci à pour
but de servir le contenu. Il est bon de rappeler qu’un cours de e-learning n’a pas pour vocation
d’être une œuvre d’art : le contenu est donc plus important que le graphisme qui doit avant tout
être fonctionnel, sobre et esthétique. Nous allons désormais nous demander comment définir une
charte graphique adaptée au e-learning.
Tout d’abord, notons que l’aspect général (couleurs, mise en page, typographie) doit être
en adéquation avec le cours.
Au niveau des couleurs, l’utilisation de multiples couleurs est à proscrire : seules deux ou
trois suffisent.
Pour ce qui est de la mise en page, elle doit être cohérente tout au long du cours c'est-à-
dire qu’elle ne doit pas radicalement changer d’une séquence à l’autre. De plus, la disposition des
divers éléments sur un même écran est soumise à certaines règles.
Les objets ayant le même niveau d’importance sont alignés entre eux permettant ainsi à
l’œil de l’utilisateur de ne pas se perdre mais aussi de facilité la lecture.
La taille est également importante : les éléments plus grands sont lu en premier, les
moyens ensuite et les plus petits en dernier. Cela crée une hiérarchie de valeur qui facilite
la compréhension et la lecture du cours.
Les gadgets et boutons inutiles ne doivent, du fait de leur inutilité, pas apparaître à l’écran.
Les objets associés doivent être à proximité. Il faut, par exemple, éviter les grands espaces
entre un titre et le texte ainsi qu’entre une image et sa légende.
Figure 2.3.4.1. : Positionnement incorrect (à gauche) et correct (à droite) des objets d’un cours.
La typographie est, elle aussi soumise à des règles. Celles-ci sont justifiées par le fait
qu’un apprenant passe, en moyenne, 20 secondes par écran, ce qui est très court et implique donc
de structurer l’information.
Il faut absolument éviter les textes long et faire des phrases courtes afin d’accroitre la
compréhension.
La hiérarchisation, comme vu plus haut, est importante car elle permet de structurer
l’information et de faciliter la compréhension. On peut hiérarchiser un cours en variant la
taille des éléments : les titres seront plus gros que les sous-titres qui sont eux même plus
grands que le texte. L’utilisation des paragraphes est aussi un excellent moyen de
hiérarchiser. Enfin un alignement régulier permet de savoir quel paragraphe correspond à
quel (sous)titre.
Le contenu doit être synthétique. On privilégiera les listes à puces ainsi que les listes
numérotées. Chaque paragraphe doit rassembler une ou deux idées tout au plus et les
sous-titres doivent être courts et clairs pour que l’apprenant sache en un coup d’œil l’idée
qui sera développée. Par ailleurs, il est possible de mettre en évidence certains éléments du
texte en les mettant en gras ou en italique. Néanmoins, il ne faut pas abuser de cette
possibilité.
La taille de la police n’est pas à négliger. En effet, si elle est illisible c’est toute l’efficacité
pédagogique qui est remise en cause. Pour une bonne lisibilité il faut que la grandeur de la
police soit comprise entre 10 et 14 pixels.
La classe virtuelle est le fait de regrouper l’ensemble des apprenants à un moment donné
pour une durée quelconque. Elle présente les avantages suivants : tout d’abord, les apprenants
peuvent participer, de manière écrite ou orale pendant le cours. En outre, elle permet l’utilisation
d’un tableau blanc sur lequel chaque personne peut disposer ou enlever des éléments. Cependant
elle présente aussi des inconvénients tels qu’une gestion complexe si le nombre d’apprenants est
élevé. D’autre part, si on décide d’implémenter d’autres technologies qu’un simple chat (un
tableau blanc notamment), il faut veiller à ce que la bande passante au niveau du serveur soit
correctement dimensionnée.
Les outils de communication sont les suivants : les mails, les chats et les forums. Les
avantages et inconvénients de ces technologies sont présentés sous forme d’un tableau pour plus
de clarté.
Avantages Inconvénients
-Risque que le mail arrive dans la boîte à
-Envoi de fichiers grâce aux pièces jointes.
spam.
-Risque de sur-utilisation : l’apprenant ne
Mails -Système simple à utiliser. cherche plus par lui-même, il envoie un
mail dès qu’il a une question.
-Création d’un lien humain entre
formateur et apprenant.
-Impossibilité de prévoir ce qui peut se
-Échanges instantanés.
passer car les échanges sont spontanés.
-Création d’une dynamique de groupe.
Chats
-Communications privées entre apprenant
et formateur ou entre apprenants
possibles.
-Animation et stimulation de groupes -Présence de modérateurs recommandée
d’apprenants. si le nombre d’apprenants est important.
-Nécessité d’une activité importante sur le
Forums -Expression libre de chacun. forum pour qu’il soit intéressant.
-Difficulté d’utilisation pour les personnes
qui ne sont pas habituées aux TIC*.
Ce système est en fait la version communautaire de Red Hat Enterprise Linux (RHEL),
reprenant toutes ses caractéristiques sauf son logo. Là où REHL est payant et destiné uniquement
aux entreprises, CentOS est gratuit et disponible pour quiconque possédant une connexion à
Internet.
Nous commençons par lancer l’ordinateur à partir du CD, ce qui nous donne accès à l’écran
de démarrage de CentOS.
Note : cette image ainsi que les suivantes dans cette sous-partie sont des photos. En effet,
l’installation d’un système d’exploitation ne permet pas de faire de capture d’écran classique.
Nous disposons d’un disque dur de 40 Go sur l’ordinateur de test. Nous choisissons de
séparer celui-ci en deux partitions. La première sera le ‘‘swap’’. Le swap est une zone du disque
qui ne sert que lorsque toute la mémoire vive est utilisée. Le disque dur remplit alors le rôle de la
mémoire vive. Toutefois, cela se traduit par un ralentissement global du système puisque d’un
point de vue matériel, le temps d’accès aux données d’un disque dur est bien supérieur à celui
d’accès à la mémoire vive. Créer une zone swap est nécessaire sur un serveur : c’est une
précaution dans le cas où de nombreuses requêtes sont effectuées et que les logiciels se mettent à
utiliser une grande quantité de mémoire vive subitement.
Nous choisissons une taille de 2 Go pour le swap. En effet, typiquement, nous prenons
deux fois la quantité de mémoire vive installée sur l’ordinateur ; dans notre cas nous en avons 1
Go.
Nous complétons le partitionnement par ‘‘/’’, la partition système, qui prend le reste de
place disponible sur le disque dur (sur la photo ci-dessus, l’option ‘‘Remplir jusqu’à la taille
autorisée maximale’’ est cochée).
L’étape suivante, visible sur la photo ci-dessus, consiste à sélectionner l’installation d’un
ou plusieurs groupe(s) de paquets pour une utilisation particulière. Par exemple, en un clic il est
possible de sélectionner ‘‘Bureau – GNOME’’, ce qui va installer une interface graphique
permettant d’effectuer des tâches de bureautique. Souhaitant installer manuellement les logiciels
serveur que nous allons utiliser, nous ne cochons rien dans cette liste, ce qui ne nous laissera un
système certes, basique mais sur lequel nous pourrons proprement installer les logiciels
nécessaires à la réalisation de notre objectif.
Les éléments du système sont téléchargés à partir du serveur cible renseigné au début du
processus puis installés.
Au bout d’une vingtaine de minutes, l’installation est terminée, ce qui se traduit par
l’apparition de ce message.
L’ordinateur redémarre alors et lance le système fraichement installé. Il nous est alors
possible de passer à l’étape suivante de notre démarche : mettre en place les logiciels serveurs
nécessaires à la plateforme de e-learning.
Ainsi, il va être possible pour eux de communiquer. On peut résumer cette topologie à ce
schéma simple :
Serveur
(CentOS)
192.168.1.9
Routeur
192.168.1.1
PC portable
(Fedora Core 12)
192.168.1.7
Le protocole utilisé pour la communication sera SSH (Secure Shell). Il s’agit du protocole de
référence en matière de communication sécurisée entre deux ordinateurs. En effet, il repose sur
l’utilisation de clés de chiffrement, ce qui empêche toute possibilité pour d’autres terminaux de
connaître la nature des données échangées. Avec SSH, il sera possible sur le PC d’avoir accès en
ligne de commande au serveur : sa console d’administration est reproduite côté client.
Notons par ailleurs que SSH est un service activé par défaut sur CentOS et qu’aucune configuration
n’est nécessaire pour qu’il soit pleinement fonctionnel.
Sur des systèmes Linux, ssh s’utilise simplement via la commande éponyme. La structure
est la suivante :
$ ssh <login>@<nom ou IP de la machine distante>
Dans notre topologie, le serveur possède l’adresse IP 192.168.1.9. Pour faire des tâches
d’administration, il faut se connecter avec le compte root (c’est le seul capable de modifier les
fichiers système ou encore de pouvoir installer des logiciels).
Ainsi, sur le PC sous Fedora Core 12, nous entrons dans le terminal cette commande :
$ ssh root@192.168.1.9
L’utilisation de SSH présentera aussi pour nous l’avantage de pouvoir extraire le contenu
affiché dans la console ou d’en faire des captures d’écran, chose impossible à faire si nous
intervenons directement sur le serveur.
La connexion au serveur réussissant, nous passons à l’installation des applications. Nous
commencerons par Apache qui permettra de transmettre les pages web aux clients voulant
accéder à la plateforme de e-learning. Puis nous installerons les outils de gestion de site
dynamique nécessaires à Dokeos : PHP et MySQL.
Apache est le serveur web le plus utilisé au monde devant IIS de Microsoft comme le
montrent ces statistiques.
Figure 3.3.1.1. : Statistiques d’utilisation mondiale des serveurs web d’Octobre 1995 à Janvier 2010.
(source : netcraft.com)
Apache est désigné par httpd sous CentOS. C’est donc ce logiciel que nous allons chercher
à installer.
Avec la plupart des systèmes Linux, la gestion des applications installées se fait à l’aide de
dépôts. Un dépôt est en fait un serveur qui centralise une base de logiciels. Avec une seule
commande entrée, il est possible d’ordonner une installation : le logiciel voulu est téléchargé
depuis le serveur, puis installé automatiquement. Sous CentOS (et plus généralement les systèmes
basés sur Red Hat), c’est yum qui permet d’accomplir ce type de tâche.
Ajouter un dépôt se fait par la création d’un fichier dans le répertoire /etc/yum.repos.d/.
En effet, yum va lire la liste des fichiers à chaque exécution et s’il en détecte un nouveau, il va
l’analyser et le prendre en compte dans ses opérations.
Nous créons donc le fichier centos-testing.repo. Son contenu est le suivant :
[c5-testing]
name=CentOS-5 Testing
baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
Cette capture d’écran montre le résultat de la commande. Yum récapitule les actions qu’il
va effectuer. Ici il s’agit de télécharger le paquet httpd en version 2.2.8 depuis le dépôt c5-testing
puis de l’installer. Une confirmation est demandée, nous entrons ‘‘y’’ (‘‘yes’’) pour confirmer.
Une fois l’installation faite, nous passons à la configuration d’Apache. Dans la majorité des
cas, la configuration par défaut est suffisante pour permettre un fonctionnement correct. Nous
n’aurons que deux paramètres à modifier pour que la configuration corresponde à nos besoins.
Pour se faire, nous ouvrons le fichier /etc/httpd/conf/httpd.conf.
Le deuxième paramètre que nous allons modifier est relatif à l’utilisation de l’UserDir.
UserDir permet de rendre disponible via le serveur web le contenu du dossier public_html de
chaque utilisateur sur la machine.
Illustrons cette idée par nos travaux. Lors de l’installation de CentOS, nous avons créé un
utilisateur nommé ‘‘projet’’. Chaque utilisateur dispose d’un espace personnel sur la machine
situé dans le répertoire /home. Le répertoire personnel de projet est donc /home/projet. Il est
possible pour l’utilisateur projet de créer un dossier public_html dans lequel il pourra placer des
fichiers qui seront automatiquement rendus disponibles par Apache.
Pour quelqu’un qui a accès à la machine via le réseau, il suffira d’entrer dans son navigateur
http://192.168.1.9/~projet/ pour avoir accès au contenu du répertoire
/home/projet/public_html/.
Nous placerons donc Dokeos dans ce répertoire.
Activer UserDir n’est pas la seule chose à faire pour que le public_html de projet soit mis
en ligne, il faut aussi déclarer ce dossier et définir les conditions de son accessibilité avec Apache.
Nous entrons ces paramètres immédiatement après ceux de l’UserDir.
Figure 3.3.1.5. : Paramétrage des accès aux dossiers public_html des utilisateurs (fichier httpd.conf).
Option Indexes est l’option permettant d’afficher une liste des fichiers présents si un client
demande d’accéder au dossier mais qu’aucun fichier index.html n’est présent.
AllowOverride None interdit aux utilisateurs de changer les paramètres placés ici (si l’Override
était autorisé, chaque utilisateur pourrait modifier les options avec un fichier .htaccess).
Allow from all signifie que n’importe quel client peut accéder aux dossiers des utilisateurs.
Avec cette configuration, le répertoire public_html de projet sera accessible à n’importe quel client
du réseau de la machine.
Aucune erreur n’est survenue lors du démarrage, le service httpd est donc lancé.
Nous testons alors si les paramètres sont correctement appliqués en pratique, à savoir si
l’on peut accéder au public_html de projet à partir de notre PC portable client.
Il faut tout d’abord créer, avec l’utilisateur projet, un fichier index.html placé dans le
répertoire /home/projet/public_html/.
# su projet
$ cd ~/public_html/
$ echo ‘‘Ca marche !’’ > index.html
Maintenant, connectons-nous au serveur à l’aide d’un navigateur web sur le PC client. Pour
accéder à l’UserDir de projet sur 192.168.1.9, nous entrons http://192.168.1.9/~projet/.
PHP et MySQL sont les technologies de référence pour mettre en ligne des sites web à
contenu dynamique comme les plateformes de e-learning (Dokeos n’échappant pas à la règle).
MySQL permet de stocker et ranger des éléments dans une base de données. PHP fait le
lien entre le serveur web et MySQL. En effet, une page web nécessite d’être écrite dans le langage
PHP pour appeler des données présentes dans une base.
Le rôle des différents éléments d’un serveur LAMP (Linux Apache MySQL PHP) peut être décrit à
travers le schéma suivant :
Dans la première étape, un client va entrer une adresse dans son navigateur Internet,
adresse à laquelle le serveur web répond. Si l’extension du fichier est .php (c’est le cas des fichiers
de Dokeos), alors le serveur web (dans notre cas Apache) transmet la requête du client vers PHP.
Celui-ci parcourt le fichier à la recherche de code en PHP et si ce code contient des requêtes vers
une base de données, alors elles sont à leur tour transmises au serveur MySQL qui répond à PHP.
Ce dernier redonne au serveur web la page avec le contenu interprété. Il est alors possible
d’envoyer la page que le client a demandée.
Les administrateurs de systèmes d’informations ont le choix entre gérer une base de
données directement en ligne de commande (en entrant ‘‘mysql’’ dans un terminal) ou avoir une
vision plus globale, non moins complexe mais plus claire avec une interface de gestion en ligne
comme PHPMyAdmin. Souhaitant étudier précisément le comportement de Dokeos d’un point de
vue technique, nous retenons la solution PHPMyAdmin.
PHPMyAdmin est une application qui peut s’installer grâce à yum. Mais le paquet n’est pas
disponible dans les dépôts de base. Il faut ajouter le dépôt RPMforge.
Le procédé que nous employons cette fois-ci n’est pas le même mais aboutit au même
résultat : la prise en compte par yum des paquets proposés par RPMforge. Pour se faire, nous
téléchargeons et installons le paquet rpm du dépôt.
C’est sur la foire aux questions du site RPMforge que l’on trouve l’adresse de ce paquet.
Sous Linux, on utilise la commande wget pour télécharger un fichier. On entre donc dans le
terminal :
# wget http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-
1.el5.rf.i386.rpm
Une fois ce paquet téléchargé, il faut l’installer. Pour cela, il faut utiliser la commande rpm
avec les options adaptées : U pour indiquer que l’on installe, v et h pour activer le mode
‘‘verbeux’’, c’est-à-dire le mode où le logiciel nous donne plus d’informations sur les actions qu’il
effectue (utile pour contrôler le bon déroulement de l’installation). Après les options, on indique le
nom du paquet à installer.
On entre donc :
# rpm –Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
Il est maintenant possible d’installer PHPMyAdmin, PHP et MySQL avec yum, ce que nous
faisons avec la commande suivante :
# yum install phpmyadmin php php-mysql mysql mysql-server
Il est indispensable de mentionner les paquets php, php-mysql, mysql et mysql-server car
étonnamment, ils ne font pas partie des dépendances de PHPMyAdmin. Pourtant, ceux-ci sont
nécessaires pour que l’ensemble Apache-PHP-MySQL fonctionne.
Figure 3.3.2.3. : Installation des paquets pour PHPMyAdmin, PHP et MySQL avec Yum.
Yum propose, comme précédemment avec httpd, un récapitulatif des éléments à installer.
Nous validons avec ‘‘y’’.
Il s’agit désormais de nous connecter à MySQL en root. Pour cela, la commande à entrer est
mysql suivie de l’option u (indique que l’on entre le nom de l’utilisateur à la suite) puis de root. Il
s’agit donc de la commande suivante :
# mysql -u root
Figure 3.3.2.4. : Mise en place d’un mot de passe root pour MySQL.
Les commandes entrées doivent respecter la syntaxe du langage SQL. La mise en place
d’un mot de passe s’effectue en entrant :
> SET PASSWORD FOR ‘root’@‘localhost’ = PASSWORD(‘rootpass’);
Pour tester la connexion avec ce nouveau mot de passe, nous nous déloggons (commande
exit) puis nous reloggons avec l’option --password.
# mysl –u root --password=rootpass
Sachant que Dokeos utilisera sa propre base de données, nous allons maintenant la créer.
Pour des raisons de sécurité, elle ne sera pas rattachée à root mais à un utilisateur simple que
nous appellerons projet.
Il faut lui donner les droits nécessaires pour pouvoir éventuellement gérer une base sur le serveur
(cela ne lui donne cependant pas le droit de modifier les bases qui ne lui appartiennent pas) :
> GRANT USAGE ON * . * TO ‘projet’@’localhost’ IDENTIFIED BY ‘projet’;
Littéralement, cette commande crée la base nommée projetdb si aucune n’existe déjà à ce nom. Il
faut enfin que l’utilisateur projet sur localhost ait tous les droits sur projetdb, c’est grâce à la
commande suivante que l’on effectue cette configuration :
> GRANT ALL PRIVILEGES ON `projetdb` . * TO ‘projet’@’localhost’;
Figure 3.3.2.5. : Création de l’utilisateur projet, de la base projetdb et attribution des droits nécessaires à projet sur
projetdb.
Maintenant que MySQL est configuré selon nos besoins, nous pouvons nous intéresser à
PHPMyAdmin.
Un cookie est un petit fichier qui est stocké sur le disque dur du client. Il sert à conserver
les données de connexion à un service sur Internet pour éviter que ce même client n’ait à entrer
ses identifiants à chaque fois. Le cookie, pour des raisons de sécurité, ne peut contenir le mot de
passe tel quel. Il faut donc indiquer une passphrase, c’est-à-dire une clé commune aux clients et
au serveur pour que le mot de passe puisse être compréhensible uniquement par eux.
La ligne devient :
$cfg['blowfish_secret'] = 'ceci-est-une-passphrase'; /* YOU MUST FILL IN THIS
FOR COOKIE AUTH! */
Par ailleurs, nous devons modifier la configuration d’Apache pour que nous puissions avoir
accès à PHPMyAdmin. Pour cela, nous éditons un fichier apparu à l’installation de PHPMyAdmin :
/etc/httpd/conf.d/phpmyadmin.conf.
Il est déclaré dans ce fichier que le dossier /usr/share/phpmyadmin doit être mis en ligne avec
certains paramètres. C’est en effet ce que nous voulons puisque l’application web PHPMyAdmin
est présente dans ce répertoire.
Nous observons que seul 127.0.0.1 (l’ordinateur local) est autorisé à accéder à PHPMyAdmin
(paramètre Allow From). Pourtant, nous souhaitons gérer les bases de données depuis notre
ordinateur client. Nous ajoutons donc 192.168.1.7 (qui est l’adresse du PC client) après 127.0.0.1.
Les Alias sont les chemins qui pointeront vers PHPMyAdmin.
C’est en entrant http://192.168.1.9/phpmyadmin, http://192.168.1.9/phpMyAdmin ou
http://192.168.1.9/mysqladmin que nous pourrons accéder à PHPMyAdmin.
Souhaitant avant tout tester la validité de l’utilisateur projet, nous nous connectons avec (nom
d’utilisateur ‘‘projet’’ et mot de passe ‘‘projet’’ comme définis précédemment).
Cette page récapitule l’état du serveur (nom de machine, version des composants, …), les
paramètres utilisateur (langue utilisée, style de l’interface, taille du texte, …) et permet d’accéder
aux bases de données pour les gérer. On observe d’ailleurs dans le menu de gauche la présence
de la base projetdb.
Dokeos est une plateforme de formation en ligne. C’est un logiciel libre puisqu’il est
distribué sous licence GNU/GPL. Il est donc possible de le modifier selon ses souhaits.
Dokeos possède diverses fonctions : des outils de communication intégrés (forum, chat,
visioconférence), de gestion des groupes donnant accès à un espace de documents partagés ainsi
qu’à un forum privé. En outre, un module de liens permet à l’enseignant de donner accès aux
apprenants à des ressources complémentaires, le tout de manière organisée. Par ailleurs, le
module d’évaluation possède de multiples fonctionnalités telles que les questionnaires à choix
multiples, les questions ouvertes, fermées ou encore les images cliquables. Enfin, un outil
d’enquête permet d’avoir un retour sur expérience auprès des apprenants.
Cette plateforme de formation gère l’import et l’export de documents au format SCORM*,
ce qui lui permet d’être compatible avec les autres plateformes de e-learning.
Ajoutées au fait que le logiciel soit disponible dans 34 langues, ces raisons font que
l’adoption de Dokeos est réelle et massive. On évalue son nombre d’utilisateurs à 2 millions dans
le monde.
En France, la plateforme est adoptée par de nombreuses universités comme celle de Dijon
ainsi que de plus en plus de collèges et de lycées. Avec le perfectionnement de la plateforme et sa
maîtrise croissante par les formateurs, les usages évoluent. Alors que ce type d’outil servait
principalement aux formations TICE (Technologies de l’Information et de la Communication pour
l’Éducation) donc à enseigner des notions relatives à l’informatique aux personnels éducatif et
administratif, certains professeurs tendent à l’utiliser pour compléter leurs cours traditionnels.
Les trois éléments requis pour procéder à l’installation de la plateforme Dokeos sont un
serveur Web, PHP et MySQL. Ceux-ci étant présents et correctement configurés, nous pouvons
alors commencer.
Tout d’abord, nous nous connectons non plus avec l’utilisateur root mais avec projet. Cela
est nécessaire car nous allons placer Dokeos dans le répertoire public_html de l’utilisateur projet
(on conserve donc une certaine cohérence). De plus, les tâches que nous allons effectuer ne
nécessitent pas de manipuler des données du système d’exploitation.
Ainsi, dans le terminal de la machine cliente, nous entrons :
$ ssh projet@192.168.1.9
Le mot de passe de l’utilisateur projet nous est demandé.
On télécharge alors Dokeos sur son site officiel. Cela se présente sous la forme d’une
archive zip contenant l’ensemble des fichiers composant la plateforme.
La commande à entrer est
$ wget http://www.dokeos.com/download/dokeos-1.8.6.1.zip
Maintenant, modifions les droits sur les dossiers où les formateurs seront amenés à
envoyer des fichiers. Par défaut, sous Linux seul l’utilisateur possédant un répertoire peut y écrire
des fichiers. Or, lorsque des fichiers sont envoyés avec Dokeos, le système considère que ce n’est
pas l’utilisateur qui crée le fichier mais un tiers. Il faut donc permettre à tous de lire, écrire et
exécuter des fichiers dans les dossiers en question. Ces dossiers sont : main/inc/conf/,
main/upload/users/, main/default_course_document/, main/default_course_document/images/,
archive/, courses/ et home/. Pour cela, nous utilisons la commande chmod (change mode) suivie
de 777 qui donne tous les droits à tout le monde.
$ chmod 777 main/inc/conf/ main/upload/users/ main/default_course_document/
main/default_course_document/images/ archive/ courses/ home/
A l’étape suivante, Dokeos détermine si les logiciels requis (un serveur Web, PHP et MySQL)
sont présents ainsi que leurs paramètres.
Les paramètres recommandés et ceux qui sont actifs sur le serveur sont alors comparés. Notre
configuration est correcte.
L’activation du Short Open Tag* n’est pas recommandée par l’installeur mais l’est pourtant dans la
documentation. Dans le cas où la plateforme utiliserait cette extension mais qu’elle n’est pas
activée, nous rencontrerions des problèmes. Ici, elle est activée sur notre serveur mais l’installeur
indique ne pas en avoir besoin, nous laissons donc tel quel.
Les permissions sur les répertoires de Dokeos sont aussi vérifiées. Nous les avons
correctement attribuées à l’aide de la commande chmod précédemment.
Nous pouvons donc cliquer sur ‘‘Nouvelle installation’’ pour avancer dans le processus.
L’étape suivante nous permet d’entrer les paramètres de la base de données MySQL. Cette
base sera utilisée par Dokeos pour stocker des éléments tels que les utilisateurs (formateurs et
apprenants), les données relatives aux cours ou encore les messages échangés.
Nous renseignons les paramètres nécessaires à ce que Dokeos puisse se connecter. Ainsi,
dans ‘‘Hôte base de données’’ nous mettons ‘‘localhost’’ ce qui correspond à l’ordinateur local.
Nous avons précédemment défini un utilisateur et un mot de passe dédié à notre projet, nous les
entrons. Par ailleurs, il faut indiquer le nom de la base de données utilisée. Notons que Dokeos
propose d’utiliser plusieurs bases de données notamment pour séparer les utilisateurs du reste.
Puisque nous ne comptons pas créer un grand nombre d’utilisateurs, nous n’allons pas exploiter
cette possibilité.
Nous effectuons un test des paramètres en cliquant sur le bouton ‘‘Vérification de la
connexion à la base de données’’. Il ne nous renvoie pas d’erreur, il est donc possible de passer à
la suite en cliquant sur ‘‘Suivant’’.
Il nous est alors demandé de définir les paramètres généraux de configuration de Dokeos
tels que la langue, les données de contact de l’administrateur ou encore le nom donné au site.
Nous entrons les éléments présents sur la capture ci-dessous.
Nous validons, ce qui nous permet d’accéder au récapitulatif de l’ensemble des paramètres
entrés lors de l’installation.
Elle nous propose de nous identifier sur la plateforme, ce que nous pouvons faire avec le
login et le mot de passe que nous avons fourni lors de l’installation.
Il s’agit ici de donner une procédure pas à pas permettant de prendre en main rapidement
la plateforme de e-learning. En premier lieu, il faut créer des utilisateurs. En effet, seul un compte
administrateur, dont la fonction première est de modifier les paramètres globaux de Dokeos, est
présent après la fin de l’installation. Nous étudierons par la suite comment créer un cours et
transposer techniquement la méthodologie étudiée précédemment dans ce rapport.
Nous cliquons sur ‘‘Configuration’’ dans la partie Portail, puis sur ‘‘Portail’’. Les paramètres
suivants nous sont alors proposés.
Si nous sélectionnons ‘‘Oui’’, alors n’importe qui peut librement s’inscrire sur la
plateforme. A première vue, c’est la solution qui semble la plus simple pour l’administrateur
puisque chaque utilisateur de la plateforme s’occupe de son inscription de A à Z. Cependant, le
risque est l’inscription d’individus extérieurs au public visé ; ceux-ci seraient alors en mesure de
suivre des cours. L’administrateur doit donc imposer un filtre pour éviter cette situation. Dès lors,
il va sélectionner une autre option ou, par exemple, protéger le répertoire par un mot de passe
grâce à la méthode des .htaccess* (mot de passe qui devra bien sûr être divulgué à tous les
utilisateurs potentiels de la plateforme).
L’option ‘‘Non’’ empêche quiconque de s’inscrire. Cela signifie que chaque compte devra
être entré manuellement par l’administrateur. Cette méthode est très contraignante, pour cette
raison elle est peu adoptée en pratique.
La dernière option est la plus conciliante. ‘‘Après approbation’’ signifie que n’importe qui
peut créer un compte utilisateur, mais que les informations relatives à celui-ci sont envoyées à
l’administrateur par mail. Celui-ci doit valider l’inscription pour que l’utilisateur accède à la
plateforme. Nous choisissons cette option pour nos tests.
En se rendant sur la page d’accueil en tant que visiteur, un lien ‘‘Inscription’’ est
disponible. On remplit alors les informations de base d’un compte utilisateur : le login, le mot de
passe, le nom, le prénom et l’adresse mail.
Une fois l’inscription validée, l’administrateur reçoit un mail indiquant l’invitant à se rendre
dans les options de l’utilisateur sur la plateforme afin gérer ses options.
Nous nous relogguons en administrateur. On clique alors sur ‘‘Administration’’ puis ‘‘Liste
des utilisateurs’’ dans la partie ‘‘Utilisateurs’’. Le profil que nous avons créé, ‘‘Nicholas Rush’’, est
apparu ; nous l’éditons.
Nous utiliserons cet utilisateur pour créer un cours, nous sélectionnons donc le profil
‘‘Formateur’’ et rendons son compte actif.
Création de la formation
Un menu est présent à droite de l’écran, il permet de créer une formation ou d’en rejoindre
une. Nous accédons à la page de création via ce menu.
On arrive alors sur l’interface de gestion de formation. Celle-ci est divisée en plusieurs
parties. La première est dédiée à la conception du cours. Elle permet au formateur de renseigner
sa description, de le gérer, de créer ou modifier des tests ainsi que d’administrer ses ressources
(en particulier les documents, les liens vers des compléments d’information et un glossaire). La
deuxième partie est liée à la communication avec les apprenants, avec des outils comme un wiki,
un chat ou encore un forum. Enfin, la dernière concerne les paramètres généraux de la formation
et sa maintenance.
Nous allons détailler ici les outils mis à disposition par la plateforme pour réaliser le cours.
Dans l’interface de gestion de la formation, nous cliquons sur Cours. La possibilité de créer
un cours nous est alors offerte.
La plateforme nous demande un nom pour le cours que nous allons créer. Nous le
nommons RV042.
L’interface Dokeos AUTEUR s’offre alors à nous.
Dokeos définit deux objets différents dans un cours : les sections et les pages. Une section
correspond à un chapitre, qui va regrouper plusieurs pages. Pour rejoindre les idées développées
précédemment dans le rapport, nous pouvons dire que chaque page correspond à un grain
pédagogique
La structure typique d’un cours sous Dokeos est donc la suivante :
• Section 1
Page 1
Page 2
• Section 2
Sous-section 1
Page 1
Page 2
Sous-section 2
Page 1
• Section 3
Page 1
Nous commençons donc par créer une section en cliquant sur ‘‘Nouvelle section’’ dans le
menu supérieur.
Une fois celle-ci créée, nous pouvons ajouter une page en cliquant sur ‘‘Ajouter une
activité’’.
L’interface d’édition de page apparaît alors.
Dokeos présente l’avantage de rendre les formations indépendantes les unes des autres du
point de vue des ressources. Ajouter l’image revient donc à ajouter une ressource à la formation. Il
est donc possible de la réutiliser simplement.
A noter qu’une personne n’ayant pas les droits suffisants ne peut ni ajouter ni modifier de
ressources présentes dans les répertoires dédiés à la formation.
Finalement, nous avons transcrit la documentation suivant les sections et les pages ci-
dessous :
Notre cours de test maintenant réalisé, nous pouvons désormais voir l’interface générale
de lecture telle qu’elle apparaît aux apprenants.
Ce cours reste néanmoins peu vivant. En effet, il n’est composé que de textes et d’images.
Étudions donc les possibilités offertes par le web pour enrichir les pages.
Adobe Flash permet d’ajouter du contenu dynamique. Un objet en Flash est de forme
rectangulaire et occupe un espace défini dans la page. Cet objet peut être de plusieurs natures :
une animation : elle a pour but d’expliquer une notion du cours en affichant des éléments ainsi
que leurs interactions ou leurs liens (une hiérarchie, une causalité, …). La conception de telles
animations requiert d’utiliser des logiciels payants. Les plus connus sont Adobe Flash et SWiSH.
Pour insérer une animation, le formateur doit cliquer sur le bouton dans la barre d’outils lors
de l’édition d’une page. Le principe est le même que pour les images, il faut envoyer l’animation
(au format swf) sur le serveur, puis la sélectionner pour l’insérer.
une vidéo : Dokeos possède un outil adapté, le FLV media player. FLV est le format des vidéos
flash. Il est possible pour un formateur de convertir des vidéos des formats usuels (mov, mp4, avi,
…) vers flv à l’aide de logiciels comme Pocket DivX Encoder ou des sites Internet comme
http://www.media-convert.com.
L’utilisation des formats usuels directement dans une page web n’est pas recommandée car le
navigateur fait alors appel à des logiciels externes comme Quicktime, VLC ou Windows Media
Player : le résultat s’affiche différemment selon la configuration système de chaque utilisateur et
n’est pas garanti. Adobe Flash, même s’il s’agit d’une technologie imparfaite, présente l’avantage
d’être présente sur quasiment tout le parc informatique mondial de machines clientes.
Pour insérer une vidéo, il faut cliquer sur , envoyer le fichier flv sur le serveur puis le
sélectionner.
Le FLV media player apparaît sous la forme suivante :
de l’audio. Dokeos propose par défaut qu’un flux audio soit attribué à une page web. On peut
configurer ce paramètre en cliquant sur ‘‘Audio’’ en haut de la page dans Dokeos AUTEUR.
Il est situé au-dessus de la structure du cours, dans la partie gauche de l’écran. Cette méthode
présente un inconvénient majeur : la lecture se lance dès l’ouverture de la page (méthode
autoplay). Or, l’un des points à respecter pour le e-learning est la sensation de maitrise du
contenu par l’utilisateur ainsi que celle de sa progression. Ce n’est pas le cas si on lui impose
d’écouter un fichier audio. C’est pour cette raison que nous devons choisir une autre solution. La
plus adéquate est l’inclusion du lecteur audio en Flash dans la page elle-même, à l’image de ce
que nous avons fait avec la vidéo.
Pour ce faire, il faut cliquer sur dans les outils d’édition de cours, envoyer le fichier mp3 puis
le sélectionner pour l’insérer dans la page. Dans cette configuration, nous avons le choix d’activer
ou non l’autoplay.
Pour le mettre en œuvre, nous envoyons sur le serveur les fichiers javascript jquery.js et
jqueryui.js. Nous insérons alors les lignes suivantes dans le <head> de la page (c’est-à-dire
l’entête).
$(document).ready(function() {
$('#hide1').hide(); Déclaration du type de langage utilisé
$(".showhide1").click(function(){
entre les balises
$("#hide1").slideToggle("slow");
});
});
</script>
Si clic sur un lien de classe showhide1, alors on effectue
l’action slideToggle sur la division hide1.
slideToggle affiche ou masque alternativement lentement le
paragraphe.
La méthode slideToggle est décrite dans la librairie jQueryUI.
Passons à un exemple avec nos travaux. Sur la page présentée, relative aux caractéristiques
physiques du RV042, se trouvent des liens ‘‘More Details’’. En cliquant sur l’un d’eux, le texte
masqué apparaît. Si l’on reclique, il disparaît. L’apprenant obtient donc la quantité de détails
souhaitée. De plus, le contenu initialement affiché est moins volumineux, ce qui rebute moins
l’apprenant car il n’y a pas de bloc de texte imposant.
Les deux figures suivantes montrent l’affichage avant et après le clic sur ‘‘More Details’’.
Dans une procédure de formation à distance, il faut s’assurer que les apprenants ont
correctement assimilé les notions présentes dans le cours. Cela se fait sous la forme d’une
évaluation. Chacune d’entre elle est composée d’un certain nombre de questions, pas
nécessairement du même type mais portant sur un même thème
Le module de gestion de tests de Dokeos propose les types de questions suivants :
Choix multiples à une seule réponse
Choix multiples à plusieurs réponses
Remplissage de blancs dans un texte
Apparier, c’est-à-dire faire correspondre une série de propositions avec une série
de réponses
Question ouverte
Zone sur image (l’apprenant identifie des zones demandées par le formateur)
Pour créer un test, nous cliquons sur ‘‘Test’’ sur la page de gestion de la formation puis sur
‘‘Créer un nouveau test’’. Nous renseignons alors son nom. Nous choisissons ‘‘RV042 Test’’ pour
nos expérimentations. Des paramètres avancés sont disponibles, comme sélectionner si l’on
souhaite afficher une ou plusieurs questions par page ou encore délimiter un temps imparti pour
que les apprenants effectuent le test.
Nous pouvons alors créer les questions qui vont composer le test.
Dans notre démarche, nous allons tester un questionnaire à choix multiples et à réponses
multiples, ainsi qu’une question ouverte.
Notons que la création d’une question ouverte empêche de donner son score à l’étudiant
en fin de test. En effet, l’évaluation ne peut être faite que par le formateur seul qui va entrer
manuellement la note obtenue.
La formation, outre la lecture du cours et les tests, doit s’accompagner d’une communication entre
utilisateurs.
L’export du cours se réalise sous forme d’objet SCORM. Il permet à celui-ci d’être porté sur
une autre plateforme Dokeos ou toute plateforme de e-learning capable de traiter un cours au
standard SCORM.
Un tel cours se présente sous la forme d’un fichier zip. Cette archive contient l’ensemble
des ressources du cours comme les documents, les animations, les images mais aussi la manière
dont est structuré le cours avec les différentes sections et les pages qui le composent.
Pour exporter, nous cliquons sur ‘‘Cours’’ dans l’interface de gestion de formation.
Maintenant que nous avons étudié la prise en main générale de la plateforme Dokeos pour
un formateur, intéressons-nous au fonctionnement de Dokeos et aux modifications que nous
avons faites.
3.4.4. Fonctionnement
La première chose que nous pouvons remarquer par rapport au fonctionnement de Dokeos
est que celui-ci est complexe à appréhender. En effet, l’archive zip qui permet d’installer la
plateforme, c’est-à-dire celle qui est disponible sur le site officiel, fait une trentaine de
mégaoctets pour la version actuelle (la 1.8.6-1).
Décompressée, elle pèse 92,9 Mo ce qui est très volumineux pour une application web. Par
ailleurs, ce sont 9 570 éléments (fichiers et dossiers) qui sont présents. Il nous est donc
impossible de détailler l’ensemble de l’application.
Le contenu de l’application est présent dans le dossier main/. Toutes les pages de la partie
administration sont dans main/admin/. Les fichiers de localisation peuvent être trouvés dans
main/lang/. Les fichiers des cours sont dans courses/.
La base de données
Figure 3.4.4.1.1. : Aperçu des tables propres à la seule formation Cisco Routers Study (CR01).
Généré avec PHPMyAdmin.
Nous avons tenté de créer un modèle entité-relation simplifié résumant les interactions
entre utilisateurs, formations, cours et messages.
Modèle ER
Le premier problème est que Dokeos n’est pas conçu pour utiliser la technologie HTTPS.
HTTPS est la version sécurisée de HTTP* dont l’utilité est de chiffrer les données transitant entre le
client (le navigateur web côté utilisateur) et le serveur.
Cela signifie que l’on peut intercepter le nom d’utilisateur et le mot de passe à partir du
moment où l’on est dans le même réseau.
Pour vérifier cela, nous utilisons un analyseur de trafic : Wireshark. C’est un logiciel libre
qui capture les paquets circulant sur l’interface réseau de l’ordinateur.
On voit sur la capture d’écran ci-dessus un paquet émis du client vers le serveur. Il
contient les informations d’identification envoyées par le navigateur web.
Le login et le mot de passe sont lisibles par l’analyseur de trafic. Cela peut potentiellement être
problématique dans un réseau local où un individu peut connaitre le mot de passe d’un utilisateur
de la plateforme – à condition qu’il capture au bon moment.
Un autre problème lié au web est la possibilité de vol du cours. En effet, une page se
présentant sous la forme de texte et d’images peut facilement se faire copier intégralement.
Deux solutions existent pour parer à ce problème.
La première est d’utiliser une protection avec le langage JavaScript. C’est une méthode qui
a été beaucoup utilisée au début des années 2000. Elle consiste à afficher un message d’erreur
lorsque l’utilisateur tente de sélectionner du texte dans la page. Mais elle présente un
inconvénient majeur : l’utilisateur ne peut plus faire de clic droit, donc il n’a plus accès au menu
contextuel de son navigateur (pourtant utile pour ouvrir un lien dans un nouvel onglet/une
nouvelle fenêtre, ou encore afficher des propriétés relatives à la page). Par ailleurs, on peut
facilement contourner cette protection en ouvrant le code source et en y extrayant le contenu.
La deuxième solution est d’utiliser la technologie Adobe Flash pour l’ensemble du cours, y
compris pour le texte et les images. Cependant, cela demande beaucoup de travail pour le
formateur.
4 Bilan
4.1. Résultats obtenus et difficultés rencontrées
Tout d’abord, nous pouvons dire que le résultat est globalement positif. En effet, la
plateforme que nous avons installée est tout à fait fonctionnelle et apte à recevoir des cours. Nous
avons expliqué en détails comment concevoir des cours interactifs et les mettre en ligne avec la
plateforme. Nous avons néanmoins rencontré des difficultés.
Lors de l’installation de PHP, MySQL et PHPMyAdmin, nous avons rencontré un problème.
Initialement, nous pensions qu’installer le seul paquet phpmyadmin suffisait pour que PHP et
MySQL soient aussi mis en place. C’est logique, car PHPMyAdmin repose sur la technologie PHP
pour administrer des bases de données MySQL. Et, lorsque nous avons installé phpmyadmin (seul,
avec la commande ‘‘yum install phpmyadmin’’) des paquets comme php et mysql étaient fournis
avec. Pourtant, nous nous sommes rendus compte que le service mysqld, c’est-à-dire le serveur
MySQL, était absent. Il nous a fallu plusieurs heures pour rechercher le bon paquet à installer. Il
s’agissait de ‘‘mysql-server’’. Ce problème provient du dépôt RPMForge. Les mainteneurs ont
oublié de lier phpmyadmin à mysql-server.
Après avoir installé les applicatifs serveurs, une panne matérielle est survenue sur la
machine. Celle-ci ne démarrant plus, nous avons testé les composants pour finalement arriver à la
conclusion que la carte mère était hors d’usage. Il a donc fallu la changer ainsi que le processeur.
Une autre difficulté a été d’approcher le fonctionnement de la plateforme Dokeos. En effet,
elle est composée de près de 10 000 fichiers à l’origine, et son installation crée 82 tables sans
compter les formations. Détailler le fonctionnement nous a semblé donc impossible aussi bien du
point de vue des fichiers que du côté de la base de données.
Au cours de nos expérimentations, nous avons atteint la limite posée par PHP pour l’envoi
de fichiers. Cette limite est déterminée par la variable upload_max_filesize dans le fichier
/etc/php.ini. Par défaut à 2M (2 mégaoctets), nous l’avons passée à 10M.
Il est possible de prolonger notre travail. En effet, il existe des modules complémentaires
pour Dokeos, intéressants mais complexes à mettre en place. C’est le cas pour la fonctionnalité
vidéoconférence. Celle-ci nécessite d’installer l’applicatif Red5 ainsi qu’une extension spécialisée
pour Dokeos sur le serveur. Ce déploiement est connu pour être particulièrement difficile et
source de bugs sur la plateforme. De plus, la documentation (officielle ou non) n’existe pas ou peu
à ce sujet.
Un autre axe que nous n’avons pas développé est la mise à disposition sur Internet de la
plateforme. En effet, avec notre configuration, seul le réseau local a accès à la plateforme. L’idée
générale est d’ouvrir le port 80 sur le modem/routeur pour que toute requête vers l’adresse IP du
modem/routeur côté Internet soit routée vers notre serveur. Puisque l’architecture a été déployée
sur une ligne avec une IP dynamique, il sera nécessaire de s’abonner à un service de type DynDNS
pour que les visiteurs puissent accéder à la plateforme via une adresse qui ne change pas.
Alternativement, Dokeos peut tout à fait s’installer sur une architecture radicalement différente de
la nôtre comme sur un serveur mutualisé ou dédié dans un datacenter. Cela évite la problématique
du routage avec le réseau local et on peut penser que l’accès sera plus rapide pour les visiteurs
plutôt qu’avec une ligne ADSL classique comme celle qui a été utilisée.
Conclusion
Il nous a été demandé de réaliser un projet tuteuré dans le cadre de notre deuxième année
de DUT Réseaux et Télécommunications. Celui-ci porte sur le e-learning, et plus particulièrement
sur la façon dont un formateur doit réaliser un cours en ligne. Par ailleurs, nous avons du mettre
en place l’architecture nécessaire pour que le cours soit disponible. La spécialité de notre DUT est
adaptée à ce sujet : en effet, il requiert des connaissances en réseaux et en informatique, matières
qui sont dispensées en Réseaux et Télécommunications.
Nous nous sommes premièrement penchés sur la méthodologie : nous avons abordé les
différents points qui font la réussite d’un cours en ligne. En effet, créer un cours en ligne suppose
d’utiliser des techniques différentes d’un cours magistral. Il faut en effet profiter des possibilités
offertes par le multimédia via les technologies du Web 2.0.
Puis nous avons mis en place une architecture réseau adaptée au e-learning. Cela passe
par l’installation d’un ensemble de logiciels, du système d’exploitation à la plateforme Dokeos en
passant par les applicatifs serveurs (Apache, PHP et MySQL). Nous avons étudié comment créer un
cours sur Dokeos et jouer pleinement le rôle de formateur dans le cadre de l’enseignement à
distance.
Enfin, nous avons dressé un bilan de nos expérimentations. L’architecture installée est
fonctionnelle donc nous avons globalement accompli le travail demandé. Celui-ci peut cependant
être complété par l’ajout de modules supplémentaires qui peuvent s’avérer utiles dans le cadre du
e-learning.
Questionnaire en anglais
PROJECT TITLE: e-learning : conception et deploiement
Question Eight: What technical skills did you gain from doing this project?
We gained various technical skills from doing this project. First, we improved our networking skills
because we now know every step needed to set up a LAMP server from scratch. Relating to
computing skills, this project allowed us to implement Flash and JavaScript, technologies that
haven't been studied during the DUT.
Question Ten: Was the project linked to your future studies or your future career?
As we would like to continue our studies and then work in the networking domain, this project is
linked to our future. Working as a system administrator means setting up machines (clients or
servers), and it's what we have done during our project.
Glossaire
Adobe Flash Technologie utilisée essentiellement pour l'animation des sites web. Elle
ajoute une part de créativité et d'interactivité que n’apporte pas le HTML.
GNU/GPL Acronyme pour General Public License. C'est une licence fixant les
conditions légales de distribution des logiciels libres du projet GNU :
ceux-ci sont modifiables et redistribuables à condition de préserver
l’utilisation de cette licence.
.htaccess fichier lu par le serveur web Apache. Il définit les paramètres d'accès au
répertoire. On peut par exemple y définir une restriction par login et mot
de passe ou au contraire permettre à tous de visualiser les fichiers
présents sous forme de liste.
HTML Acronyme pour Hyper Text Markup Language. Langage de programme
classique des pages web.
HTTP Acronyme pour Hyper Text Transfert Protocol. Il s’agit du protocole
utilisé pour transférer des données d’un serveur web vers un navigateur.
JavaScript Langage de programmation créé en 1995. Il est utilisé dans les pages
web dynamiques. Il est exécuté par le navigateur web. Il permet
notamment d’afficher ou de masquer du texte. Sa version actuelle est la
1.7.
jQuery Librairie JavaScript permettant d'afficher des effets graphiques et
d'ajouter de l'interactivité sur une page web. On associe jQuery avec
jQueryUI. jQuery est le cœur de la librairie définissant globalement le
fonctionnement des effets, jQueryUI définit la manière de fonctionner de
chaque effet indépendamment les uns des autres.
MySQL Serveur de base de données libre, travaillant de pair avec PHP pour
l’affichage de contenu dynamique dans une page web. Avec MySQL,
chaque base est attachée à un compte utilisateur qui est le seul (avec
root) à pouvoir les modifier.
PHP Acronyme pour Hypertext PreProcessor. Il s’agit d’un langage de
programmation libre pensé pour des applications sur Internet. Il permet
de modifier le contenu d’une page de manière dynamique en appelant
notamment des données présentes dans une base. Sa version actuelle est
la 5.3.2
SCORM Acronyme pour Sharable Content Object Reference Model. C’est une
spécification permettant de créer des objets pédagogiques structurés. Il
est possible de trouver, d’importer, de réutiliser et d’exporter des
contenus entre différentes plateformes.
Short Open Tag Permet, dans une page html, d’écrire en PHP sans ouvrir la balise
complète.
Exemple :
avec Short Open Tag : <? ?>
sans Short Open Tag : <?php ?>
TIC Acronyme pour Technologies de l’Information et de la Communication.
Elles regroupent les techniques utilisées dans le traitement et la
transmission des informations, principalement de l'informatique,
d'internet et des télécommunications.
WYSIWYG Acronyme pour What You See Is What You Get. C’est une technologie
permettant d’éditer des pages web sans avoir à écrire le code source
HTML, à la manière d’un traitement de texte.
Bibliographie
Ouvrage :
Sites web :
CentOS :
http://wiki.centos.org/AdditionalResources/Repositories
http://www.bulahema.com/old/en/node/190
http://dag.wieers.com/rpm/FAQ.php#B
Dokeos :
http://www.adapt.snes.edu/spip.php?article587
http://www.dijon.iufm.fr/IMG/pdf/090407_usages_evolues_dokeos.pdf
http://www.jeanphilippepernin.net/ressources/8.%20environnements%20informatiques%20pour%2
0l'apprentissage/4.%20ingenierie%20de%20la%20foad/documents/conception_vers_dokeos.pdf
http://tice.ujf-grenoble.fr/joomla/index.php/outils/51-dokeos?showall=1
http://www.guidecms.com/dossiers-cms/supports-de-formation/demarrer-avec-dokeos
http://www.dokeos.com/wiki/index.php/FAQ#Software_Requirements_for_Dokeos
http://www.dokeos.com/marketing022113456/french_186.pdf
Malgré ses qualités, Dokeos possède des défauts qui sont propres à toutes les applications web.