Post on 04-Jun-2018
8/13/2019 platform e-learning en PHP
1/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
1 | P a g e
Remerciements
En prambule ce rapport, nous souhaitons adresser nosremerciements les plus sincres aux personnes qui nous ont apportleur aide et qui ont contribu l'laboration de ce projet ainsi qu la
russite de cette formidable anne universitaire.Nous tenons aussi remercier le Mr. Abdellah ABOUABDELLAH,Professeur de technologies web au sein de lcole nationale des
sciences appliques de Kenitra, de nous avoir trs bien appris et instruitle bagage ncessaire, ainsi que pour ses efforts colossales et ses
conseils aviss qui nous ont permis de donner naissance ce projet.
8/13/2019 platform e-learning en PHP
2/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
2 | P a g e
Ddicaces
On ddie ce rapport modeste nos parents pour leurssoutient et tous leurs sacrifices durant nos tudes et notre
formation.A toute lquipe des enseignants de lcole nationale des
sciences appliques de Kenitra pour leurs grands efforts dontils font toujours preuve.
A lquipe administrative de lcole qui lutte acharnementpour nous offrir un espace ducatif et des conditions de
travail de normes internationales.
8/13/2019 platform e-learning en PHP
3/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
3 | P a g e
Abstract
Pour valuer leurs tudiants les professeurs des coles et desuniversits ont souvent recours des mthodes classiques telle une
valuation crite, orale ou un questionnaire.Cela sans doute requiert du temps et de leffort des deux parties :tudiant et professeur. Pour contrer ces problmes on a cr uneapplication laide de PHP et MySQL. Cette application a pour but de
numriser la pratique de lvaluation classique en implmentant uneapplication qui sera un pont entre les professeurs de diffrentesmatires et les lves, cette application est divise en trois (3) interfacesessentielles : Interface professeur qui offrira aux profs de crer leursquestionnaires selon des niveaux de difficults ainsi que le niveaudtude des lves. Une interface tudiant: Qui donnera un accs auxquestionnaires proposs par les profs afin dy rpondre et avoir une
note, et Finalement une interface Admin qui permettra la validation desmembres et des questionnaires afin de contrer les fraude, en plus dequelques interfaces secondaires tel que linscription.
Pour sauvegarder les rponses, les membres ainsi que les questionnairesafin de les consulter aprs on a eu recours au fameux SGBD MySQL.
8/13/2019 platform e-learning en PHP
4/26
8/13/2019 platform e-learning en PHP
5/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
5 | P a g e
Table des matires
Remerciements................................................................................................... 1
Ddicaces ............................................................................................................. 2
Abstract ................................................................................................................ 3
Rsum du travail............................................................................................... 4
Chapitre 1 : Besoins fonctionnels et conduite de projet ............................ 6
Les besoins fonctionnels : .................................................................................................. 6
Les besoin non-fonctionnels : ........................................................................................... 6
Chapitre 2 : Conception et modlisation de la base de donnes ............10
1) Diagramme de cas dutilisation ............................................................................... 10
2) Diagramme de squence .......................................................................................... 11
3) Diagramme dactivit ................................................................................................ 14
4) Rgles de gestion et diagramme de classe ....... Error! Bookmark not defined.
5) Modle relationnelle de donnes ........................................................................... 17
a) MCD :......................................................................................................................... 17
b) MLDR ........................................................................................................................ 18
Chapitre 3 : Ralisation ...................................................................................19
Outils de travail : ................................................................................................................ 19
Code : ................................................................................................................................... 22
8/13/2019 platform e-learning en PHP
6/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
6 | P a g e
Chapitre 1 : Besoins fonctionnels etconduite de projet
Les besoins fonctionnelsIl s'agit des fonctionnalits du systme. Ce sont les besoins spcifiant uncomportement d'entre / sortie du site :
o Enregistrer un tudianto Enregistrer un professeuro Entrer une matireo Dfinir un niveau de difficulto Dfinir un niveau de scolarito Crer un questionnaireo Entrer les questions pour un questionnaireo Entrer les rponseso Dfinir une rponse comme correcteo Un tudiant peut passer un questionnaireo Chaque valuation de ltudiant doit avoir une noteo un professeur doit tre dfini par une matire et un niveauo un questionnaire est dfinit par une matire, un niveau et une difficulto activer un compteo dsactiver un compteo valider un questionnaireo dsactiver un questionnaireo chiffrer les mots de passeo pouvoir uploader une imageo supprimer un questionnaireo la suppression dun questionnaire, implique la suppression de toutes
les questions qui y appartient.o La suppression dune question, implique la suppression de toutes les
rponses qui y appartient.
Les besoin non-fonctionnelsConnectivit :
otablissement de la connexion la base de donne (SELECT, INSERT,UPDATE et DELETE)
o Besoins de mot de passe - hashageo Dconnexion : fermer la session de lutilisateur.Audit
o Vrification de lexistence des attributs avant lexcution des requtes.Performance
o Temps de rponse : temps de reponse trs court.o Temps de traitementtemps de traitement optimiser.
8/13/2019 platform e-learning en PHP
7/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
7 | P a g e
Disponibilito Le site doit tre disponible a tout moment et de nimporte quel source.
Intgrito La capture des erreurstraitement conditionnels des pages web.
Compatibilit
o Compatible avec lensemble des navigateurs web.Aptitude la maintenance
o La conforme aux rgles de normalisation de MERISE : ce qui offre unecapacit de maintenance assez important.
Conduit de projet :o Planification prvisionnelle :
Decoupage du project :Le partitionnement chronologique du projet est comme suit :
1- Etudes des besoins2- Modlisation de la base de donnes3- Ralisation des pages web en PHP4- Ladaptation dun design
Rpartition des taches :Chaque membre devait remplir une partie du projet bien prcisedans une dure limit :
o 2 jours pour faire ltude des besoinso 3 jours pour la modlisation de la base de donneso 10 jours pour le codage des pages webo 3 jours pour limplmentation du design
Planning :Le 15/04/2013 : rassemblement de tous les membres pourmettre en place les phases de lanalyse et la ralisation du projet.Le 19/04/2013 : dbut de la phase de ltude des besoins.Le 22 / 05 /2013 : analyse des rsultats obtenu et dbut de lamodlisation de la base de donnesLe 01/05 /2013 : entamer la partie du codage des pages PHPLe 12/05/ 2013 : adaptation dun design choisi
o Planification relle : Rpartition chronologique du projet :
8/13/2019 platform e-learning en PHP
8/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
8 | P a g e
Vu que les besoins fonctionnel ont t dfini par le professeurencadrant dans la sance cour, on a donc juste eu a lesdvelopp un peu plus et commencer la modlisationdirectement.1- Conception base de donnes2- Codification des pages web3- Intgration du design
Rpartition des tches :A lencontre de la diffrence de difficult entre les taches une
nouvelle rpartition sest impose:
o 4 jours pour la modlisation de la base de donnespar un membre.
o 5 jours pour le codage des pages web par 2membres.
o 4 jours pour limplmentation du design par unmembre.
Planning :D quelques contraintes le planning cest a subi un dcalagede quelque jours :Le 26/04/2013 : runion des membresLe 05/05/2013 : dbut de la phase de modlisation de la base dedonnes.Le 19/ 05 /2013 : entamer la partie du codage des pages PHP
o Analyse des carts Ecart sur les rsultats souhait :
Bien que le rsultat soit satisfaisant vu quil remplit lensemble
des besoins dcel prcdemment, il reste insatisfaisant.
Ecart sue la rpartition des tches :D lintervention du professeur encadrant, o il a ralis une
partie de la conception qui est lanalyse du besoin, notre
planification pour les la rpartition des taches a d sadapter, etvu que la quantit de travail nest pas quitablement rpartie sur
les diffrentes taches, une nouvelle rpartition des membrest ncessaire aussi.
Ecart du planning :Notre planning de dpart a t repouss par une priode de 2semaines, vu que lensemble des membres de lquipe t
occup par des examens final avanc de sa date initial, ainsi quele dveloppement dun autre projet dont la date de livraison t
dterminer aprs pour le 15/05/2013.
8/13/2019 platform e-learning en PHP
9/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
9 | P a g e
8/13/2019 platform e-learning en PHP
10/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
10 | P a g e
Chapitre 2: Conception etmodlisation de la base de donnes
1)Diagramme de cas dutilisationEtudiantAdmin
Passer un questionnaire
Authentification
Modifier profil
Deconnection
S'inscrire
Etudiant
Consulter un
questionnaire
Valider
Creer un profil
Modifier un profil
Supprimer un profil
Admin
ProfAdmin
Authentification
Modifier profil
Deconnection
S'inscrire
Prof
Consulter ses propresquestionnaires
Valider
Creer un profil
Valider un questionnaire
Modifier un profil
Supprimer un profil
AdminConsulter questionnaire de sa matiere
Ajouter questionnaire
8/13/2019 platform e-learning en PHP
11/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
11 | P a g e
2)Diagramme de squenceEtudiant
Authentification()
Reponse
Base de donnes
Etudiant
Modifier_Profil()
Reponse
Afficher_Questionnaire()
Reponse
Passer_Questionnaire()
Reponse
Deconnection()
8/13/2019 platform e-learning en PHP
12/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
12 | P a g e
Professeur
Authentification()
Reponse
Modifier_Profil()
Reponse
Ajouter_Questionnaire()
Reponse
Consulter_Propres_Questionnaire()
Reponse
Consulter_Questionnaires_matiere()
Reponse
Professeur
Base de donnes
Deconnection()
8/13/2019 platform e-learning en PHP
13/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
13 | P a g e
Admin
Authentification()
Reponse
Modifier_Profil_(Prof/Etudiant)()
Reponse
Valider_(Questionnaire/Prof/Etudiant)()
Reponse
Administrateur
Base de donnes
Deconnection()
8/13/2019 platform e-learning en PHP
14/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
14 | P a g e
3)Diagramme dactivitEtudiant
Authentification
Echec
Choisir operation
Reussite
Modifier profilDeconnectionConsulter un
questionnaire
Echec
Passer ou refaire un
questionnaireRetour au menuAfficher les scores
Retour au menu
8/13/2019 platform e-learning en PHP
15/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
15 | P a g e
Professeur
Authentification
Echec
Choisir operation
Reussite
Modifier profilDeconnection
Echec
Afficher
questionnaires
meme matiere
Afficher
questionnaires crs
Remplissage des
questions
Ajouter un
questionnaire
Retour au menu
Retour au menu Afficher les notes /
questionnaire
Retour au menu
8/13/2019 platform e-learning en PHP
16/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
16 | P a g e
Admin
Authentification
Valider
questionnaire /
admin / prof
Modifier profil
etudiant / prof
Echec
Choix
Supprimer
questionnaire
8/13/2019 platform e-learning en PHP
17/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
17 | P a g e
4)Modle relationnelle de donnesa) MCD
8/13/2019 platform e-learning en PHP
18/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
18 | P a g e
b)MLDR
Etudiant(id, nom, prenom, pseudo, password, activation, id_niveau)Professeur(id, nom , prenom, pseudo, password ,email, image,
id_niveau, id_matiere)Matiere (id,libelle,image)Niveau (id,libelle)Difficulte(id, libelle)Passer (id, id_etudiant, id_questionnaire, note)Questionnaire (id, libelle, id_matiere, id_niveau, id_prof, activation)Question(id, libelle)Reponse(id, libelle, etat)
8/13/2019 platform e-learning en PHP
19/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
19 | P a g e
Chapitre 3: Ralisation
Outils de travail :Dans cette partie nous allons dtailler les diffrents outils utiliss
pour la ralisation du projet. Nous avons utilis le couple PHP/MySQL, etsans aucun doute eu besoin de HTML/CSS pour le dveloppement dusite, nous dtaillerons dans les sous parties les raisons de ce choix.
PHP / MySQL :
Nous avons choisi de dvelopper le projet en langage PHP, car celui-ci
est le langage universel pour le dveloppement de site web dynamique,autant pour ses qualits comme langage de programmation ainsi que sapopularit extravagante.De plus MySQL est son complmentaire indispensable pour grer touttrafic de donne.
Pourquoi le choix du PHP et MySQL ?Prsentation :
Le langage PHP est un langage de programmation web ct serveur, ce qui veut direque c'est le serveur qui va interprter le code PHP (langage de scripts) et gnrer ducode HTML qui pourra tre interprt par votre navigateur.Le PHP permet d'ajouter des fonctionnalits de plus en plus complexe, d'avoir dessites dynamiques, de pouvoir grer une administration de boutique en ligne, demodifier un blog, de crer des rseaux sociaux...Le PHP fut cr en 1994 par Rasmus Lerdorf, c'est un langage libre et gratuit, avecune grande communaut mondiale.
Pourquoi PHP ?
Le PHP est rapide. Compil en tant que module Apache, les temps dexcution sonttrs performants. A condition toutefois de lutiliser sur une plateforme Linux.
Contrairement aux CGI, les scripts PHP sont donc excuts par le serveur web, sansressources supplmentaires. Pour des sites trs frquents, le PHP savre plusperformant que lASP.
Le PHP est dabord un langage facile apprendre. Il reprend assez fidlement lasyntaxe du C, ce qui rend sa prise en main par un dveloppeur qui connait ce langagequasi immdiate. De plus cest un "C pour les nuls", cest dire quil ne contient pas
8/13/2019 platform e-learning en PHP
20/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
20 | P a g e
les contraintes qui empoisonnent les dveloppeurs dbutants, comme lesproblmes de dclaration de variables, ou la gestion des chanes de caractres.
Le PHP gre trs bien, depuis les origines, les requtes SQL. On peut doncfacilement crire des programmes qui affichent des donnes extraites de bases SQL,
ou qui stockent des donnes postes par un formulaire dans une table SQL. Le PHPsait communiquer avec presque tous les SGBD de la cration (Oracle, MySql, DB2,Informix, Ingres, Postgresql, SQL Server, Access etc...).
Les plateformes Linux/Apache/PHP sont dune trs grande stabilit. Un site peuttourner pendant des mois et des mois sans avoir besoin dun reboot... Apprciable
pour les sites de-commerce ou les sites boursiers (ces derniers choisissent de plusen plus le PHP, ce nest pas un hasard) pour lesquels une panne dune heure peutcoter des millions...
Aux instructions de bases du PHP, sajoutent une foule de fonctions, couvrant tous
les besoins imaginablespour un webmaster : applications e-commerce, gnrationde PDF, cration dimages la vole, parsing XML, programmation COM,compression/dcompression, statistiques, cryptologie, gnration demail, gestion
dannuaires LDAP et... un raton laveur. Pour le cas, fort improbable, o il resterait
quelque chose inventer, vous pourrez, grce une API trs stable et bien faite,programmer vos propres modules dextension.
Un atout majeur, et qui achve de convaincre nombre dutilisateurs: le PHP, laborpar des pionniers de lOpen Source, bnficie dune norme communautdutilisateurs, qui sentraident au sein de nombreux forums, mettent dispositiondes scripts ou des applications compltes en Open Source.
Enfin, PHP est gratuit !(licence GNU GPL !)
MySQL
PrsentationMySQL est un systme de gestion de base de donnes (SGBD). Il est distribu sousune double licence GPL et propritaire. Il fait partie des logiciels de gestion de base
de donnes les plus utiliss au monde, autant par le grand public (applications webprincipalement) que par des professionnels, en concurrence avec Oracle, Informix etMicrosoft SQL Server.
Son nom vient du prnom de la fille du co-crateur Michael Widenius, My. SQL faitallusion au Structured Query Language, le langage de requte utilis.
MySQL AB a t achet le 16 janvier 2008 par Sun Microsystems pour un milliard dedollars amricains. En 2009, Sun Microsystems a t acquis par Oracle Corporation,mettant entre les mains d'une mme socit les deux produits concurrents que sontOracle Database et MySQL. Ce rachat a t autoris par la Commission europenne
le 21 janvier 2010.
8/13/2019 platform e-learning en PHP
21/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
21 | P a g e
Pourquoi MySQLQuelques avantages de MySQL
Les principaux concurrents de MySQL sont PostgreSQL, Microsoft SQL Server et
Oracle. Par rapport tous ces produits, MySQL possde plusieurs avantages majeurs,dont :
De performances leves, Un cot rduit, Sa simplicit de configuration, Sa portabilit, L'accessibilit de son code source.
Performances de MySQLMySQL est indniablement un systme rapide. Vous pouvez consulter lesstatistiques des performances sur le site mysql.com.
Cot
MySQL est disponible gratuitement, sous une licence Open Source, ou pour un prixtrs raisonnable pour les licences commerciales si vous en avez besoin pour votreapplication.
Portabilit
MySQL peut tre utilis sur un grand nombre de systmes Unix, ainsi qu'avecWindows.
Framework CSS : Foundation
Foundation est un framework CSS qui permet de concevoir rapidement desinterfaces Web responsive fluides et ractives. Cette technique permet de crerune seule interface qui sadapte automatiquement aux tailles dcrans des diffrents
appareils (PC, tablettes, smartphones, etc.).
Le framework propose des fonctionnalits comme un systme de grilles pour lepositionnement des lments en CSS, un systme de layout responsive pour adapterle site aux diffrents navigateurs web et mobiles, des lments dinterfaces (onglets,
tableaux, etc.) et bien plus.
Utilisation de Zepto, la bibliothque JavaScript lgre compatible jQuery.
En outre, une fonctionnalit mixins puissante est disponible avec la version SASS(Syntactically Awesome Stylesheets). Elle permet d'utiliser les grid tools sansalourdir le code HTML de la page avec des noms de classes de la grille.
8/13/2019 platform e-learning en PHP
22/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
22 | P a g e
CodeDans cette section, nous allons voir la manire dont nous avons ordonn les
diffrentes sections du site : tant au niveau fonctions, quau niveau de
larborescence. Nous allons donc dans un premier temps expliquer larchitecture dudossier parents.
Ci- dessous est le schma explicatif de larborescence :
8/13/2019 platform e-learning en PHP
23/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
23 | P a g e
Le esignPoint important dun site internet, la mise en page a connu quelques modifications au cours du
temps.Le design serait mme un atout pour donner envie lutilisateur de naviguer sur votre site ou
pas !
Le design du site entier nous a donc pris beaucoup de rflexion, pour quil soit aussi simpliste
quoprationnel et pratique, tant sa structure qui met en avant toutes ses fonctionnalits dans un
cadre ais se familiariser avec.
La maquette de la page daccueil du site est la suivante:
8/13/2019 platform e-learning en PHP
24/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
24 | P a g e
Conclusion gnrale et perspectives du travail
La projet trait dans ce rapport reprsente un atout puissant et moderne quisintgre avec brio dans la nouvelle politique adapte par le Maroc qui sintitule
Maroc numrique 2013 qui bute a informatiser et numriser tous les supportdinformation et dlaisser les moyens classiques avec le papier.
En effet ce projet permet de faciliter toute une tache trs rude auparavant qui estlvaluation des lves travers un questionnaire cr par les profs pour diffrentslves et de stoker tous les rsultats dans une base de donnes qui sera accessiblepartout o len ai.
Nanmoins comme chaque travail, celui-l aussi est loin dtre achev, car une foissortit du LAN et envoy sur internet pour que laccs la plateforme soit possiblepartout, il sera sujet de diffrentes attaques pirates, car le cot scurit requiert desspcialistes dans le domaine pour limplmenter.
Aussi quelques fonctionnalits utiles peuvent tre ajoutes au niveau de la base dedonnes et au programme, tel un Timer qui permettra de calculer le temps que lestudiants ont fait, ou bien dun Timer qui valide automatiquement le questionnaire
aprs un laps de temps.
Finalement on peut aussi songer implmenter un systme de notification et demessagerie laide de PHP ou AJAX qui va permettre de prvenir les tudiants des
nouveauts via email ou bien directement dans la plateforme.
8/13/2019 platform e-learning en PHP
25/26
Ecole Nationale des Sciences Appliques - Kenitra Anne Universitaire 2012-2013
25 | P a g e
Webographie
http://www.webmasterfrance.fr/definition-php.html http://www.webmaster-hub.com/publication/Pourquoi-choisir-le-
PHP-pour.html http://fr.wikipedia.org/wiki/MySQL
http://www.webmasterfrance.fr/definition-php.htmlhttp://www.webmasterfrance.fr/definition-php.html8/13/2019 platform e-learning en PHP
26/26