Création et développement d’une application Java degénération de contenu à partir de fichiers CSV sur une            plate...
Projet de fin d’études   2Projet de fin d’étudesI.     Groupe ExcilysII.    eBusiness Information : produit CapicoIII.   E...
I. Groupe Excilys   3I.      Groupe Excilys7    sociétés de services en informatique Technologies    Java/JEE Secteurs ...
II. eBusiness Information, Capico   4II.   eBusiness Information Conseil et développement Expertise Java/JEE Produit d’...
II. eBusiness Information, Capico   5II.      Capico     Plateforme web d’ e-learning / e-coaching     Apprentissage et ...
II. eBusiness Information, Capico   6Elève et CoachMode élève :    Consultation de cours    Cours sonorisés    Exercice...
III. Enjeux du projet « Orthographe et                         Conjugaison »                            7III.   Enjeux du ...
III. Enjeux du projet « Orthographe et                         Conjugaison »                            8Formats de l’arch...
III. Enjeux du projet « Orthographe et                          Conjugaison »                            9Dimensionnement ...
III. Enjeux du projet « Orthographe et                          Conjugaison »                            10Développement ...
III. Enjeux du projet « Orthographe et                         Conjugaison »                            11Déploiement Cyc...
III. Enjeux du projet « Orthographe et                       Conjugaison »                            12Gestion de projet...
IV. Etapes de développement   13IV. Etapes de développementA.   Environnement de développementB.   Suivi de projetC.   Ges...
IV. Etapes de développement                                   A. Environnement              14A.        Environnement de d...
IV. Etapes de développement                             B. Suivi de projet            15B. Suivi de projet   2 étapes : «...
IV. Etapes de développement                              C. Gestionnaire de versions   16C. Gestionnaire de versions    G...
IV. Etapes de développement                               D. Choix technologiques       17D. Choix technologiques    Fram...
IV. Etapes de développement                              D. Choix technologiques       18D. Choix technologiques    Hiber...
IV. Etapes de développement                               D. Choix technologiques       19D. Choix technologiques    Outi...
IV. Etapes de développement                                D. Choix technologiques       20D. Choix technologiques    Log...
IV. Etapes de développement                           E. Orthographe                21E. Orthographe Hiérarchie   dossier...
IV. Etapes de développement                            E. Orthographe                22E. Orthographe Gestion   de ressou...
IV. Etapes de développement                            E. Orthographe                23E. Orthographe Parsing   CSV     ...
IV. Etapes de développement                                E. Orthographe                24E. Orthographe Transactions   ...
IV. Etapes de développement                                F. Conjugaison                25F. Conjugaison Parsing        ...
IV. Etapes de développement                             F. Conjugaison                26F.        Conjugaison/Orthographe...
V. Déploiement et tests   27V. Déploiement et tests Processus   de livraison
V. Déploiement et tests   28V. Déploiement et tests Tests   et Résultats « Orthographe » Local   :     VM Ubuntu, Virtu...
V. Déploiement et tests   29V. Déploiement et tests Tests   et Résultats « Orthographe » Recette:     Moins de mots   ...
V. Déploiement et tests   30V. Déploiement et tests Tests   et Résultats « Orthographe » Pré-production:     1000 mots ...
V. Déploiement et tests   31V. Déploiement et tests Tests   et Résultats « Conjugaison » Local:     Temps de création d...
V. Déploiement et tests   32V. Déploiement et tests Tests   et Résultats « Conjugaison » Recette:     Pas de conflits n...
V. Déploiement et tests   33V. Déploiement et tests Visuels
V. Déploiement et tests   34V. Déploiement et tests Visuels
VI. Conclusion       35VI. Conclusion Réponse au besoin pour rentrée 2012 Déploiements réussis Contenus répertoriés pou...
Création et développement d’une application Java degénération de contenu à partir de fichiers CSV sur une            plate...
Upcoming SlideShare
Loading in...5
×

Soutenance PFE 2012

4,620

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,620
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
118
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Soutenance PFE 2012

  1. 1. Création et développement d’une application Java degénération de contenu à partir de fichiers CSV sur une plateforme web d’e-coaching eBusiness Information Vanessa Pasquet Mars – Août 2012
  2. 2. Projet de fin d’études 2Projet de fin d’étudesI. Groupe ExcilysII. eBusiness Information : produit CapicoIII. Enjeux du projet « Orthographe et Conjugaison »IV. Etapes de développementV. Déploiement et testsVI. Conclusion
  3. 3. I. Groupe Excilys 3I. Groupe Excilys7 sociétés de services en informatique Technologies Java/JEE Secteurs d’activités: Santé, Banque, Sécurité, Fret, …
  4. 4. II. eBusiness Information, Capico 4II. eBusiness Information Conseil et développement Expertise Java/JEE Produit d’e-learning, e-coaching : CAPICO
  5. 5. II. eBusiness Information, Capico 5II. Capico Plateforme web d’ e-learning / e-coaching Apprentissage et suivi Mise en commun des connaissances
  6. 6. II. eBusiness Information, Capico 6Elève et CoachMode élève :  Consultation de cours  Cours sonorisés  Exercices QCM et questions à trous  Travail à faire et évaluation  Communication et commentairesMode coach:  Edition de cours  Sonorisation personnalisée  Edition exercices QCM et questions à trous  Classes : Travail à faire, évaluations et suivi des élèves
  7. 7. III. Enjeux du projet « Orthographe et Conjugaison » 7III. Enjeux du projet « Orthographe et Conjugaison » Académie de Créteil Classes « pilotes » de primaire (CP au CM2) Thèmes pédagogiques et programmes scolaires Rentrée Septembre 2012
  8. 8. III. Enjeux du projet « Orthographe et Conjugaison » 8Formats de l’archive Orthographe CSV Comma-Separated Values  Tabulaire  Encodage UTF-8  Orthographe.csvpistache,picetache,pystache,pistacheux,pistache.mp3piste,pystte,pisteux,pyste,piste.mp3pistolet,pistaulet,pistoler,pystolet,pistolet.mp3 Audio format MP3
  9. 9. III. Enjeux du projet « Orthographe et Conjugaison » 9Dimensionnement Orthographe • QCM & question à trous • CSV : 20 000 lignes/mots • 40 000 questions • Sonorisation • Rapport d’état de sonorisation Conjugaison • Questions à trous • 468 CSV : Lettre/Mode/Temps • 80 000 questions
  10. 10. III. Enjeux du projet « Orthographe et Conjugaison » 10Développement Méthodes de création de cours Capico communes Hiérarchies de dossiers Méthodes de « Parsing » adaptées Sonorisation et gestion de contenu
  11. 11. III. Enjeux du projet « Orthographe et Conjugaison » 11Déploiement Cycle de déploiement Gestion de contenu Flot d’exécution Temps d’exécution Rapports d’erreurs Rapports d’état du gestionnaire de contenu
  12. 12. III. Enjeux du projet « Orthographe et Conjugaison » 12Gestion de projet Equipe : 2 développeurs et 1 chef de projet Intégration dans projet global « Capico Condor »
  13. 13. IV. Etapes de développement 13IV. Etapes de développementA. Environnement de développementB. Suivi de projetC. Gestionnaire de versionsD. Choix technologiquesE. « Orthographe »F. « Conjugaison »
  14. 14. IV. Etapes de développement A. Environnement 14A. Environnement de développement Langage Java, version Java 6  Compatibilité avec projet « Capico Condor »  eBusiness Information : Java/JEE  Eclipse, version Indigo  Développement sous Windows 7  Machine virtuelle de tests Capico : Ubuntu
  15. 15. IV. Etapes de développement B. Suivi de projet 15B. Suivi de projet 2 étapes : « Orthographe » puis « Conjugaison »  Dimension du traitement des fichiers CSV Scrum  Sprints  Scrum Master  Planification  Daily Scrum AgileFant  Outil Open-Source  Gestion et visualisation des Sprints : burndown
  16. 16. IV. Etapes de développement C. Gestionnaire de versions 16C. Gestionnaire de versions  Gestion de versions  Git  Branche principale « master » du projet Capico condor  Branche dédiée « CSVConverterBeforeMerge »
  17. 17. IV. Etapes de développement D. Choix technologiques 17D. Choix technologiques  Framework Spring  Java/JEE  Alternative aux EJB  Gestion des transactions  Intégration « Capico Condor »  Injection de dépendances  Accès aux données via JDBC  Pattern MVC
  18. 18. IV. Etapes de développement D. Choix technologiques 18D. Choix technologiques  Hibernate  Librairie Java  ORM : Mapping Relationnel d’Objets  Liaison Objets Java et Objets persistés en base de données  Méthodes d’accès aux données, s’affranchir de requêtes SQL  Etats des objets, gestion des écritures en base de données
  19. 19. IV. Etapes de développement D. Choix technologiques 19D. Choix technologiques  Outil Maven  Version Maven2  Intégration plugin Eclipse  Gestion et génération de projets Java/JEE  Génération de module jar  Utilisable au déploiement  Intégration « Capico Condor »  Structure en POM, gestion de dépendances
  20. 20. IV. Etapes de développement D. Choix technologiques 20D. Choix technologiques  Log4J  API Java  Intégration à l’outil Maven  Logging  Rapport d’erreurs  Temps d’exécution  Rapport d’état des objets persistés
  21. 21. IV. Etapes de développement E. Orthographe 21E. Orthographe Hiérarchie dossiers pour 20 000 mots  Contrainte: 50 éléments par dossier  Orthographe  20 dossiers  20 sous-dossiers  10 cours  10 questions = 10 mots
  22. 22. IV. Etapes de développement E. Orthographe 22E. Orthographe Gestion de ressources  Alfresco  Contenu Audio  Attachement à objets en base de données par connexions Alfresco  Chargement des fichiers MP3 de l’archive  Temps d’exécution
  23. 23. IV. Etapes de développement E. Orthographe 23E. Orthographe Parsing CSV  Parsing linéaire  Création des mots au fur et à mesure du parcours du fichier CSV  Organisation selon la hiérarchie
  24. 24. IV. Etapes de développement E. Orthographe 24E. Orthographe Transactions avec Spring  Création de la hiérarchie de dossier  Création d’élément (cours/exercice)  Sonorisation  Chargement de fichier  Annotations  @Transactional en tête de méthode  Roll-back en cas d’erreur  Limiter impact du code sur reste de l’application
  25. 25. IV. Etapes de développement F. Conjugaison 25F. Conjugaison Parsing CSV Opencsv, librairie Java, Sourceforge  Réécriture de fichiers CSV  Parcours de l’arborescence initiale  Conjugaison >> Lettre >> Mode >> fichier CSV avec verbes et différents temps et différents groupes  Conjugaison >> Lettre >> Groupe >> Mode >> Temps >> verbe  Séparateur « , » ou « ; » uniformisé à « ; »  Encodage UTF-8  CSVReader : lecteur d’objet File  InputStreamReader : Wrapper pour l’encodage
  26. 26. IV. Etapes de développement F. Conjugaison 26F. Conjugaison/Orthographe Paramètres de lignes de commande  --archivePath  --targetFolder  --questionType (Orthographe)  --begin (Conjugaison)  --end (Conjugaison  --number (Orthographe) Scripts lancés au déploiement sur serveur
  27. 27. V. Déploiement et tests 27V. Déploiement et tests Processus de livraison
  28. 28. V. Déploiement et tests 28V. Déploiement et tests Tests et Résultats « Orthographe » Local :  VM Ubuntu, Virtual Box avec configuration d’intégration « Capico Condor »  15 heures d’exécution  1 à 2 secondes par question  Contenu présent sur serveur local Alfresco  Diagnostic : Problème de performances
  29. 29. V. Déploiement et tests 29V. Déploiement et tests Tests et Résultats « Orthographe » Recette:  Moins de mots  Confirmer diagnostic de performance  Erreur timeout Alfresco  Segmentation en paquets de 1000 mots à chaque script  Création manuelle du dossier parent Orthographe  Récupération de l’id pour création de la hiérarchie
  30. 30. V. Déploiement et tests 30V. Déploiement et tests Tests et Résultats « Orthographe » Pré-production:  1000 mots en 80 minutes  Déploiement par paquets de 1000 mots  Maximum de 3 paquets lancés simultanément pour garder visibilité sur l’exécution et la connexion Alfresco Passage en Production
  31. 31. V. Déploiement et tests 31V. Déploiement et tests Tests et Résultats « Conjugaison » Local:  Temps de création de question croissant  10ms à 3 secondes après 30 minutes  Persistance de plus en plus d’objets  Cascade d’exécution  Clear() session Hibernate dans méthode de création d’un DAO  Back-end de Capico embarqué dans jar généré par Maven
  32. 32. V. Déploiement et tests 32V. Déploiement et tests Tests et Résultats « Conjugaison » Recette:  Pas de conflits ni de problèmes de performances diagnostiqués et réglés en local  Pas de sonorisation prévue  45 minutes ensemble des fichiers 468 CSVPassage en Pré-production et Production
  33. 33. V. Déploiement et tests 33V. Déploiement et tests Visuels
  34. 34. V. Déploiement et tests 34V. Déploiement et tests Visuels
  35. 35. VI. Conclusion 35VI. Conclusion Réponse au besoin pour rentrée 2012 Déploiements réussis Contenus répertoriés pour sonorisation future Formation en début de stage Projet pratique Projet en situation Gestion de projet Technologies Java/JEE
  36. 36. Création et développement d’une application Java degénération de contenu à partir de fichiers CSV sur une plateforme web d’e-coaching eBusiness Information Vanessa Pasquet Mars – Août 2012
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×