république algérienne démocratique et populaire université...
TRANSCRIPT
République Algérienne Démocratique et Populaire
Université Abou Bakr Belkaid– Tlemcen
Faculté des Sciences
Département d’Informatique
Mémoire de fin d’études
pour l’obtention du diplôme de Master en Informatique
Option: Génie Logiciel (G.L)
Thème Réalisation d’un outil auteur interactif et
social sous WordPress
Réalisé par :
- Meryem BENDELLA
- Salim Mohamed SAIDI
Présenté le 28 Mai 2015 devant le jury composé de MM.
- M. Abdelkrim BENAMAR (Président)
- M. Mohammed TADLAOUI (Encadreur)
- Mme. Amel HALFAOUI (Examinatrice)
- M. Amine BOUDEFLA (Examinateur)
Année universitaire : 2014-2015
Remerciement
C’est avec un grand plaisir que nous remercions :
Allah le tout puissant de nous avoir donné la force d’achever ce travail.
Notre encadreur, Mr Mohammed TADLAOUI qui nous a guidés et
soutenus tout au long de la préparation de notre mémoire et pour ses conseils et
son écoute.
Mr Abdelkrim BENAMAR, Mr Amine BOUDEFLA et Mme Amel
HALFAOUI pour avoir fait l’insigne honneur d’accepter de jurer notre travail.
Tous les enseignants du département d’informatique à qui nous devons
notre respect et reconnaissance.
Nous ne saurons oublier de remercier nos parents pour leur contribution,
leur soutien et leur patience, nos proches, nos amis et toutes les personnes qui
nous ont aidés par leur soutien permanent de près ou de loin de nos études.
Dédicace
Tout d’abord je tiens à remercier Dieu le tout puissant de m’avoir donné la santé, la volonté, le
courage et de m’avoir fourni sa bénédiction ;
Je dédie ce modeste travail ;
A la mémoire de ma grande mère paternel ;
A mon très cher père qui a toujours répondu présent dans les moments les plus difficiles, son
soutien, son encouragement m’ont toujours donné la force de poursuivre mes études ;
A ma très chère maman, qui a su me donner l'attention, l'affection, l'aide et l'amour qui m'ont
permis d'écrire ce mémoire dans de bonnes conditions. Aucune dédicace ne pourra compenser
les sacrifices de mes parents ;
A mes adorables frères Mohammed et Abdelghani ;
A ma très chère sœur Zineb et son mari Ali ;
A mes chères sœurs Amira et Zokha;
A ma grande mère, pour toutes ses prières ;
A mes oncles, mes tantes, mes cousines, mes cousins et toute ma famille ;
A Mokhtar Boumedyen BILLAMI pour ses encouragements, ses conseils, ses remarques
pertinentes et qui malgré l’éloignement m’a apporté une aide précieuse ;
A Mr Mohamed Messabihi pour ses encouragements, Mr Badr Benmammar et à tous mes
enseignants ;
A mon binôme Salim ;
A mes amies, mes collègues de l’équipe GDG Tlemcen pour leur soutien moral durant
l’élaboration de ce travail et à tous mes camarades de promotion ;
A tous ceux et toutes celles qui m’ont soutenu de près ou de loin durant cette année ;
A tous qui me sont chers.
Meryem
Dédicace
Avant tout je remercie Dieu qui m’a donné le courage, la patience et la volonté ;
Je dédie ce mémoire ;
A mes très chers parents qui ont toujours été là pour moi, et qui m'ont donné un magnifique
modèle de labeur et de persévérance. J'espère qu'ils trouveront dans ce travail toute ma
reconnaissance et tout mon amour ;
A ma sœur et mon petit frère Ryad, Les mots ne suffisent guère pour exprimer l’attachement,
l’amour et l’affection que je porte pour vous ;
A mon binôme Meryem ;
A mes amis, et A toute personne qui a contribué de près ou de loin à la réalisation de ce projet
de fin d’étude.
Salim
1
Table des matières
Introduction générale ................................................................................................................. 3
Contexte ........................................................................................................................................ 3
Problématique ............................................................................................................................... 4
Contribution .................................................................................................................................. 4
Plan du mémoire ........................................................................................................................... 4
Chapitre I : État de l'art
I- Introduction ........................................................................................................................... 6
II- LMS (Learning Management System) .................................................................................. 6
II-1 Moodle .......................................................................................................................... 6
II-2 Claroline ........................................................................................................................ 7
II-3 Blackboard .................................................................................................................... 7
III- LCMS (Learning Content Management System) .............................................................. 7
III-1 Comparaison entre LMS et LCMS ............................................................................... 7
III-2 WordPress et ses extensions.......................................................................................... 8
a- Sensei ............................................................................................................................ 8
b- CourseWare ................................................................................................................... 9
c- WPLMS ........................................................................................................................ 9
d- Namaste ......................................................................................................................... 9
e- CoursePress ................................................................................................................... 9
IV- Outils auteurs .................................................................................................................. 10
IV-1 Opale Scénari .............................................................................................................. 10
IV-2 Articulate studio .......................................................................................................... 10
IV-3 Adobe Captivate .......................................................................................................... 11
IV-4 Lectora Inspire ............................................................................................................ 11
V- Discussion ........................................................................................................................... 11
VI- Conclusion ...................................................................................................................... 13
Chapitre II : Conception et réalisation de StudyPress
I- Introduction ......................................................................................................................... 14
II- Processus de développement ............................................................................................... 14
III- Etude de l’existant ........................................................................................................... 17
III-1 Critiques ...................................................................................................................... 17
2
IV- Définition de StudyPress ................................................................................................. 18
V- Gestion des tests et anomalies ............................................................................................. 18
V-1 Tests ............................................................................................................................ 18
a- Tests unitaires ............................................................................................................. 19
b- Tests d'intégration ....................................................................................................... 19
c- Tests d'acceptation ...................................................................................................... 19
V-2 Anomalies ................................................................................................................... 20
VI- Sprints ............................................................................................................................. 20
VI-1 Itération 1 .................................................................................................................... 21
VI-2 Itération 2 .................................................................................................................... 21
VI-3 Itération 3 .................................................................................................................... 21
VI-4 Itération 4 .................................................................................................................... 22
VII- Conception ...................................................................................................................... 22
VII-1 Architecture ................................................................................................................. 22
VII-2 Diagramme de cas d’utilisation ................................................................................... 23
VII-3 Diagramme de séquence ............................................................................................. 24
VII-4 Modèle de données ...................................................................................................... 27
VII-5 Classes de traitements ................................................................................................. 29
VIII- Application ...................................................................................................................... 32
VIII-1 Back Office ............................................................................................................. 32
VIII-2 Front Office ............................................................................................................. 39
IX- Migration des données .................................................................................................... 42
X- Outils de développement ..................................................................................................... 43
VI-2 Gestion de projet « Trello » ........................................................................................ 43
VI-3 Modélisation « starUML » .......................................................................................... 44
VI-4 Programmation ............................................................................................................ 44
VI-5 Gestion de version « SVN » ........................................................................................ 44
VI-6 Google Docs ................................................................................................................ 45
XI- Usage de studypress ........................................................................................................ 45
XII- Conclusion ...................................................................................................................... 47
Conclusion générale .................................................................................................................. 48
Références bibliographiques .................................................................................................... 49
Liste des figures ......................................................................................................................... 52
Liste des tableaux ....................................................................................................................... 53
Liste des abréviations ................................................................................................................. 54
Introduction générale
3
Introduction générale
Contexte
La connaissance scientifique progresse sans cesse, la quantité de savoir à acquérir est de
plus en plus importante et les sciences de l’enseignement évoluent. En particulier,
l’apprentissage en ligne ou « e-learning » s’est développé dans le sillage des Nouvelles
Technologies de l’Information et de la Communication (NTIC). Il s’agit en fait d’une
évolution rapide des moyens technologiques dans le domaine d’apprentissage grâce à
l’utilisation du réseau Internet qui est devenu un outil incontournable d'échange
d'information pédagogique, dont la diffusion et la gestion des connaissances se font à
l’aide des plateformes e-Learning.
Celles-ci créent un portail qui fournit un soutien à une communauté d'apprenants
autour de contenus et d'activités d'apprentissage. Ce sont des outils logiciels dont le rôle
est de permettre le pilotage des enseignements à distance [1]. Parmi ces outils on distingue
les LMS qui sont des solutions logicielles conçues pour la gestion des cours, le suivi des
apprenants et la diffusion des contenus d’apprentissage. Certaines plateformes peuvent
être orientées prioritairement vers la gestion du contenu. Le premier cas est typique des
Learning Content Management System (LCMS) permettant de créer, stocker, réutiliser,
gérer et distribuer du contenu pédagogique. Mais ces deux outils sont très proches et
complémentaires. [2]
On distingue également les Content Management System (CMS) qui sont des
systèmes de gestion de contenu permettant facilement la création du contenu sur les sites
Internet, sans avoir de connaissances techniques particulières [2]. De nombreux existent
dont WordPress est parmi les plus populaires et utilisés.
Les activités pédagogiques sont devenues de plus en plus riches. Cependant, pour
créer un contenu e-learning de qualité, nous avons besoin d'un outil pour faciliter ce
travail. Les outils auteurs offrent de nombreuses fonctionnalités afin d’aider l'auteur à
créer un bon contenu pour les cours [3].
Introduction générale
4
Problématique
Tous ces outils et plateformes ont permis de démocratiser la production e-learning. En
effet, ils répondent à plusieurs besoins et problèmes, tel que la manière de gérer et faire
évoluer toute cette nouvelle matière pédagogique. Les outils auteurs permettent quant à
eux de créer des scénarisations pédagogiques beaucoup plus évoluées, et offrent aux
utilisateurs une grande souplesse et facilité d'utilisation. Mais malgré ces avantages,
certains outils e-Learning se heurtent à plusieurs problèmes. D’un côté, le manque
d’interactivité du contenu. Le fait de rendre un module interactif, cela consiste à créer des
modules interactifs plus stimulants pour les apprenants en retenant mieux leur attention
pour leur permettre d’assimiler les informations et les motiver. D’un autre côté, le manque
d’interactions sociales entre les apprenants et entre les formateurs et les apprenants,
lorsque qu’ils sont engagés dans une démarche de collaboration à distance. L’aspect de
collaboration entre les formateurs représente aussi un point faible. La gestion de ces
différentes problématiques est devenue de plus en plus importante. Les réseaux sociaux
représentent une structure sociale dynamique offrant des solutions pour combler ce
manque de collaboration et interactions sociales.
Contribution
Vue la nécessité d’utiliser des outils auteurs qui permettent de produire des contenus e-
learning plus élaborés répondant mieux aux exigences des apprenants et formateurs,
l’importance des réseaux sociaux pour diffuser le contenu, notre contribution consiste à
proposer un outil auteur qui permet d’ajouter :
- L’aspect interactivité. En effet, réaliser simplement et efficacement des
formations interactives, permettre aux formateurs d’intégrer facilement des
ressources multimédia. Ainsi, motiver les apprenants et améliorer la manière
d’assimiler les connaissances.
- L’aspect couplage avec les réseaux sociaux. De ce fait, une forte intégration de
cet outil avec les réseaux sociaux tel que Facebook, Twitter, Google+ et LinkedIn
pour la diffusion du contenu.
Plan du mémoire
Notre mémoire est structuré comme suit :
Introduction générale
5
Chapitre 1 : présente la notion de e-Learning, LMS et LCMS ainsi les principales
plateformes et leurs utilités. Ensuite, l’efficacité des outils auteurs en donnant
quelques exemples des plus populaires. En fin, une étude comparative de certains
outils e-learning.
Chapitre 2 : donne un aperçu détaillé de l’application que nous avons élaboré
«StudyPress » allant de la phase processus de réalisation et étude de l’existant.
Ensuite les différentes étapes suivies dans sa conception et son développement.
En fin, son utilité dans certaines plateformes.
Nous terminerons ce document par une conclusion générale qui résume notre travail avec
des perspectives pour les futurs travaux de ce projet.
Chapitre I :
État de l’art
Chapitre I État de l’art
6
I- Introduction
Les TIC (Technologies de l’Information et de la Communication) occupent maintenant
une place importante dans notre société. En effet, elles sont de plus en plus intégrées dans
les milieux scolaires et universitaires. De ce fait, elles interviennent dans plusieurs de nos
activités, dont le « e-learning » fait partie.
Le e-learning a été principalement conçu pour faciliter l’enseignement à distance.
Enseigner autrement en proposant une formation plus souple, en développant
l’interactivité pour amener les étudiants à être plus actifs et plus autonomes.
Une plateforme e-Learning peut être vue comme une plateforme de formation à distance.
C’est un logiciel qui héberge du contenu pédagogique pour assister et conduire des cours
et des formations en ligne. Les deux principaux types de plateformes e-Learning sont
LMS et LCMS. L'utilité de ces types de plateformes est de regrouper un ensemble de
fonctionnalités sur une même plateforme afin de supporter les différents acteurs de la
formation (apprenants, enseignants, tuteurs, etc).
II- LMS (Learning Management System)
LMS est essentiellement utilisé pour gérer et diffuser des modules de e-learning. C’est un
système web de gestion de cours qui permet aux apprenants, à travers un navigateur Web,
d’accéder à des cours mis à disposition par les enseignants [5].
Le nombre de plateformes LMS ne cesse de croître, il est donc impossible de les recenser
toutes. Nous citons ci-dessous quelques exemples.
II-1 Moodle
Moodle1 est l’acronyme de Modular Object-Oriented Dynamic Learning Environment.
C’est une plateforme d’apprentissage en ligne sous licence libre. Cette plateforme a été
conçue et réalisé par Martin Dougiamas, dans le cadre de sa thèse de doctorat. Nous
pouvons l’utiliser pour délivrer un contenu ou donner des cours en ligne [6] [7]. Il s’agit
d’un outil très riche. C’est la plateforme adopté par l’université de Tlemcen « elearn2 ».
1 https://moodle.org/ 2 http://elearn.univ-tlemcen.dz/
Chapitre I État de l’art
7
II-2 Claroline
Claroline3 est une plateforme d’apprentissage et de travail collaboratif en ligne. C’est une
plateforme open source distribuée gratuitement. Elle permet de créer et d'administrer des
formations et des espaces de collaboration en ligne. Adaptable à différents contextes de
formation. Elle est utilisée dans les écoles et les universités, les centres de formation, les
associations et les entreprises. Elle est personnalisable et offre un environnement de
travail flexible [7].
II-3 Blackboard
Blackboard4 est un système de gestion d’apprentissage crée par une société à Washington.
Elle est conçue pour la gestion de la pédagogie en ligne (e-learning). Elle comporte des
outils d'apprentissage en ligne efficaces qui améliorent l’expérience d’apprentissage [8].
Cette plateforme propose une collaboration en ligne et en temps réel. Ainsi, un accès au
contenu pour les apprenants via leurs ordinateurs de bureau ou leurs téléphones mobiles.
C’est ce que distinct cette plateforme par rapport aux deux autres.
III- LCMS (Learning Content Management System)
LCMS est un système pour créer et gérer de la matière pédagogique pour la formation à
distance. Ce type de plateformes utilise toutes les fonctionnalités d'un LMS et d'un CMS.
Ce dernier est un système de gestion de contenus [5].
Lorsqu’on installe une extension sous cette plateforme (CMS) qui permet de gérer du
contenu d’apprentissage, on aura un LCMS.
III-1 Comparaison entre LMS et LCMS
Les LMS ont pour principal objectif l’optimisation de la gestion de l’activité des
apprenants, tandis que le rôle des LCMS est l’optimisation de la gestion du contenu tel
que la création, réutilisation et diffusion des cours. Le tableau I.1 résume les différences
entre ces deux plateformes.
LMS LCMS
Utilisé par les gestionnaires de
formation, les formateurs et les
administrateurs.
Utilisé par les créateurs de contenu,
les concepteurs et les gestionnaires
de projets.
3 http://www.claroline.net/ 4 http://fr.blackboard.com/sites/international/globalmaster/
Chapitre I État de l’art
8
Gérer le catalogue des cours, le
calendrier, l'inscription des
étudiants et capturer les données
de profil de l'apprenant.
Rédiger le contenu d’apprentissage
comme des objets d’apprentissage,
les éléments d’évaluation,
simulations et d’autres interactions
d’apprenant.
Stocker des données sur les cours
et les apprenants.
Stocker le contenu dans un entrepôt
d’objets d’apprentissage.
Fournir des rapports pour les
résultats d’apprentissage et
cartographie des compétences/
analyse des écarts de
compétences.
Fournir des outils de gestion de
contenu (ex. rechercher un objet
d’apprentissage, droits d’accès et
contrôle de version)
Fournir la possibilité de créer et
d’administrer des tests. Fournir des fonctionnalités
d’apprentissage (ex. parcours
d’apprentissage adaptatif, analyse
des écarts de compétences,
collaboration asynchrone via les
emails et forum de discussions,
évaluation)
Tableau I.1 : Tableau comparatif des différences entre LMS et LCMS [9].
III-2 WordPress et ses extensions
WordPress5 est un CMS écrit en PHP crée en 2003, gratuit et open source sous licence
GPL2. Il est conçu pour gérer tout type de contenu, automatiquement sans avoir besoin
de l’aide d’un webmaster (technicien) pour les mises à jour de contenu. Il permet de
séparer les opérations de gestion de la forme (graphique) de celle du contenu. Il est facile
à utiliser et extensible via les plugins et thèmes. [10]
L’une des grandes forces de WordPress est la multitude de plugins et thèmes disponibles.
Ce sont des modules permettant d'ajouter des fonctionnalités à WordPress.
Nous avons choisi WordPress comme CMS car c'est le système de gestion de contenu qui
a une part du marché de 60,3% par rapport aux autres CMS que nous connaissons.
Nous citons ci-dessous quelques exemples de plugins et thèmes qui transforment le CMS
WordPress en LCMS.
a- Sensei
Sensei6 est un plugin crée par l’équipe WooThemes permettant de gérer des formations
en ligne. C’est un système de gestion d'apprentissage WordPress. Il permet de créer des
5 https://wordpress.org/ 6 http://www.woothemes.com/products/sensei/
Chapitre I État de l’art
9
cours, des leçons et d'ajouter des quiz. Mettre en place des prérequis pour accéder à une
leçon, afin d’assurer que les cours et les leçons sont suivis dans le bon ordre. [11]
b- CourseWare
CourseWare7 est un système de gestion d’apprentissage créé spécifiquement pour
WordPress [12]. C’est un plugin payant, permettant la gestion de contenu en utilisant une
approche sociale menée par le plugin BuddyPress8. Cela permet d’enrichir le plugin par
des fonctionnalités communautaires comme des profils d’utilisateurs, des flux d’activité,
des groupes d’utilisateurs et bien plus encore [13].
c- WPLMS
WPLMS9 est un LMS payant, conçu pour WordPress. C’est un thème WordPress
d’apprentissage en ligne permettant de gérer des cours, formation et gestion des étudiants
en proposant une plateforme directement opérationnelle. Il permet de mettre en place un
site dédié à la formation, l’accueil et à la vente des formations. [14]
d- Namaste
Namaste10 est un système de gestion d’apprentissage payant conçu pour WordPress. Il
supporte des cours illimités et des leçons avec un accès très flexible pour chacun d'eux.
Il permet de créer des certificats qui seront affectés aux apprenants une fois qu’ils
complètent leurs cours. Il offre une distinction entre les utilisateurs en proposant des rôles
(administrateur, apprenant, …).
e- CoursePress
CoursePress11 est un LMS très riche, Il permet de créer des modules e-learning, gérer et
vendre des cours en ligne sur WordPress. Il offre une gestion des étudiants, des outils
d'évaluation et d'information permettant de fournir la certification complète. Ainsi que
d’autres fonctionnalités afin de faciliter la façon de créer et gérer les formations en ligne
[15].
7 https://flyplugins.com/wp-courseware/ 8 https://buddypress.org/ 9 http://themeforest.net/item/wplms-learning-management-system/6780226 10 http://namaste-lms.org/pro.php 11 https://wordpress.org/plugins/coursepress/
Chapitre I État de l’art
10
IV- Outils auteurs
Dans le domaine du e-learning, l’outil auteur est le logiciel qui permet de réaliser
simplement et efficacement des formations interactives. Les outils auteurs ont été créés
pour apporter une solution aux formateurs qui souhaitent créer leurs contenus en interne
sans avoir recours à des compétences informatiques. Ils permettent aux utilisateurs de
créer des scénarisations pédagogiques beaucoup plus évoluées.
Les outils auteurs d’apprentissage en ligne permettent aux formateurs d'intégrer des
ressources multimédia pour créer du contenu professionnel et interactif. Avec ces outils
auteurs, nous pouvons réutiliser des éléments d'apprentissage à partir d'un cours existant
pour une utilisation dans un nouveau cours en ligne. [16]
Nous citons ci-dessous quelques outils auteurs les plus populaires dans le domaine e-
learning.
IV-1 Opale Scénari
Opale Scénari12 est un outil gratuit permettant de rédiger et structurer le contenu
pédagogique en éléments combinables et réutilisables. Il nous offre la possibilité
d’intégrer des ressources multimédia, réaliser des quiz et publier le contenu centralisé
dans différents formats, comme un site web diffusable en ligne ou sur CDRom ou comme
un module SCORM pour les plateformes LMS tel que Moodle, Claroline, etc.
La chaine éditoriale Opale 3.3 instrumentée par l'environnement logiciel Scénari permet
de créer un fonds documentaire scénarisé, structuré en XML, réutilisable et indépendant
du format de publication [17].
IV-2 Articulate studio
Articulate Studio13 est un outil auteur payant, rapide et très populaire. Il a une vaste base
d'utilisateurs, en raison de la facilité d'utilisation et de fortes capacités fonctionnelles. Cet
outil s’appui sur une communauté en ligne dynamique et solidaire. [18]
12 http://scenari-platform.org/projects/scenari/fr/pres/co/ 13 https://fr.articulate.com/products/studio.php
Chapitre I État de l’art
11
Il permet de concevoir des modules en ligne dans PowerPoint. Il offre une réalisation
facile des modules, des quiz et d’autres contenus e-learning avec un outil qui est déjà
connu.
IV-3 Adobe Captivate
Adobe Captivate14 est un logiciel payant qui permet de créer des scénarios de formation,
des présentations, toutes sortes de démonstrations, de simulations, des quiz, etc. Il
propose des fonctionnalités pour une rédaction, un enrichissement, une publication et un
maintien rapide du contenu complexe et interactif de la formation en ligne. [19]
L'utilisateur n'a pas besoin de posséder des connaissances en programmation ou en
multimédia. Cet outil aide les utilisateurs à créer rapidement et facilement des
présentations multimédia en ligne.
IV-4 Lectora Inspire
Lectora Inspire15 est un outil auteur crée par la société Trivantis. Cet outil permet de
produire des modules e-learning qui pourront être facilement diffusés via LMS ou un site
web. Il présente un ensemble d’outils de création sophistiqués qui donnent la possibilité
de créer des cours de e-learning professionnels ainsi que des présentations et des
évaluations. [20]
Cet outil permet de publier automatiquement du contenu en ligne en HTML. Il est
également adapté pour les smartphones et les tablettes (multiplateformes).
V- Discussion
Les LCMS, tout comme les outils auteurs, fournissent une interface de création de cours
pour les plates-formes e-learning, garantissant à différents niveaux (suivant les outils
utilisés) une compatibilité avec les plates-formes d’enseignement à distance. Nous avons
étudié quelques outils d’apprentissage (extensions WordPress et outils auteurs) selon
certaines fonctionnalités et critères. Le tableau ci-dessous dresse le résultat des
comparaisons des différents outils que nous avons étudié.
Au niveau de compatibilité avec la norme SCORM, les extensions ne présentent pas de
véritables avantages comparés aux outils auteurs. Outre la compatibilité entre plateforme
14 http://www.adobe.com/products/captivate.html 15 http://lectora.com/
Chapitre I État de l’art
12
LMS et contenus, SCORM permet de suivre la consultation des contenus par les
apprenants et favorise la réutilisation des contenus au sein de plusieurs parcours
pédagogiques.
La plupart des outils sui sont performants et qui présentent un grand nombre de
fonctionnalités nécessaires sont payant tel que « Sensei », « CourseWare » « Lectora
Inspire » et « Adobe Captivate ». Mais malgré leur puissance en termes de fonctionnalités
et réutilisation du contenu, ils possèdent aussi quelques inconvénients.
Nous remarquons que la majorité des plugins et outils auteurs ne proposent pas une
évaluation du contenu. Cette dernière est nécessaire pour juger la qualité des cours et des
formations, ainsi que leurs utilités dans différents domaines.
Les plugins présentent des avantages comparés aux outils auteurs tel que la possibilité de
suivre le progrès des apprenants dans un cours précis.
Les plugins (Sensei, CourseWare, et CoursePress) utilisent une approche sociale. De ce
fait, il devient facile pour les utilisateurs de diffuser et partager le contenu sur certaines
média sociaux. Cette approche est assurée par les LMS, par contre, aucun outil auteur
présenté dans le tableau comme tous outils auteurs n’admettent pas une interaction
sociale.
La plupart des extensions et outils auteurs délivrent un certificat. Ils permettent de donner
aux apprenants un moyen de suivre les progrès du début à la fin en fournissant les résultats
d'achèvement et une certification évaluée.
Dernier point qui nous semble aujourd’hui important, c’est la capacité à produire des
contenus multiplateformes notamment tablettes et smartphones. Ce qui n’est pas géré par
les plugins cités dans le tableau et certains outils auteurs.
Chapitre I État de l’art
13
Tableau I.2 : Tableau comparatif de quelques outils d’e-learning
VI- Conclusion
Aujourd’hui, de nouvelles approches émergent, de nouveaux outils, de nouveaux
concepts qui permettront d’enrichir l’apprentissage en ligne. L'étude de quelques outils
nous a permis de différencier entre les LCMS et les LMS, de connaitre l’efficacité des
outils auteurs qui ont permis de démocratiser la production e-learning. C’est comment
gérer, harmoniser, et faire évoluer toute cette nouvelle matière pédagogique. Nous avons
constaté quelques inconvénients et limites de ces outils malgré les nombreux avantages
qu’ils offrent. Le problème majeur se concrétise dans l'absence de l'interactivité avec les
réseaux sociaux et donc aucune interaction entre les apprenants ainsi qu’entre les
apprenants et formateurs.
Nous concluons que les bons outils auteurs sont les outils qui nous permettront de créer
l’interactivité que nous souhaitons offrir aux apprenants. Ils nous aideront à développer
des modules e-learning attrayants et fonctionnels, ce qui contribue à la réussite de notre
module.
Extensions WP Outils auteurs
Sensei CourseWare Namaste CoursePress WPLMS Opale Articulate Studio
Lectora Inspire
Adobe Captivate
Licence Payant
(299$)
Payant
(99$ - 175$)
Payant
(47$-87$)
Payant
(19$/Mois)
Payant
(63$)
Gratuit Payant
(1 398 $)
Payant
(2 495$)
Payant
(29$/Mois)
SCORM
Intégration
aux médias
sociaux
Évaluation
du contenu
Compatibilit
é mobile
Suivi du
cours
Commerciali
sation du
contenu
Certification
+extension
Chapitre II :
Conception et réalisation
de StudyPress
Chapitre II Conception et réalisation de StudyPress
14
I- Introduction
Comme nous l’avons déjà signalé dans l’introduction générale, l’une des premières
solutions des problématiques de ce projet est de réaliser un outil auteur interactif qui
facilite la création du contenu, la gestion des apprenants et des formateurs en le combinant
avec les réseaux sociaux.
Dans ce chapitre nous allons définir la nouvelle version de StudyPress. Cette version
améliore la version précédente et répond aux exigences demandées et aux problèmes
posés au début. Nous décrivons dans cette partie la façon dont le système va fonctionner
en lui donnant une forme et une architecture.
En fin, nous allons présenter l’utilité de notre plugin par le biais de certaines plateformes.
II- Processus de développement
La méthode Scrum se range sous la bannière d’un mouvement, l’agilité. Elle possède des
valeurs et des principes et se met en œuvre avec des pratiques. De ce mouvement novateur
émergent les méthodes agiles dont Scrum est actuellement la plus populaire. [21]
Scrum est une méthode pour gérer les projets de façon agile. Nous l’avons choisi comme
méthode de gestion de notre projet pour développer la nouvelle version de l’extension
« StudyPress », parce qu'elle permet d'offrir une meilleure visibilité, une forte inspection
et une meilleure adaptation par rapport à ce que d'autres méthodes puissent offrir, à
l'exemple du modèle en spirale qui a été utilisé pour le développement de la version
précédente. [22]
Scrum utilise un principe de développement itératif qui consiste à découper le projet en
plusieurs étapes que nous appelons « itérations » ou « sprints ». Ces itérations sont
constituées d’un ensemble de sous besoins appelé « User story », en détaillant les
différentes fonctionnalités qui seront développées. Un planning correspondant aux tâches
nécessaires pour le développement de ces fonctionnalités sera établi.
Scrum se base sur une équipe avec différents rôles : «Product Owner », « ScrumMaster »
et « Team ».
Product Owner : il s’agit d’avoir une vision de ce que nous voulons
construire et de transmettre cette vision à l'équipe de développement. Le
Product Owner définit le produit et priorise les fonctionnalités voulues.
Chapitre II Conception et réalisation de StudyPress
15
ScrumMaster : il est chargé d’assister et guider l’équipe de
développement pendant le sprint (itération) et facilite la résolution des
problèmes.
Team (équipe de développement) : elle a l'autonomie pour déterminer
quand et comment achever ses travaux. Les membres travaillent dans une
seule et même pièce. L’équipe livre un produit utilisable à la fin de chaque
sprint.
Le cycle de vie Scrum (figure II.1) est rythmé par des itérations (sprints) de deux à quatre
semaines. Dans notre cas, nous avons fait 4 itérations ; la plus courte itération nous a pris
deux semaines et la plus longue nous a pris presque cinq semaines à cause de plusieurs
bugs rencontrés.
Ce cycle commence à partir d’un Product Backlog qui représente l’ensemble des
fonctionnalités ou besoins techniques qui constituent le produit. À partir de cet ensemble
nous sélectionnons les exigences les plus prioritaires qui seront développées « User
Story ».
Ce sous-ensemble des éléments forme ce que l’on appelle « Sprint Backlog ». La figure
II.27 de la section X-1 montre nos Sprint Backlog pour l’itération 1. Pendant un sprint,
des points de contrôle sur le déroulement des travaux sont effectués, pour cela chaque
jour une réunion est organisé avec tous les membres de l’équipe. Ce que nous appelons
par la suite « Daily Scrum Meeting » ou « Daily Standup Meeting ».
Dans notre cas, nous avons fait pour chaque deux jours une réunion pour dresser en un
temps limité à une heure, le bilan des deux journées passées. Nous planifions celles qui
commencent et nous repérons les éventuels obstacles rencontrés par chaque membre de
l’équipe. Cela permet au ScrumMaster de déterminer l’avancement et d’appliquer avec
l’équipe des ajustements pour assurer le succès du sprint. À la fin du sprint, une réunion
est faite, « Sprint Review Meeting» pour montrer le travail accompli et donc l’équipe
obtient un livrable qui fonctionne et sera potentiellement utilisable et qui s’enrichit d’un
nouveau incrément à chaque sprint. Son évaluation et le feedback récolté permettent
d’ajuster le Backlog pour le sprint suivant [23].
Chapitre II Conception et réalisation de StudyPress
16
Figure II.1 : Le cycle de vie Scrum [34].
Pour permettre de suivre les taches à réaliser durant un sprint, on utilise un graphique
« Burn Down Chart ». Il possède en abscisse le temps et en ordonnée le nombre de
tâches restantes. La figure II.2 montre le Burn Down du premier sprint de notre projet.
Ce sprint a commencé avec 17 tâches, lors de la 4ième réunion par exemple, le nombre de
tâches a diminué à 8 tâches.
Figure II.2: Burn Down Chart: itération 1.
Chapitre II Conception et réalisation de StudyPress
17
III- Etude de l’existant
Il est très instructif d'étudier l’existant, pour déterminer en quoi la solution existante
répond au besoin et ce qu'il manque afin que notre projet apporte des changements utiles
aux utilisateurs. Cela permettra enfin de nous positionner et de mettre en avant les
spécificités de notre démarche.
L’extension « StudyPress » a été créée en 2013 par BENSMAINE Yasser et BOUACHA
Oussama dont l’objectif principal était d’intégrer le concept LMS dans les réseaux
sociaux [24]. Le but était de concevoir une plateforme d’apprentissage social sous
WordPress. Les fonctionnalités principales de cette version est la création des cours et
des quiz, et d’interagir avec. Ensuite, en 2014 une autre version de cette extension a été
faite par BELHABIB Abdelkader et MATAHRI Abdelmadjid, dont l’objectif principal
est d’intégrer le concept LMS dans les réseaux sociaux, en reliant leurs éléments
communs avec les systèmes de recommandation [22]. Cette deuxième version apporte
quelques améliorations et l’intégration d’un système de recommandation de cours. Elle
comporte comme fonctionnalité principale la gestion du contenu (création et publication
des cours et des quiz).
Dans cette phase de l’étude de l’existant, il s’agira d’étudier le système existant, de le
critiquer et de relever des défaillances dans le but de proposer des solutions adéquates.
Nous citons ci-dessous quelques critiques de la version précédente.
III-1 Critiques
- Utilisation de l’objet avec un respect partiel, les variables n’ont pas été respectées,
le concept de l’héritage n’était pas utilisé, etc.
- Plusieurs bugs au niveau du quiz, la raison pour laquelle la deuxième version n’a
pas été publiée ;
- Manque de flexibilité de l’application ;
- Plusieurs failles de sécurité ;
- Code rigide et fragile. Un petit changement induit une grande quantité de petits
changements à d'autres endroits et provoque également des bugs ;
- Plus de 500000 requêtes sont réalisées sur la base de données et donc une
exécution lente de l’application à cause des algorithmes de l’agent de
recommandation.
Chapitre II Conception et réalisation de StudyPress
18
IV- Définition de StudyPress
StudyPress16 est un plugin WordPress. C’est un outil auteur d’e-Learning. Avec ce plugin,
nous pouvons facilement créer du contenu multimédia d'apprentissage et le publier sous
forme de diapositives dans des pages et des articles WordPress. Il peut gérer des cours,
des leçons et des quiz.
Avec l'aide de StudyPress il est facilement possible de transformer WordPress en un
système puissant de gestion d'apprentissage.
Ce plugin se caractérise par la création d’un nombre illimité de cours, leçon et quiz, ainsi
que par sa visualisation dans une interface professionnelle, une intégration de glossaires
et de notes pour les leçons et quiz. Il permet aux apprenants de visualiser les leçons,
répondre à des quiz ainsi que la correction automatique et l’évaluation de ces derniers. Il
permet également d’avoir une gestion du multi-enseignant en intégrant les rôles
utilisateurs de WordPress.
Les fonctionnalités de StudyPress permettent la mise en œuvre d’une plateforme
d’apprentissage qui sera intégrée dans les réseaux sociaux externes tels que facebook,
linkedin et twitter et le réseau social interne de WordPress, BuddyPress. Ce plugin permet
d’enrichir notre application de fonctionnalités communautaires comme des profils
d’utilisateurs, des flux d’activité, des groupes d’utilisateurs et bien plus encore.
V- Gestion des tests et anomalies
V-1 Tests
Les tests sont nécessaires pour détecter le plus rapidement possible les problèmes
logiciels ou les bugs de manière à pouvoir les corriger avant la publication et le
déploiement de l’application. Ils sont également réalisés pour développer la confiance et
la connaissance du produit livré.
Nous utilisons ces tests, d’une part, pour valider l’application et vérifier si tout fonctionne
comme prévu. D’autre part, voir si l’application est utilisable dans son environnement
16 https://wordpress.org/plugins/studypress/
Chapitre II Conception et réalisation de StudyPress
19
opérationnel et répond aux exigences techniques ainsi que professionnelles telles que
décrites dans le Backlog (section VI). Nous utilisons trois types de tests comme décrit ci-
dessous.
a- Tests unitaires
Ces tests sont faits sur une unité de notre application. Ils présentent une procédure
permettant de vérifier le bon fonctionnement d'une partie précise de notre application ou
d’une portion de notre programme. Pour cela, nous utilisons la même plateforme utilisée
pour le développement. Cette dernière est installée sur un PC de bureau et composée d’un
système d’exploitation Windows et WampServer17 (une plateforme d’exécution de scripts
web PHP/ MySQL). Cette plateforme permet de faire fonctionner localement les scripts
PHP de notre application. Dans le cadre d’utilisation de ce premier type, nous faisons nos
tests par rapport à ce qui a été définie dans la conception.
b- Tests d'intégration
Les tests d’intégration suivent les tests unitaires. Une fois que nous validons notre partie
développement et nos correctifs (autrement dit, après chaque sprint), ces tests
d’intégration consistent à regrouper nos modifications. Pour cela nous utilisons une
plateforme hébergée sur internet. Elle est installée sur un serveur distant et elle est
composée d’un système d’exploitation Linux et d’un serveur Apache18 (un serveur
HTTP). Cette plateforme contient en plus un jeu de données de test. Dans le cadre
d’utilisation de ce deuxième type, nous testons par rapport aux spécifications
fonctionnelles (Backlog).
c- Tests d'acceptation
Les tests d’acceptation ou (recette) sont passés à chaque sprint. Ils vérifient que le système
livré est opérationnel et fonctionne conformément aux spécifications des besoins du
« Product Owner ». Ces tests sont réalisés dans une plateforme de pré-production qui est
un clone au niveau de configuration matériel, logiciel et données de la plateforme de
production Icraa, détaillée dans la section XI.
17 http://www.wampserver.com 18 http://www.apache.org
Chapitre II Conception et réalisation de StudyPress
20
V-2 Anomalies
Une application informatique a forcément quelques erreurs. Ces anomalies sont mises en
évidence par la phase des tests cités ci-dessus. Il est important d'associer à chaque
déclaration d'anomalie un type permettant de mesurer la qualité globale de notre
application. Pour cela nous avons classé les anomalies en trois types : 1) bloquante, 2)
majeure et 3) mineure. Nous avons préconisé de saisir les bugs d’une façon ressemblante
à un scénario pour que le correcteur (développeur) puisse les comprendre, les reproduire
et les corriger.
- Anomalie bloquante : anomalie rendant impossible l’utilisation d’une ou
plusieurs fonctionnalités du système. Il s’agit d’erreurs graves pouvant bloquer
tout le système.
Exemple : les boutons « Publier » et « Parcourir » ne marchent plus sur les leçons.
- Anomalie majeure : toute anomalie autre que bloquante qui altère le
fonctionnement de tout ou de l’une des fonctionnalités principales.
Exemple : 1) aller sur un quiz, 2) commencer le quiz, 3) valider avant la fin du
temps, 4) revenir sur une question et la modifier, 5) voir résultat : l'application
prend en compte les nouvelles réponses données entre la validation et la fin du
temps.
- Anomalie mineure : elle diffère des deux types cités ci-dessus. Il s’agit d’erreurs
qui peuvent être gênantes, mais ne présentent pas de danger pour le système.
Exemple : Problème avec les apostrophes et les slashs sur la description du cours.
VI- Sprints
Sprint est le terme utilisé dans Scrum pour itération. Nous avons déjà définit Scrum dans
la section II. Un sprint est une itération qui produit un nouvel incrément (incrémental) et
peut aussi enrichir un incrément obtenu dans un sprint précédent (itératif) [21]. Nous
avons réalisé quatre itérations, nous avons donné un nom pour chacune. Durant chaque
Chapitre II Conception et réalisation de StudyPress
21
sprint, nous avons rencontrés des bugs. Nous les avons traités par catégories (section V-
2). À la fin de chaque sprint, après la réalisation de toutes les fonctionnalités du sprint,
nous passons à la phase test (section V).
VI-1 Itération 1
« Bismillah » est la première itération de notre application. Elle a durée deux semaines
(du 02/02/2015 au 14/02/2015). Deux bugs bloquants ont été détectés dans cette itération.
Chaque sprint se constitue d’un Backlog, nous citons ci-dessous quelques fonctionnalités
de cette itération :
- Refonte de la partie player (lecteur des leçons et quiz) ;
- Ajout/Suppression de glossaire et notes ;
- Refonte de la partie création de cours ;
- Gérer l'affichage des leçons par rapport au type de l'utilisateur ;
VI-2 Itération 2
« Renaissance » est la deuxième itération de l’application, c’est la plus longue. Elle a
durée presque cinq semaines (du 14/02/2015 au 18/03/2015). Ça nous a pris plus de temps
pour la réalisation de ce sprint, à cause des bugs que nous avons rencontré, 8 bugs
majeurs, 12 bugs mineurs et 3 bugs bloquants.
Quelques fonctionnalités qui forment le Backlog de cette itération :
- Refonte de la partie création du quiz ;
- Gestion des cours et des leçons ;
- Gestion des domaines ;
- Ajout de la classe « Activity » et modifier le schéma de la BDD ;
- Enregistrement des résultats du quiz ;
VI-3 Itération 3
« Explorer » est la troisième itération de l’application. Elle a durée quatre semaines (du
18/03/2015 au 18/04/2015). Pendant ce sprint nous avons rencontré 9 bugs majeurs, 11
bugs mineurs et 3 bugs bloquants.
Quelques fonctionnalités qui constituent le Backlog de cette itération :
Chapitre II Conception et réalisation de StudyPress
22
- Intégrer les questions à choix unique pour les quiz ;
- Mettre le « Progress bar » dans l’affichage du cours sur le front office ;
- Mettre configurable la possibilité d’intégrer l’évaluation des leçons et quiz ;
- Attacher le cours à un ou plusieurs groupes BuddyPress ;
- Partager les leçons et quiz sur les réseaux sociaux (Facebook, G+, Twitter et
LinkedIn) ;
VI-4 Itération 4
« Conqueror » est la dernière itération de l’application. Elle a durée presque quatre
semaines (du 20/04/2015 au 16/05/2015).
Quelques fonctionnalités qui constituent le Backlog de cette itération :
- Intégrer la narration audio et vidéo ;
- Intégrer le mode de paiement PayPal pour la vente des cours en ligne ;
- Mettre configurable l’affichage du menu de gauche sur le lecteur ;
- Améliorer la partie Front Office pour l’affichage du contenu d’un cours ;
VII- Conception
VII-1 Architecture
Après l’étude de l’existant, afin de structurer mieux le code source, pour une meilleure
cohésion de groupe et un développement plus rapide et efficace, nous avons décidé de
changer l’architecture qui a été proposée dans la version précédente de StudyPress. Notre
architecture se base sur le pattern MVC qui est un patron de conception pour le
développement des applications logicielles. Ce design pattern sépare les données (le
modèle), l'interface homme-machine (la vue) et la logique de contrôle (le contrôleur). Le
modèle de l’application comporte plusieurs couches comme le montre la figure ci-dessous
(figure II.3).
Chapitre II Conception et réalisation de StudyPress
23
Figure II.3 : Architecture de StudyPress.
Dans l’architecture montrée dans la figure II.3 nous situons le positionnement de notre
extension par rapport à WordPress, BuddyPress et certains services externes. Ainsi les
différentes couches qui le constituent. BuddyPress ajoute une couche réseau social à notre
application, il interagit avec la couche métier. StudyPress accède aux données du système
via la couche « Accès aux données » en utilisant des fonctions WP prédéfinies. Ceci
représente la couche ORM (Mapping Objet-relationnel). StudyPress est relié avec le
service PayPal en communiquant avec la couche configuration. Il offre la possibilité de
partager le contenu via les réseaux sociaux.
VII-2 Diagramme de cas d’utilisation
Chaque usage que les acteurs font du système est représenté par un cas d’utilisation. Ce
dernier décrit le comportement du système du point de vue de son utilisateur. Le
diagramme de cas d’utilisation ci-dessous (figure II.4) définit quatre principaux acteurs
qui interagissent avec le système, en déterminant les besoins de l’utilisateur et tout ce que
doit faire le système pour ces acteurs.
Administrateur : il a la possibilité de contrôler la plateforme, gérer les comptes des
utilisateurs et leurs droits d’accès, créer des domaines, créer des cours et les associer aux
formateurs, gérer les groupes BuddyPress, et gérer le paramétrage de StudyPress.
Chapitre II Conception et réalisation de StudyPress
24
Formateur : des utilisateurs qui ont le privilège de créer des activités (leçons et quiz) et
de leur gestion (modification, suppression, publication,…) de manière indépendante. Le
formateur a la possibilité de créer des leçons ou bien des quiz d’une manière interactive
à travers une interface dédié.
Apprenant : ils peuvent être des étudiants, des employés, des fonctionnaires, etc…
L’apprenant peut suivre un ou plusieurs cours et visualiser les leçons associées, passer
des quiz, partager leur résultats avec son environnement social (dans des groupes ou sur
son profil personnel), ainsi s’échanger des commentaires.
Agent de recommandation : il s’agit d’un programme qui garde les traces de toutes les
informations générées par des actions réalisées sur la plateforme venant d’un utilisateur.
Ces informations peuvent être le temps de visualisation d'une leçon, la déclaration d'un
lien d'amitié, l'évaluation d'un quiz etc.
À partir de ces traces ce programme recommande à cet utilisateur les leçons et les quiz
qui peuvent correspondre à ses objectifs.
Figure II.4 : Diagramme de cas d’utilisation.
VII-3 Diagramme de séquence
Pour le cas d’utilisation « créer cours » :
L’administrateur est le seul acteur qui a le privilège de créer un cours. Il doit remplir un
formulaire qui comporte le nom du cours, une description, et une image. Il doit aussi
l’associer à des catégories et choisir les formateurs de ce cours. Ces formateurs auront la
possibilité de créer, modifier et supprimer les activités liées à ce cours. Si le module
Administrateur
Formateur
Apprenant
Gérer les groupes buddypress
Gérer l'activité
Suivre cours
Gérer les comptes
Gérer cours
Créer leçon
Créer quiz
<<include>>
<<include>>
Modifier
SupprimerPublier
<<extend>>
<<extend>><<extend>>
Passer quiz
évaluer l'activitéévaluer selon l'utilité
évaluer selon la qualité
Partager l'activité
Gérer le paramétrage
Visualiser résultat
<<extend>>
Visualiser leçon <<include>>
<<include>>
<<include>>
<<include>>
Agent de recommandation
Recommander
Acheter cours
Chapitre II Conception et réalisation de StudyPress
25
« BuddyPress » est activé, l’administrateur peut aussi associer ce cours à des groupes.
Ensuite, la création du cours se fait de la même manière que celle de la leçon.
Figure II.5 : Diagramme de séquence « créer cours ».
Pour le cas d’utilisation « créer leçon » :
Le formateur ainsi que l’administrateur ont l’accès à la création des leçons. Ils doivent
remplir le formulaire proposé (nom de la leçon, le cours associé, et éventuellement une
image, tags, glossaires…), et c’est au contrôleur qui se charge d’appeler les objets
correspondent à la création de la leçon. Au premier lieu, l’objet de la classe « Validation »
vérifie et retourne les données saisies nettoyées. Avec ces données, le contrôleur crée un
objet de type « Lesson » qui sera ensuite ajouter à la base de données via les objets
« LessonManager » et « AccessData » qui font appel à des fonctions WordPress. Après
cela, le formateur peut créer autant de slides associés à cette leçon qu’il souhaite. La
création de slide suit la même logique que celle de la leçon.
: Adminastrateur
: Validation : CourseManagerController
: Course
: AccessData Wordpress
1 : Remplir le formulaire
2 : Selectionner categories
3 : Selectionner formateurs du cours
4 : validateData()
5 : données nettoyées : sanitized
6 : __construct()
<<create>>
7 : Objet Course créé : course
8 : add()
9 : insert()
10 : insérer dans la bdd
11 : id12 : id
13 : id
14 : Cours créé
Chapitre II Conception et réalisation de StudyPress
26
Figure II.6 : Diagramme de séquence « créer leçon ».
Pour le cas d’utilisation « passer quiz » :
Lorsque l’apprenant clique sur le bouton « commencer le quiz » le lecteur charge les
slides (questions avec ses propositions). Si l’apprenant est connecté et si le quiz a une
durée, alors une requête Ajax sera transmise au contrôleur afin d’enregistrer la date de
commencement du quiz. Après cela, le minuteur se lance et l’utilisateur peut commencer
à répondre aux questions. La validation du quiz peut se faire en deux manières
différentes :
- L’utilisateur lui-même valide ses réponses en cliquant sur le bouton
« Valider » ;
- La durée de test s’expire, alors la validation se fait automatiquement par le
Player.
Après la validation, une deuxième requête sera envoyée au contrôleur. Celle-ci est faite
afin de calculer le score obtenu et si l’apprenant est connecté, son score et ses réponses
seront stockées sur la base de données. Ensuite le contrôleur répond au Player en lui
transmettant le résultat ainsi que la correction du quiz.
Création des slidesloop
: Formateur
Controller : LessonManager : AccessData : Validation
: Lesson
Wordpress
: SlideManager
: Slide
1 : Remplir le formulaire
2 : validateData()
3 : données netoyées : sanitized
4 : __construct()
<<create>>
5 : Objet Lesson créé : lesson
6 : add()
7 : insert()
8 : Inserer dans la bdd
9 : id10 : id
11 : id
12 : Leçon créée
13 : Remplir le formulaire
14 : validateData()
15 : données netoyées : sanitized
16 : __construct()
<<create>>
17 : Objet Slide créé : slide
18 : add()
19 : insert()
20 : inserer dans la bdd
21 : id22 : id
23 : id
24 : slide créé
Chapitre II Conception et réalisation de StudyPress
27
Figure II.7 : Diagramme de séquence « passer quiz ».
VII-4 Modèle de données
La figure II.8 ci-dessous montre le diagramme de classes qui représente les données de
l’application. Nous avons regroupé les deux concepts leçon et quiz dans la même classe,
Chapitre II Conception et réalisation de StudyPress
28
nommée « Activity ». Nous avons rajouté un champ « type » pour différencier entre ces
deux concepts. Une activité (leçon ou quiz) peut appartenir à un seul cours « Course ».
C’est un nouveau concept que nous avons intégré dans StudyPress. Ce concept peut être
associé à une ou plusieurs catégories « Terms ». Cette dernière est gérée par WordPress.
Supposons qu’on a un cours intitulé « Génie logiciel », ce cours peut être associé à une
ou plusieurs promotions qui représentent les catégories. Ces promotions peuvent être liées
à d’autres cours. Pour cela, une classe d’association « Course_catégory » est créée.
Figure II.8 : Modèle conceptuel de données.
Chapitre II Conception et réalisation de StudyPress
29
VII-5 Classes de traitements
Figure II.9 : Classes métiers.
Chapitre II Conception et réalisation de StudyPress
30
Figure II.10 : Classes d’accès aux données.
Les diagrammes de classe ci-dessus (figure II.9 et figure II.10) indiquent les classes de
traitements de StudyPress. Le premier représente les classes d’accès aux données et le
deuxième représente les classes métiers.
Ces classes représentent la partie Modèle de l’architecture MVC de l’application. Cette
partie regroupe 20 classes, dont chacune a un rôle précis donné par le tableau suivant
(Tableau II.1) :
Couche Rôle Classe Modèle/
Contrôleur
Métier Représente les objets à
manipuler
Course, Lesson, Quiz,
RateDomain,
RateQuality, Domain,
ResultQuiz, Slide,
Question, Proposition,
Recommandation.
Modèle
CourseManager
LessonManager QuizManager
AbstractActivityManager RateQualityManager RateDomainMangerSlideManager
AccessData.
+insert(string table, array columns): void+update(string table, array updatedColoumns, array conditions): void+delete(string table, array conditions): void+query(string sql): array+getLastError(): string+getResults(sql): array+prepare(sql, array args): string+getRow(sql): array+getLastInsertId(): int
1
1
1
11
1
1
1
1
1
Manager<<interface>>
+add()+update()+delete()+getById()+getAll()
Chapitre II Conception et réalisation de StudyPress
31
Validation Permet de valider et nettoyer
les données et les
informations fournit par
l’utilisateur. Elle nous offre
donc une meilleure
protection contre les failles
de sécurité (injections SQL,
XSS…).
Validation Contrôleur
DAO Permet de faire la liaison
entre la couche métier et la
couche donnée. Elle consiste
à interagir avec les données
en manipulant les objets
(ajouter, modifier,
sélectionner ou supprimer).
CourseManager,
LessonManager,
QuizManager,
RateQualityManager,
DomainManager,
ResultQuizManager,
SlideManager,
QuestionManager,
PropositionManager.
Modèle
Accès aux
données
Permet une portabilité de
l’application. Dans le cas où
nous changeons le SGBD ou
l’environnement, les autres
couches ne seront pas
modifiées. Donc cette couche
permet de porter facilement
notre application dans un
autre CMS tel que Joomla ou
même de rendre notre
application autonome sans
passer par un CMS.
AccessData,
StudyPressDB.
Modèle
Configuration Permet de gérer le
paramétrage de l’application
Configuration Modèle
Tableau II.1 : Classes de traitement de StudyPress.
Chapitre II Conception et réalisation de StudyPress
32
La partie « Vue » du modèle « MVC » de notre application est gérée par les scripts
d’affichage codés avec HTML, CSS et Javascript.
VIII- Application
VIII-1 Back Office
C’est l’ensemble des activités de supports, de contrôle, d’administration de l’application.
Cette partie est accessible par l’administrateur et les formateurs via un nom d’utilisateur
et mot de passe.
a- Configuration
Réglage :
Figure II.11 : Configuration.
Nous pouvons utiliser ce réglage pour configurer quelques options notamment : 1) activer
ou désactiver l'évaluation (5 étoiles) à la fin de chaque leçon et quiz, 2) lecteur responsive
dont la taille du lecteur de la leçon ou du quiz suit la largeur de la page ; 3) afficher les
tags sur le lecteur ; 4) afficher le glossaire sur le lecteur ; 5) définir la taille du lecteur de
la leçon et du quiz. Trois tailles préconfigurées sont proposées ; 6) activer ou désactiver
l'option de partage des leçons et des quiz sur les réseaux sociaux (Facebook, Twitter,
LinkedIn et G+) ; 7) activer ou désactiver l'option de partage des leçons et des quiz sur
BuddyPress ; 8) activer ou désactiver l'option de partage de résultat des quiz sur
BuddyPress.
Chapitre II Conception et réalisation de StudyPress
33
Domaines d’apprentissage :
Figure II.12 : Domaines d’apprentissage.
Nous pouvons utiliser les domaines pour activer l'évaluation multi critères des leçons et
des quiz. Si aucun domaine n’est défini, les apprenants ne peuvent évaluer que la qualité
globale de la leçon ou du quiz.
PayPal :
Figure II.13 : PayPal.
Cette partie permet à l’administrateur de renseigner ses coordonnées fournies dans son
compte PayPal et configurer quelques paramètres tel que la langue du site PayPal (Etats
unis, France, Espagne ...), la devise du paiement (Dollar, Euro, ...) et le mode de Paiement.
Chapitre II Conception et réalisation de StudyPress
34
Si le mode « Sandbox » est activé, cela veut dire qu’il est en mode test. L’administrateur
peut également rajouter l’url d’une image qui sera affichée dans l’en-tête de la page du
paiement du site PayPal.
Cette fonctionnalité est disponible pour les utilisateurs qui ont les droits administrateur.
b- Liste des cours
Figure II.14 : Liste des cours.
Cette page contient la liste de tous les cours dont l’administrateur et les formateurs ont le
droit d'accès. Elle contient également un créateur de cours rapide, dans lequel
l’administrateur peut renseigner le nom et la description du cours et associer une image,
des catégories et des auteurs. Les catégories affichées dans cette page sont les catégories
que l’administrateur a définies comme catégories d’articles sur WordPress. Le lien entre
ces dernières et les cours peut aider à la création du menu du site Web. Les formateurs
associés aux cours auront le droit de voir, modifier, supprimer et publier les leçons et les
quiz associés à ces cours.
c- Détail du cours :
Dans cette page l’administrateur peut modifier le nom et la description du cours, l’image
associée, le prix, les catégories et les auteurs. Si BuddyPress est installé, l’administrateur
peut également associer le cours à plusieurs groupes. Ainsi, après chaque publication
d'une leçon ou d'un quiz, un message est envoyé aux groupes BuddyPress liés à leur cours
Chapitre II Conception et réalisation de StudyPress
35
correspondants. À la droite de cette page il est possible d’organiser l'ordre des activités
(leçons et quiz) liées à ce cours.
Les formateurs peuvent modifier que certaines informations sur le cours.
Figure II.15 : Modification d’un cours.
d- Liste des quiz
Figure II.16 : Liste des quiz.
Cette page contient la liste de tous les quiz dont l’administrateur et les formateurs ont le
droit d'Accès. Elle contient également un créateur de quiz rapide, dans lequel les
formateurs peuvent renseigner le nom du quiz, associer une image et un cours. Les cours
présents dans la liste déroulante sont les cours pour lesquels les formateurs ont accès.
Chapitre II Conception et réalisation de StudyPress
36
Cette page permet également de publier, retirer ou de supprimer un quiz et de voir les
résultats des utilisateurs qui ont passé les quiz.
Lorsque le quiz est publié, un article WordPress qui contient ce quiz est créé. Lorsque
le quiz est supprimé, l’article associé est supprimé. Le clic sur le bouton « Supprimer »
supprime le quiz et l’article associé.
e- Détail du quiz
Figure II.17 : Détail du quiz.
Dans cette page, les formateurs peuvent modifier le nom du quiz, la durée, la description,
l'image associée et le cours associé. Il est possible également d’ajouter des tags et des
termes de glossaire. Les cours présents dans la liste déroulante sont les cours aux quels
les formateurs ont accès. Pour afficher un quiz dans une page WordPress, il faut juste
copier le code d’intégration (Shortcode) dans cette page WordPress.
À la droite de cette page il est possible de créer, supprimer, modifier et organiser des
questions relatives au quiz. Les formateurs peuvent créer deux types de questions :
questions à choix multiple et questions à choix unique. Dans les deux cas ils peuvent
spécifier la question et les propositions qui seront affichées aux apprenants. Dans le
Chapitre II Conception et réalisation de StudyPress
37
premier type, les formateurs peuvent sélectionner plusieurs réponses possibles et dans la
seconde, ils peuvent sélectionner une seule réponse possible.
f- Résultat du quiz
Figure II.18 : Résultats du quiz.
Cette page (Figure II.18) affiche la liste des résultats du quiz sélectionné de tous les
apprenants qui ont passé ce quiz. Le clic sur l’icône de réponses affiche le résultat détaillé
de l’apprenant (Figure II.19).
Figure II.19 : Résultat détaillé du quiz.
g- Liste des leçons
Figure II.20 : Liste des leçons.
Chapitre II Conception et réalisation de StudyPress
38
Cette page contient la liste de toutes les leçons dont l’administrateur et les formateurs ont
le droit d'accès. Elle contient également un créateur de leçon rapide, dans lequel il est
possible de renseigner le nom de la leçon, associer une image, un cours et un fichier joint.
Les cours présents dans la liste déroulante sont les cours pour lesquels les formateurs ont
accès.
Cette page permet également de publier, retirer ou de supprimer une leçon. Lorsqu’ elle
est publiée, un article qui contient cette leçon est créé. Lorsqu’elle est supprimée, l’article
associé est supprimé. Le clic sur le bouton « Supprimer » supprime la leçon et l’article
associé.
h- Détail de la leçon
Figure II.21 : Détail d’une leçon.
Sur cette page (figure II.21), les formateurs peuvent modifier le nom, la durée et la
description de la leçon, l'image et le cours associé. Ils peuvent également ajouter des tags
et des termes de glossaire. Les cours présents dans la liste déroulante sont les cours pour
lesquels les formateurs ont accès. Pour afficher une leçon dans une page WordPress, il
faut juste copier le code d’intégration (Shortcode) dans cette page WordPress.
À la droite de cette page il est possible de créer, supprimer, modifier et organiser des
questions relatives au quiz. Un éditeur de texte riche (éditeur WYSIWYG) est intégré
dans le créateur des diapositives, comme le montre la figure II.22. Il est aussi possible
d’ajouter des fichiers multimédia aux slides de présentation comme des vidéos YouTube,
Chapitre II Conception et réalisation de StudyPress
39
des photos, etc. Les formateurs peuvent intégrer des narrations audio ou vidéo aux slides
de leurs leçons.
Figure II.22 : Modification d’une diapositive.
Les fonctionnalités a et b sont accessibles aux administrateurs seulement et les
fonctionnalités c, d, e, f, g et h sont accessibles aux administrateurs et aux formateurs.
VIII-2 Front Office
C’est la partie de l’application accessible aux utilisateurs, par opposition au back office.
L’accès peut être libre ou avec un nom d’utilisateur et mot de passe. Dans notre cas, le
front office correspond à la partie visible par l’apprenant.
a- Lecteur
La figure II.23 montre le lecteur pour visualiser la leçon. Les apprenants peuvent passer
d’un slide à un autre, afficher le lecteur en plein écran et partager la leçon sur les réseaux
sociaux en cliquant sur les boutons associés.
Figure II.23 : Une vue sur le lecteur.
Chapitre II Conception et réalisation de StudyPress
40
La figure II.24 présente le dernier slide de la leçon. Il permet aux apprenants d’évaluer la
leçon (ou quiz) suivant des plusieurs critères (qualité et utilité).
Figure II.24 : Evaluation d’une leçon.
La figure II.25 montre un exemple d’un contenu d’un slide avec sa narration vidéo
associée. L’apprenant consulte le contenu de ce slide en lisant le texte et en visualisant
la vidéo. Il a la possibilité de contrôler le lecteur audio/vidéo.
Figure II.25 : Contenu d’une leçon.
La figure II.26 présente le lecteur pour visualiser un quiz. L’utilisateur qui a passé ce quiz
peut consulter ses réponses ainsi que les réponses correctes.
Chapitre II Conception et réalisation de StudyPress
41
Figure II.26 : Réponses de l’utilisateur avec correction.
b- Visualisation du contenu d’un cours
La première partie de cette page contient le nom du cours, son prix, sa description, les
formateurs, la moyenne d’évaluation et la possibilité de partager le cours sur les réseaux
sociaux. Cette partie permet aussi à l’apprenant de voir son état d’avancement dans ce
cours à l’aide d’une barre de progression.
La deuxième partie liste les activités (leçons et quiz) associées au cours avec leurs
informations. Une icône verte montre l’état de visualisation de l’activité.
Figure II.27 : Contenu d’un cours.
Chapitre II Conception et réalisation de StudyPress
42
IX- Migration des données
L’application a subi plusieurs changements depuis la version 0.12 publiée sur WordPress,
notamment la structure de la base de données. Pour cela, nous avons fait une migration
des données qui assure la préservation des données lors du passage vers une nouvelle
version de l’application. Le but de la migration de données est de transférer les données
existantes des cours, leçons et quiz dans le nouvel environnement. Celles-ci doivent être
transformées sous un format approprié pour le nouveau système tout en préservant
l'information stockée dans l'ancien système.
Nous avons réalisé cette migration en utilisant un script PHP qui exécute des requêtes
SQL. Ces requêtes SQL permettent de modifier les noms des tables ou des champs avec
des instructions comme « ALTER ».
Le tableau ci-dessous montre quelques éléments de cette migration :
Tableau II.2 : Quelques éléments de migration.
Table
source
Champ
source
Table destination Champ
destination
Règle de
migration
Studi_cours Cours_picture
(TEXT)
Studypress_activity Picture_id
(BIGINT)
Récupération de
l’id de l’image
associée à l’url
stockée dans le
champ
Course_picture.
Studi_rate Rater
(VARCHAR)
Studypress_rate_quality User_id
(BIGINT)
Récupération de
l’id à partir du nom
spécifié sur le
champ « rater ».
Studi_quiz
+
Studi_cours
/ Studypress_activity Type
(VARCHAR)
Fusionner les deux
tables pour
différencier entre
une leçon et un
quiz. un champ
« type » est ajouté
pour différencier
entre le quiz et la
leçon.
Studi_slides slides_name
(VARCHAR)
studypress_slide name
(VARCHAR)
Aucune
transformation
Chapitre II Conception et réalisation de StudyPress
43
La migration s’exécute une seule fois après avoir activé le plugin. S’il s’agit d’une
nouvelle installation, la migration ne s’exécute pas. La migration des données se fait
seulement si l’application « StudyPress » est déjà installée.
X- Outils de développement
VI-2 Gestion de projet « Trello »
Trello19 est un outil en ligne, ergonomique et gratuit. Nous utilisons cet outil pour
organiser nos tâches, consigner les informations essentielles et tenir un planning avec tous
les membres de notre équipe. Grâce à cet outil nous simplifions le suivi de notre projet.
Ce service en ligne nous aide à mieux organiser nos activités. Nous consignons nos tâches
sur des post-it « cards » que nous accrochons sur un panneau « board » en les rangeant
dans des listes de gauche à droite :
- Les tâches à faire « To Do » ;
- Les tâches en cours de réalisation « Doing » ;
- Les tâches à tester « To Test » ;
- Les taches réalisées « Done ».
Les colonnes contiennent autant de post-it que nous le souhaitons. Sur chaque post-it, en
plus de renseigner son con tenu, nous pouvons : 1) indiquer la liste des points à vérifier
pour cette tâche ; 2) épingler des documents bureautique et multimédia ; 3) préciser une
date limite, 4) affecter une tâche à un membre de l’équipe ; ou encore 5) indiquer des
tâches associées aux bugs en mettant une couleur pour chaque type : bug mineur en jaune,
bug majeure en orange et bug bloquant en rouge comme le montre la figure ci-dessous
(figure II.28). Au fur et à mesure de l’avancement de nos tâches, nous déplaçons les post-
it d'une colonne à l'autre. Le principe de base est très intuitif et le service regorge
d’options qui peuvent contribuer à l’amélioration de la productivité de toute notre équipe.
19 https://trello.com
Chapitre II Conception et réalisation de StudyPress
44
Figure II.28 : Une vue sur Trello.
VI-3 Modélisation « starUML »
Nous utilisons « StarUML », un outil de modélisation UML (Unified Modeling
Language). UML est une norme du langage de modélisation objet qui a été publiée, dans
sa première version, en novembre 1997 par l’OMG (Object Management Group),
instance de normalisation internationale du domaine de l’objet. [25]
Le logiciel « StarUML » est open source, simple d’utilisation, intuitif pour un débutant
et consomme peu de ressources système. Il supporte la norme UML 2.0 [26]. Cet outil
propose les diagrammes UML nécessaires à une bonne modélisation.
VI-4 Programmation
Pour la réalisation de notre application, nous utilisons les langages de programmation
suivants : PHP, Javascript (JQuery), HTML & CSS et comme environnement de travail
nous avons opté pour l’utilisation de phpStorm qui est un environnement de
développement intégré (IDE) développé par Jetbrains. Cet éditeur, spécialisé dans les
langages web essentiellement en PHP, nous permet de développer de manière plus
efficace et plus propre.
VI-5 Gestion de version « SVN »
Afin de faciliter le développement, le suivie et la collaboration nous utilisons un outil de
gestion des versions. Cet outil s’appelle Subversion (en abrégé SVN), un système de
contrôle de version open source fondée en 2000 par CollabNet, Inc [27].
SVN gère les fichiers et les répertoires, ainsi que les changements que nous y apportons
au fil du temps. Cela nous permet de revenir à des anciennes versions de nos données ou
Chapitre II Conception et réalisation de StudyPress
45
d'examiner la façon dont nos données ont évoluées. C’est aussi l’outil que nous utilisons
pour publier les différentes versions de notre application sur le site WordPress.org.
VI-6 Google Docs
Google Docs est un logiciel de traitement de texte développé par Google. Avec cet éditeur
libre on peut créer, modifier et partager des documents, des présentations ainsi que des
feuilles de calcul en ligne. Plusieurs personnes peuvent travailler ensemble en même
temps sur le même document. Nous l’utilisons pour permettre d’avoir un travail en ligne
et collaboratif en partageant nos documents. Le Burn Down Chart montré dans la figure
II.2 représente un fichier Excel sous Google Docs.
XI- Usage de studypress
L’extension «StudyPress» a connu un nombre de téléchargement important. Actuellement
plus de 3200 téléchargements dont 30% ont été effectués sur les trois derniers mois,
depuis la mise en ligne de la nouvelle version. Le nombre de téléchargements a pu
atteindre les 200 par semaine. L’évaluation de ce plugin a une moyenne de 4,3 sur 5
étoiles. [28]
Selon nos estimations, il existe plus ce que 180 sites web qui ont une installation active
de notre plugin, ci-dessous quelques exemples :
Le site américain joleneh.siteground.net, d’apprentissage de langage de signes
pour enfants [29].
Figure II.29 : Une vue sur le site joleneh.siteground.net.
Chapitre II Conception et réalisation de StudyPress
46
Le site Kazakh e-oku.okok.kz [30] d’apprentissage pour débutant de la
programmation des langages de programmation et des technologies spécifiques.
Figure II.30 : une vue sur le site e-oku.okok.kz.
Icraa20 (soCial leaRning And Authoring environment), c’est une plateforme qui
permet aux enseignants de télécharger les ressources relatives à leurs cours et les
décrire par des métadonnées. Elle permet également un accès aux ressources
accessibles à tous les utilisateurs de la plate-forme (étudiants et enseignants). Elle
admet un téléchargement des ressources ainsi que leurs évaluations et la
recommandation de ces derniers.
La plateforme Icraa offre de multiples fonctionnalités sociales qui peuvent être
retrouvées dans les réseaux sociaux comme Facebook.
Icraa intégre 238 utilisateurs (192 étudiants et 46 enseignants) du département
d'informatique de l'Université de Tlemcen. Elle a été installée en Novembre 2014.
Cette plateforme a eu un grand succès auprès des étudiants et des enseignants. 141
étudiants se sont connecté plus d'une fois à cette plateforme pendant les 6 derniers
mois. 11 enseignants étaient actifs et ont publiés 161 ressources sur 22 modules.
« StudyPress » est classé parmi les meilleurs outils d’apprentissage sous WordPress selon
quelques sites. Le site anglais learnpress le classe parmi les quatre meilleurs LMS
WordPress [31]. Le site espagnol marketaria le distingue comme outil éducatif
intéressant pour le e-Learning qui nous aide à utiliser WordPress pour gérer les cours et
20 http://study-press.com/icra/
Chapitre II Conception et réalisation de StudyPress
47
les formations en ligne [32]. Le site WP Theme le classe parmi les plugins WordPress
les plus faciles à utiliser pour le e-Learning [33].
Nous avons reçu des feedbacks provenant de quelques personnes qui ont utilisé notre
plugin. Nous citons ci-dessous les commentaires de quelques un de ces utilisateurs :
« I am gettin to know how does this plugin work and I find it fantastic. » Par Alejandra.
« It works and it does what it says it does. Simple to set up, you can have it up and running
in minutes. No frills but it can have all you need to present courses and lessons. » Par
chatzopoulo.
« Best lessons and quizzes creation Plugin. I have used all most all LMS type plugins on
the wordpress. This plugin gave me what i want. Thanks to the authors. » Par gpraveen.
XII- Conclusion
Nous avons présenté les différentes étapes du processus de réalisation de notre application
en spécifiant l’environnement de développement et notre démarche pour l’achèvement de
notre travail. Après avoir mené une étude sur la version précédente, nous avons effectué
des améliorations et nous avons rajouté de nouvelles fonctionnalités. De ce fait, nous
avons donné plus de flexibilité à l’application en offrant la possibilité à l’utilisateur de
paramétrer StudyPress selon ses préférences. . L’application StudyPress a été récrite en
utilisant le pattern de conception MVC. Nous avons aussi réorganisé la gestion des cours
et des activités pédagogiques. Nous avons rajouté également quelques fonctionnalités afin
d’améliorer l’application, tel que :
- Gestion des droits d’accès pour les formateurs ;
- Ergonomie et design de l’application ;
- Renforcement de la sécurité de l’application ;
- Paiement sécurisé via PayPal ;
- Portabilité de l’application inter CMS ;
- Intégration avec les réseaux sociaux.
Nous avons présenté le fonctionnement de StudyPress et son usage sur différentes
plateformes ainsi que certains témoignages de quelques utilisateurs de StudyPress.
Conclusion générale
48
Conclusion générale
Le travail présent dans ce mémoire se situe dans le cadre de la conception et la réalisation
d’un outil auteur interactif et social en ligne.
Au terme de ce travail, nous rappelons l’objectif principal de ce mémoire. Il s’agit du
développement d’un outil auteur évolué pour la création des modules e-Learning offrant
aux formateurs et apprenants une grande souplesse et facilité d'utilisation. Ainsi, une
intégration avec les réseaux sociaux afin de combler le manque de collaboration et
d’interactions sociales pour la diffusion du contenu e-Learning.
Dans le présent travail nous avons amélioré la version précédente de « StudyPress » en
ajoutant et intégrant plusieurs fonctionnalités pour l’optimiser. En effet, nous avons
réalisé un outil auteur permettant de faciliter la création, la réutilisation et la diffusion du
contenu e-Learning, notamment les cours et les formations interactives. Cet outil possède
des fonctionnalités de gestion collaborative des phases de production de contenu éducatif.
L’application permet aussi aux apprenants d’interagir entre eux sur le contenu publié en
ligne et diffusé via les réseaux sociaux.
Afin d’évaluer les performances de notre outil nous avons effectué une recherche pour
connaître les utilisateurs de ce plugin, ainsi une étude comparative de notre plugin avec
d’autres outils auteurs concurrents. Nous avons pu noter que le résultat est très
satisfaisant.
Notre outil peut encore évoluer et se voir améliorer. Les perspectives de notre travail sont
nombreuses, nous citons notamment :
- Export/import SCORM/TINCAN API;
- Intégration d’autres modes de paiement ;
- Enrichissement de l’interactivité des leçons ;
- Intégration de plusieurs types de quiz ;
49
Références bibliographiques
[1] M. Prat, Réussir votre projet e-learning : pédagogie, méthodes et outils de
conception, déploiement, évaluation. Herblain: ENI, p 83, 2012.
[2] Suman Ninoriya, P.M.Chawan and B.B.Meshram, "CMS, LMS and LCMS For
eLearning", In International Journal of Computer Science Issues (IJCSI), Vol. 8, pp. 644-
647, March 2011.
[3] H.Keynejad, M.Khademi, M.Haghshenas and H.Kabir, E-learning Content
Authoring Tools and Introducing a Standard Content Constructor Engine, In 2nd
International Symposium on Computing in Science & Engineering, kusadasi-Turkey ,
June 2011.
[4] Ertoran, P. 2006. Les Learning Content Management Systems (LCMS) Actualité
de la Formation Permanente, 200, 71-73.
[5] Carla Limongelli, Filippo Sciarrone, Giulia Vaste, Personalized e-learning in
Moodle: the Moodle_LS System, Journal of e-Learning and Knowledge Society, Vol. 7,
No. 1, 2011.
[6] Laforcade P. et Abedmouleh A., Improving the design of courses thanks to
graphical and external dedicated languages: a Moodle experimentation, In Moodle
Research Conference 2012, Heraklion, Greece, p. 94-101, septembre 2012.
[7] Lebrun, M., Docq, F. & Smidt, D., Claroline, une plate-forme d’enseignement et
d’apprentissage pour stimuler le développement pédagogique des enseignants et la qualité
des enseignements : premières approches. Communication présentée au colloque de
l'AIPU, Montpellier (France), Mai 2008.
[8] Florence Martin, Blackboard as the Learning Management System of a Computer
Literacy Course, University of North Carolina at Wilmington,MERLOT Journal of
Online Learning and Teaching, Vol. 4, No. 2, June 2008.
[9] Keith Harman and Alex Koohang, "Learning Objects: Standards, Metadata,
Repositories, and LCMS", Livre, ISBN: 83-922337-5-1, Infrorming Science Press,
California, 2007.
[10] Aaron Brazell, WordPress Bible, Livre,ISBN: 978-0-470-56813-2, by Wiley
Publishing, Inc.,Indianapolis,Indiana, Canada, 2010.
Références bibliographiques
50
[11] Présentation du plugin Sensei http://www.woothemes.com/products/sensei/
consulté le 05/05/2015.
[12] https://flyplugins.com/wp-courseware/ consulté le 05/05/2015.
[13] https://buddypress.org/about/ consulté le 05/05/2015.
[14] Présentation du thème WPLMS http://themeforest.net/item/wplms-learning-
management-system/6780226 consulté le 05/05/2015.
[15] Description su le plugin CoursePress https://wordpress.org/plugins/coursepress/
consulté le 09/05/2015.
[16] Maryam Khademi, Maryam Haghshenas and Hoda Kabir, A Review On
Authoring Tools, 5th International Conference on Distance Learning and Education
IPCSIT vol.12, 2011.
[17] Documentation logicielle Opale http://scenari-
platform.org/projects/opale/doc/opale/userGuide/co/00-introdution.html consulté le
27/04/2015.
[18] https://fr.articulate.com/products/studio-tech-specs.php consulté le 05/05/2015.
[19] http://www.adobe.com/products/captivate/features.html consulté le 05/05/2015.
[20] Alfensi Faruk, DEVELOPMENT OF INTERACTIVE LEARNING MEDIA
BASED LECTORA INSPIRE IN DISCRETE METHOD COURSE, Proceeding of
International Conference On Research, Implementation And Education Of Mathematics
And Sciences, 2014.
[21] Claude Aubry, SCRUM, le guide pratique de la méthode agile la plus populaire,
Préface de François Beauregard, Dunod, 2011.
[22] BELHABIB A., MATAHRI A., Conception d’un système de recommandation
pour un réseau sociale d'apprentissage, projet de fin d’étude, université de Tlemcen, 2014.
[23] Sondra Ashmore Ph.D.,Kristin Runyan, Introduction to Agile Methods, Livre,
Addison-Wesley Professional, 2014.
[24] Bensmaine Y., Bouacha O., Conception et réalisation d’un système
d’apprentissage dans les réseaux sociaux, projet de fin d’étude, université de Tlemcen,
2013.
[25] Joseph Gabay & David Gabay, UML2 Analyse et conception, Dunod, Paris, 2008.
[26] http://staruml.sourceforge.net/v1/about.php consulté le 03/04/2015.
[27] https://subversion.apache.org/ consulté le 03/04/2015.
[28] https://wordpress.org/plugins/studypress/stats/ consulté le 05/05/2015.
Références bibliographiques
51
[29] http://joleneh.siteground.net/lesson-2/ consulté le 01/05/2015.
[30] http://e-oku.okok.kz/?p=69 consulté le 01/05/2015.
[31] http://learnpress.io/best-lms-wordpress-plugins/ consulté le 03/05/2015.
[32] http://www.marketaria.es/blog/negocios-on-line/wordpress-como-herramienta-
educativa-para-el-elearning consulté le 03/05/2015.
[33] http://www.wpthm.com/plugins/easily-elearning consulté le 01/05/2015.
[34] https://www.mountaingoatsoftware.com/agile/scrum consulté le 20/05/2015.
52
Liste des figures
Figure II.1 Le cycle de vie Scrum................................................................................................... 16
Figure II.2 Burn Down Chart: itération 1...................................................................................... 16
Figure II.3 Architecture de StudyPress.......................................................................................... 23
Figure II.4 Diagramme de cas d’utilisation ................................................................................. 24
Figure II.5 Diagramme de séquence « créer cours » ................................................................. 25
Figure II.6 Diagramme de séquence « créer leçon » ................................................................. 26
Figure II.7 Diagramme de séquence « passer quiz ».................................................................. 27
Figure II.8 Modèle conceptuel de données .................................................................................. 28
Figure II.9 Classes métiers .............................................................................................................. 29
Figure II.10 Classes d’accès aux données....................................................................................... 30
Figure II.11 Configuration.................................................................................................................. 32
Figure II.12 Domaines d’apprentissage........................................................................................... 33
Figure II.13 PayPal............................................................................................................................... 33
Figure II.14 Liste des cours................................................................................................................ 34
Figure II.15 Modification d’un cours............................................................................................... 35
Figure II.16 Liste des quiz.................................................................................................................. 35
Figure II.17 Détail du quiz................................................................................................................. 36
Figure II.18 Résultats du quiz........................................................................................................... 37
Figure II.19 Résultat détaillé du quiz.............................................................................................. 37
Figure II.20 Liste des leçons............................................................................................................. 37
Figure II.21 Détail d’une leçon........................................................................................................ 38
Figure II.22 Modification d’une diapositive................................................................................. 39
Figure II.23 Une vue sur le lecteur.................................................................................................. 39
Figure II.24 Évaluation d’une leçon............................................................................................... 40
Figure II.25 Contenu d’une leçon........................................................................................... ......... 40
Figure II.26 Réponses de l’utilisateur avec correction............................................................... 41
Figure II.27 Contenu d’un cours...................................................................................................... 41
Figure II.28 Une vue sur Trello........................................................................................................ 44
Figure II.29 Une vue sur le site joleneh.siteground.net.............................................................. 45
Figure II.30 Une vue sur le site e-oku.okok.kz............................................................................. 46
53
Liste des tableaux
Tableau I.1 Tableau comparatif des différences entre LMS et LCMS [10]........................ 8
Tableau I.2 Tableau comparatif de quelques outils d’e-learning........................................... 13
Tableau II.1 Classes de traitement de StudyPress...................................................................... 31
Tableau II.2 Quelques éléments de migration............................................................................. 42
54
Liste des abréviations
CMS Content Management System
LMS Learning Management System
LCMS Learning Content Management System
SCORM Sharable Content Object Reference Model
Moodle Modular Object-Oriented Dynamic Learning Environment
TIC Technologies de l’Information et de la Communication
ORM Object-Relation Mapping
DAO Data Access Object
IDE Integrated Development Environment
Résumé
Les outils auteurs peuvent apporter une contribution primordiale à la création du contenu
pédagogique dans le domaine du e-Learning. Dans ce mémoire nous nous sommes
intéressés à créer un outil auteur sous forme d’une extension WordPress, qui offre aux
formateurs la simplicité de générer des modules d’apprentissages flexibles et
dynamiques, tout en se basant sur le concept LMS (Learning Management System). Ceci
en produisant un contenu interactif et en assurant sa diffusion via les réseaux sociaux qui
deviennent de plus en plus importants dans notre vie quotidienne.
Mots clés : e-Learning, outils auteurs, réseaux sociaux, LMS, WordPress.
ملخص
Abstract
Authoring tools can make a primordial contribution to the creation of educational content
in the field of e-Learning. In this work, we are interested in creating an authoring tool as
a WordPress plugin, which offers to the trainers the simplicity to generate flexible and
dynamic learning modules, basing on the concept of LMS (Learning Management
System). This by producing interactive content and by ensuring their diffusion through
social networks that are becoming increasingly important in our daily lives.
Key words: e-Learning, Authoring tools, social networks, LMS, WordPress.