learnup !

24
LearnUp ! Aymeric Assier Hajer Chrigui Thibaut Krattinger Claire Rollinger 1

Upload: keran

Post on 19-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

LearnUp !. Aymeric Assier Hajer Chrigui Thibaut Krattinger Claire Rollinger. LearnUp ! - Plan. Présentation des besoins Conception Développement Bilans. LearnUp ! - Besoins. Migration d’applications éducatives. AbaLect AbaCalc. LearnUp !. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: LearnUp  !

1

LearnUp !

Aymeric Assier

Hajer Chrigui

Thibaut Krattinger

Claire Rollinger

Page 2: LearnUp  !

2

LearnUp ! - Plan

Présentation des besoins

Conception

Développement

Bilans

Page 3: LearnUp  !

3

AbaLect

AbaCalcLearnUp!

LearnUp ! - Besoins

Migration d’applications éducatives

Inspiration des logiciels existantspour recréer une application

offrant de meilleures fonctionnalités

Page 4: LearnUp  !

4

AbaCalc

• Logiciel de mathématiques

• Du CP au CM2

• Pédagogie différenciée

• Suivi des résultats

LearnUp ! - Etude de l’existant

Page 5: LearnUp  !

5

• Logiciel de lecture

• Du CP à la 6ème

• L’enseignant saisie ses propres textes, questions, exercices

• Suivi des résultats

LearnUp ! - Etude de l’existant

AbaLect

Page 6: LearnUp  !

• Installation nécessaire sur chaque poste

• Pas de base de données

• Pas de partage des exercices

• Peu ergonomique

• Interfaces graphiques dépassées

LearnUp ! - Etude de l’existant

Inconvénients de la suite AbaLog

6

Page 7: LearnUp  !

7

LearnUp ! - Objectifs

Portable

Centralisé

Simple et intuitif

Accessible pour des néophytes

Page 8: LearnUp  !

8

LearnUp ! - Solutions techniques

Portabilité et centralisation : Application web

Technologie choisie : Framework Symfony2 en PHP5

Ergonomie et interactivité : Javascript / JQuery

Gestion de projet :– Tortoise SVN– Partage des documents via Google Docs

Page 9: LearnUp  !

9

LearnUp ! - Solutions techniques

Symfony2

Framework PHP5.3 français

Performant

Complet

Gère la sécurité, le débug, les requêtes, la session, le MVC…

Gestion de la base de données via l’ORM Doctrine

Permet un développement plus rapide………… une fois pris en main !

Exemple : Dailymotion est entièrement codé avec Symfony2

Page 10: LearnUp  !

LearnUp ! - Conception

10Elève

ou anonym

e

Faire des exercices

Enseignant

Gérer ses élèves

Gérer les exercices de français

Administrateur

Gérer les enseignants

Gérer les élèves

Page 11: LearnUp  !

11

• Conception de l’application par mécanismes de « Bundles »– Chaque Bundle correspond à une partie de l’application (user, langue, math…)– Chaque développeur à son propre bundle à développer : application modulaire

• Symfony permet un développement simplifié et rapide par son système de MVC imbriqués : conception guidée.

LearnUp ! - Conception

App

Bundle

Bundle

Module

Module

Contrôleurs

Vues

Modèles

Page 12: LearnUp  !

12

Bundles développés

HomeBundle• pages d’accueil et login

LabsBundle• pages de tests dédiées aux développeurs pre-production

LangueBundle• modules d’exercices de français

MathBundle• modules d’exercices de maths

StoreBundle• modules de stockages des entités de la base de données

UserBundle• gestion des utilisateurs et des résultats

LearnUp ! - Conception

Page 13: LearnUp  !

13

LearnUp ! - Répartitions des tâches

• Thibaut : – Générations et validations automatiques des exercices de mathématiques

• Apprendre et maitriser le JavaScript ainsi que la librairie JQuery

• Hajer :– Database, gestion des utilisateurs (administration) et des résultats

• Claire :– Database et développement de la partie «  Français »

• Création et validation des textes, questions et réponses.

• Aymeric :– Coordination, raccords, support et développement du squelette de

l’application.

Page 14: LearnUp  !

LearnUp ! - Base de données

14

Réponses

Catégorie de français

Exercice

Ensemble de

catégories

Catégorie de maths

Texte

Gestion des exercices

Page 15: LearnUp  !

15

LearnUp ! - Base de données

Résultats

Enseignant Elève

Texte Catégorie

Gestion des utilisateurs

Page 16: LearnUp  !

16

LearnUp ! - Base de données

ORM Doctrine– Object Relational Mapper– Couche d’abstraction objet entre l’application et la base de données– Requêtes SQL abolies– DQL : requêtes par entité

• EntityManager::getRepository(‘Member’)->where(‘ecole = ?’, ‘Université de Savoie’)

->findAll();

Pont avec Symfony– Système d’entités

Page 17: LearnUp  !

17

LearnUp ! - Module de langue

Fonctionnel

L’enseignant peut créer et partager des textes et les exercices associés.L’élève peut effectuer tous les exercices disponibles.

Technique

– Exercices enregistrés dans la base de données– CRUD en PHP– Validation en JQuery

Page 18: LearnUp  !

18

LearnUp ! - Module de mathématiques

Fonctionnel

Exercices regroupés par catégorie puis par niveau tels que :• Opérations simples (Additions, Multiplications…)• Ordres et intervalles• Méthodes de calculs

Technique

• Les exercices ont été factorisés en une seule librairie JS• Génération automatique en fonction du nom et du type d’exercice• Validation et correction automatique• Extensions possibles

Page 19: LearnUp  !

19

LearnUp !

Démonstration

Page 20: LearnUp  !

20

Etat final

– Application fonctionnelle– Testée par des tierces personnes– Déploiement spécifique prévu le 12 janvier 2012 à 13h30

Extensions possibles

– Base de données évolutive, prête pour l’ajout de nouveaux modules ou exercices– Fonctions de génération et de validation de la libraire JS génériques– Parseur de texte pour des exercices de français spécifiques– Modules autonomes

LearnUp ! - Etat final/ Extensions

Page 21: LearnUp  !

LearnUp ! - Chronologie

21

TD alloués (76h)72%

Heures supplé-

mentaires (30h)28%

Temps alloué

Mise en place des outils (3h)3%

Conception (15h)14%

Prise en main outils (8h)8%

Développement (60h)57%

Raccords (6h)6%

Réparations (8h)8%

Préparation soutenance (6h)6%

Répartition du temps de travail

Page 22: LearnUp  !

22

Deux challenges

• Ce que l’on devait apporter– une application fonctionnelle, simple et efficace pour des enfants et des enseignants

potentiellement néophytes.

• Ce que cela devait nous apporter– Adaptation, autonomie et travail de groupe– Compétences techniques sur les outils, standards et langages web– Confrontation à des problématiques de conception sur un projet conséquent

Bilans

• Les objectifs sont atteints par un livrable stable et correspondant aux besoins.

LearnUp ! - Bilans

Page 23: LearnUp  !

23

Projet complexe et intéressant

Travail en équipe efficace

Evolutions futures !

LearnUp ! - Conclusion

Page 24: LearnUp  !

24

LearnUp !

Aymeric Assier

Hajer Chrigui

Thibaut Krattinger

Claire Rollinger