Encadré par :
Mme Laouiti zeineb Encadreur industriel
Réaliser par :
Ouri ranim
Introduction générale.................................................................................................................. 6
Chapitre I : Généralité sur CNTE et contexte du projet ............................................................. 7
I. Introduction ......................................................................................................................... 8
II. Présentation de la société d'accueil : ................................................................................. 8
1. Historique de CNTE : .............................................................................................. 8
2. Services et missions du CNTE :............................................................................... 9
3. Présentation de l’organigramme de l’entreprise d’accueil : ......................................... 10
CHAPITRE 2: Cahier de charge et spécifications des besoins ................................................ 11
I. Introduction : ................................................................................................................. 12
II. Présentation du projet : .............................................................................................. 12
1. Objectif : ................................................................................................................ 12
2. Cible et caractéristique :......................................................................................... 12
3. Description du contenu : ........................................................................................ 12
4. Spécification des besoins fonctionnels : ................................................................ 13
5. Spécification des besoins non fonctionnels : ......................................................... 13
6. Méthodes de gestion de projet : SCRUM et Diagramme de Gannt ............................ 14
III. Conclusion ................................................................................................................. 16
Chapitre 3 : Conception fonctionnelle ..................................................................................... 17
I. Introduction ................................................................................................................... 18
II. Vue fonctionnelle du système.......................................................................................... 18
1 Acteurs .......................................................................................................................... 18
2 Diagramme de cas d’utilisation ..................................................................................... 19
III Vue statique du système : Diagramme de classe............................................................. 20
1. Diagramme de classe .................................................................................................... 20
IV. Vue dynamique du système ........................................................................................... 21
1. Diagrammes de séquences ........................................................................................... 21
V Modélisation conceptuelle et logique des données .......................................................... 24
1 Définition ...................................................................................................................... 24
2 Modèle Conceptuel des données : ................................................................................. 24
3 Modèle logique des données ......................................................................................... 24
VI Conclusion ...................................................................................................................... 26
Chapitre 4 : Conception technique ........................................................................................... 27
I. Introduction ................................................................................................................... 28
II. Environnement et technologies logicielles ...................................................................... 28
1 Technologies utilisées ................................................................................................... 28
2. Framework ................................................................................................................... 29
III. Conclusion ...................................................................................................................... 30
Chapitre 5 : Réalisation ............................................................................................................ 31
II. Cas : S’authentifier au système ....................................................................................... 32
III. Cas : Ajouter des fichiers. .............................................................................................. 33
IV. Cas : Suivre des cours ................................................................................................ 34
V. Conclusion ....................................................................................................................... 34
Conclusion générale ................................................................................................................. 35
Liste des figures
FIGURE 1 : ORGANIGRAMME CNTE ........................................... 10
FIGURE 2: METHODE DE DEVELOPPEMENT AGILE : SCRUM ............... 15
FIGURE 3: DIAGRAMME DE GANTT CORRESPOND A NOTRE PROJET ..... 16
FIGURE 4: DIAGRAMME DE CAS D’UTILISATION.............................. 19
FIGURE 5: DIAGRAMME DE CLASSE ............................................. 20
FIGURE 6: DIAGRAMME DE SEQUENCE DU CAS "S’AUTHENTIFIER" ..... 22
FIGURE 7: DIAGRAMME DE SEQUENCE DU CAS "AJOUTER COUR" ...... 23
FIGURE 8: MODELE CONCEPTUELLE DE LA BASE DE DONNEES ............ 25
FIGURE 9: LA PAGE POUR L’AUTHENFICATION ................................ 32
FIGURE 10: UNE PAGE POUR L’ENSEIGNANT .................................. 33
FIGURE 11: UNE PAGE POUR L’ETUDIANT ..................................... 34
Introduction générale
Dans un premier temps, on commence par présenter l’entreprise d’accueil, le centre National
des Technologies en Education (CNTE), puis décrire le cadre général à travers lequel on
aboutit à la problématique de cette recherche.
1. Historique de CNTE :
Depuis sa création en 1984 le centre National des Technologies en Education prouve une
incubation remarquable dans le domaine des technologies de pointe conférant à l’éducation.
• Développer des contenus pédagogiques numériques pour tous les cycles d'enseignement
selon les programmes officiels en vigueur.
• Fournir au secteur de l'éducation des services relevant de ses attributions qui s'adaptent aux
progrès des technologies de l'information et de la communication, y compris les services
Internet.
• Réaliser les études et les analyses nécessaires convergeant vers l'exploitation des
technologies de l'information et de la communication dans le système éducatif.
• Fournir des services et offrir des consultations aux tiers dans le domaine des technologies
de l'information et de la communication dans l'enseignement, l'apprentissage et la formation,
et cela moyennant rémunération
3. Présentation de l’organigramme de l’entreprise d’accueil :
Dans ce chapitre, nous abordons la phase d’analyse et spécification qui considèrent comme
une étape très important au niveau de développement. Il s’agit de définir d'une manière
normalisée les relations entre les différents acteurs et le système afin d’accomplir une
application fiable et sûre. Elle doit également permettre d'évaluer les caractéristiques
souhaitées du logiciel au niveau de sécurité et d’ergonomie
1. Objectif :
L’objectif principal de ce projet est de développer une application web qui permet de gérer le
système d’information des étudiants du département informatique. Pour aboutir à cette fin,
nous allons tout d’abord effectué une étude conceptuelle de l’application. Cette dernière nous
permettra, en effet, d’accéder facilement à la réalisation de l’application en organisant les
idées et en structurant le processus de codage suivant des diagrammes.
2. Cible et caractéristique :
3. Description du contenu :
L’application que nous allons développer devra regrouper toutes les fonctionnalités
nécessaires pour :
o S’authentifier.
o Visualiser des cours.
o Rechercher des cours.
o Visualiser les statistiques des notes.
o Ajouter des cours.
S’authentifier :
L’étudiant devra pouvoir trouver le plus rapidement possible un cours recherché par un mot
clé qui lui est associé.
L’étudiant devra pouvoir visualiser les notes de chaque module selon les semestres.
L’administrateur devra ajouter un cours et lui associer un mot clé. Ce dernier sera
automatiquement affiché chez l’étudiant.
– Sécurité : Les comptes des utilisateurs sont sécurisés par mot de passe (longueur, code
système, expiration de sessions, etc.)
– Performance : L’application répond à toutes les exigences des internautes d’une manière
optimale.
– Portabilité : L’application est multiplateforme. Elle fonctionne sur tous les systèmes
d’exploitation et tout type de terminal.
Scrum
– En second lieu définir les priorités des fonctionnalités et choisir lesquelles seront réalisées
dans chaque itération.
– Par la suite focaliser l’équipe de façon itérative sur l’ensemble de fonctionnalités à réaliser,
dans des itérations appelées Sprints
– Un Sprint aboutit toujours sur la livraison d’un produit partiel fonctionnel appelé incrément.
S’il est difficile de définir la nature de Scrum, sa mise en place est beaucoup plus simple et
peut être résumée par la figure suivante :
– Flexible dans la mesure où une équipe de développement fonctionne comme une unité,
Vu que Scrum ne couvrant que les aspects de gestion de projet, et pour compléter le vide
laissé en matière de pratiques de développement, nous avons pris la décision de coupler
Scrum avec une autre méthodologie de gestion est celle du Diagramme de Gantt et qui couvre
les bonnes pratiques d’ingénierie logicielle
Figure 3: Diagramme de Gantt correspond à notre projet
III. Conclusion
Dans ce chapitre nous avons présentés le cadre général de notre projet en déterminant la
problématique et les périmètres tout en proposant une solution envisagée pour faire face à la
situation courante. Nous avons dévoilé les exigences des besoins fonctionnels et non
fonctionnels. Comme nous avons choisi d’adopter la méthodologie Scrum pour la conception
de notre futur système accompagné d’un diagramme de Gantt. Dans le chapitre suivant nous
allons reproduire les différents besoins cités précédemment sous forme de diagrammes UML.
Chapitre 3 : Conception
fonctionnelle
I. Introduction
Dans cette section, nous allons reproduire les différents besoins cités précédemment sous la
forme de diagrammes UML. UML est un langage de modélisation graphique à base de
pictogrammes. Il est apparu dans le monde du génie logiciel, dans le cadre de la conception
orientée objet . Au final, le langage UML est une synthèse de tous les concepts et formalismes
méthodologiques les plus utilisés, pouvant être utilisés, grâce à sa simplicité et à son
universalité, comme langage de modélisation pour la plupart des systèmes devant être
développés.
Un acteur est un rôle joué par une personne externe, un processus ou une chose qui
interagit avec un système. Les acteurs qui peuvent interagir avec notre application sont :
Ce diagramme permet d’identifier les possibilités d’interaction entre le système et les acteurs
(intervenants extérieurs au système). Il représente toutes les fonctionnalités que le système
doit fournir.
Pour schématiser la vue comportementale de notre système informatique, nous faisons recour
au diagramme de séquence d’UML. Ce diagramme permet de présenter les interactions entre
l’acteur et le système avec des messages présentés dans un ordre chronologique.
Le digramme de séquence système traite le système informatique comme étant une boite
noire. Le comportement du système est décrit de l’extérieur sans avoir d’idée la réalisation.
Nous pouvons, alors, constater que certains cas d’utilisations sont similaires, c’est pour cette
raison que nous avons choisi de traiter quelques exemples.
cas "S’authentifier"
1 Définition
Une base de données est un ensemble organisé de données. Il est la collection de tables,
requêtes, procédures et autres objets. Les données sont généralement organisées pour être
utilisées par des processus. Les bases de données sont souvent mises à disposition des
utilisateurs des serveurs locaux pour une sécurité optimale[3].
– Enseignants (id, email, password, remember_token, name, tel, cin, ddn, grade, matiere_
de_specialite, is_verified, created_at, updated_at) ;
– Etudiants (id, code, nom, prenom, groupe, cin, tel, created_at, updated_at) ;
– Evaluations (users ->users_id, modules -> modules_id, note, semestre, type, coeff,
created_at, updated_at) ;
Ce chapitre est décomposé en trois sections importantes. Tout d’abord, une étude préliminaire
sur les technologies, Framework, architectures dédiés pour le développement web, ensuite le
choix de la solution technique à adopter. Et enfin, une vue globale sur la plateforme du projet.
HTML
L’HTML est un langage informatique utilisé sur Internet. Ce langage est utilisé pour créer des
pages web. L’acronyme signifie HyperText Markup Language, ce langage
permet de réaliser de l’hypertexte à base d’une structure de balisage.
L’HTML5 est le successeur de l’HTML ça veut dire qu’il s’agit toujours
du HTML à la différence de quelques nouvelles balises. De plus, la
version 5 est aujourd’hui compatible avec la majorité des navigateurs et
répond aux normes W3C (C’est une communauté internationale où les
membres, une équipe à plein temps, et le public travaillent ensemble pour
développer les standards du web) Fondamentalement
CSS
Les feuilles de styles (en anglais "Cascading Style Sheets", abrégé CSS)
sont un langage qui permet de gérer la présentation d’une page Web. Les
styles permettent de définir des règles appliquées à un ou plusieurs
documents HTML. Ces règles portent sur le positionnement des éléments,
l’alignement, les polices de caractères, les couleurs, les marges et
espacements, les bordures, les images de fond, etc.
PHP
PHP est un langage de script coté serveur qui à été conçu spécifiquement pour le
Web. Le code PHP est inclus dans une page HTML et sera exécuté à
chaque fois qu’un visiteur affichera la page. Le code PHP est
interprété au niveau du serveur web et généré du code HTML ou
toute autre donnée affichable dans le navigateur de l’utilisateur.
PHP a été conçu en 1994 par Rasmus Lerdorf. Il a ensuite été adopté par d’autres personnes
talentueuses et réécrit quatre fois avant de devenir le produit abouti que nous connaissons
aujourd’hui. En novembre 2007, il était installé sur plus de 21 millions de domaines et sa
croissance est rapide. PHP est un projet open-source, ce qui signifie que vous pouvez vous
procurer son code, l’utiliser, le modifier et le redistribuer gratuitement. La dernière version
principale de PHP est la version 5. Elle bénéficie d’une réécriture complète du moteur Zend et
de quelques améliorations importantes au niveau du langage
MySQL
MySQL est un système de gestion de base de données relationnelle (SGBDR). Il est distribué
sous une double licence GPL et propriétaire. Il fait partie des logiciels de gestion de base de
données les plus utilisés au monde.
$con = mysql_connect('HOSTNAME','USERNAME','PASSWORD');
Choisissez la base de données à laquelle vous voulez accéder à l'aide de mysql_select_db. Par
example:
mysql_select_db('DATABASENAME', $con)
2. Framework
2.1 Définition
Un Framework est un outil qui regroupe tout un ensemble de fonctionnalités préexistantes Il
vous permet de bénéficier d’une architecture d’application de base et offre ainsi aux
développeurs un confort de conception grâce notamment à une facilité et à une rapidité de
développement, à des conventions précises et à une décomposition de l’application
méthodique et logique.
- Pyramid - TurboGears
Laravel - Jelix - Agavi - Atomik - Copix - Kumbia PHP - PRADO - WebSite-PHP - Phalcon
.NET : Java EE - Spring MVC - Struts - Tapestry - Play - Stripes - ZK - Cocoon - GWT -
Echo - AppFuse - Grails - RAP - Wicket - WebObjects - Vert.x
– Les modèles : ils représentent les données de l’application et permettent l’interaction avec
la base de données (ou les web services, etc.).
– Les vues : ce sont les représentations (les templates) des résultats de la requête que
l’utilisateur a effectuée.
– Les contrôleurs : ils interceptent toutes les requêtes faites par les utilisateurs.
III. Conclusion
Nous avons présenté dans ce chapitre une idée sur le framework et l’architecture à adopter
dans notre projet. Cette étude nous a permis de distinguer les différents points sur lesquels on
va travailler et les technologies qu’on va utiliser pour réaliser notre application. La partie
réalisation fera l’objet du chapitre suivant.
Chapitre 5 : Réalisation
I. Introduction
Les figures ci-dessous représentent quelques captures d’écran de pages de notre site. Les
pages qui suivent l’authentification et les pages pour l’étudiants et les pages pour les
enseignants
En s’authentifiant, comme étudiant tu peux voire les cours et les notes de votre semestre
V. Conclusion
Nous avons vu tout au long de ce chapitre, différents scénarios de notre application, l’étape
suivante sera une conclusion et perspectives dans laquelle on va résumer les différents apports
de notre application
Conclusion générale
Ce stage d’ouvrier réalisé au sein de la société CNTE, est considéré
comme étant une grande opportunité pour tester toutes les
connaissances acquises durant le parcours de l’année en génie
informatique à Ecole Polytechnique L'Université Libre de Tunis . Plus
précisément, il nous a permis de mettre en œuvre nos compétences
matérielles et logicielles.
http://www.9web.edunet.tn/
http://www.bacweb.tn/
http://www.injez.com/
https://encysco.blogspot.com/
https://www.devoirat.net/
https://www.tunisiecollege.net/
https://www.duolingo.com/
المرحلة االبتدائية
http://www.exofiches.net/
http://www.larecre.net/
http://www.lasouris-web.org/
http://www.adslfred.fr/
المرحلة الثانوية
http://www.sos-devoirs-corriges.com/
http://www.multimaths.net/
http://www.capmention.fr/
http://www.enseignons.be/secondaire
http://www.mathovore.fr/
أخرى
http://learningapps.org/index.php?overview&s=&category=0&tool
تلخيص
فإن هذا المشروع مخصص للمركز الوطني للتقنيات، بالنسبة للتدريب العملي
ويتكون من تصميم وتنفيذ وتطوير موقع ويب تعليمي، في التعليم
PLCولتحقيق هذا الهدف قمنا باستعمال ال
كلمات مفاتيح
MYSQL ,PHP, HTML, CNTE
Résumé :
Pour un stage d'ouvrier ce projet est pour le Centre
National des Technologies en Education il consiste
Conception, Réalisation et Développement d'un site web
éducative