SlideShare une entreprise Scribd logo
1  sur  36
Création et développement d’une application Java de
génération de contenu à partir de fichiers CSV sur une
            plateforme web d’e-coaching
                            eBusiness Information
                            Vanessa Pasquet
                            Mars – Août 2012
Projet de fin d’études   2




Projet de fin d’études
I.     Groupe Excilys
II.    eBusiness Information : produit Capico
III.   Enjeux du projet « Orthographe et
       Conjugaison »
IV.    Etapes de développement
V.     Déploiement et tests
VI.    Conclusion
I. Groupe Excilys   3




I.      Groupe Excilys
7    sociétés de services en informatique

 Technologies    Java/JEE

 Secteurs    d’activités:
     Santé, Banque, Sécurité, Fret, …
II. eBusiness Information, Capico   4




II.   eBusiness Information
 Conseil et développement
 Expertise Java/JEE
 Produit d’e-learning, e-coaching :
  CAPICO
II. eBusiness Information, Capico   5



II.      Capico
     Plateforme web d’ e-learning / e-coaching
     Apprentissage et suivi
     Mise en commun des connaissances
II. eBusiness Information, Capico   6



Elève et Coach
Mode élève :

    Consultation de cours
    Cours sonorisés
    Exercices QCM et questions à trous
    Travail à faire et évaluation
    Communication et commentaires

Mode coach:

    Edition de cours
    Sonorisation personnalisée
    Edition exercices QCM et questions à trous
    Classes : Travail à faire, évaluations et suivi des élèves
III. Enjeux du projet « Orthographe et
                         Conjugaison »                            7



III.   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
III. Enjeux du projet « Orthographe et
                         Conjugaison »                            8



Formats de l’archive Orthographe
 CSV   Comma-Separated Values
     Tabulaire
     Encodage UTF-8
     Orthographe.csv

pistache,picetache,pystache,pistacheux,pistache.mp3
piste,pystte,pisteux,pyste,piste.mp3
pistolet,pistaulet,pistoler,pystolet,pistolet.mp3


 Audio   format MP3
III. Enjeux du projet « Orthographe et
                          Conjugaison »                            9



Dimensionnement
 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
III. Enjeux du projet « Orthographe et
                          Conjugaison »                            10



Dé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
III. Enjeux du projet « Orthographe et
                         Conjugaison »                            11



Dé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
III. Enjeux du projet « Orthographe et
                       Conjugaison »                            12



Gestion de projet
 Equipe : 2 développeurs et 1 chef de projet
 Intégration dans projet global « Capico
  Condor »
IV. Etapes de développement   13



IV. Etapes de développement
A.   Environnement de développement

B.   Suivi de projet

C.   Gestionnaire de versions

D.   Choix technologiques

E.   « Orthographe »

F.   « Conjugaison »
IV. Etapes de développement
                                   A. Environnement              14



A.        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
IV. Etapes de développement
                             B. Suivi de projet            15




B. 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
IV. Etapes de développement
                              C. Gestionnaire de versions   16



C. Gestionnaire de versions
    Gestion de versions

        Git

        Branche principale « master » du projet Capico
         condor

        Branche dédiée « CSVConverterBeforeMerge »
IV. Etapes de développement
                               D. Choix technologiques       17



D. 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
IV. Etapes de développement
                              D. Choix technologiques       18



D. 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
IV. Etapes de développement
                               D. Choix technologiques       19



D. 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
IV. Etapes de développement
                                D. Choix technologiques       20



D. 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
IV. Etapes de développement
                           E. Orthographe                21



E. 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
IV. Etapes de développement
                            E. Orthographe                22



E. 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
IV. Etapes de développement
                            E. Orthographe                23



E. Orthographe
 Parsing   CSV


     Parsing linéaire

     Création des mots au fur et à mesure du parcours
      du fichier CSV

     Organisation selon la hiérarchie
IV. Etapes de développement
                                E. Orthographe                24



E. 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
IV. Etapes de développement
                                F. Conjugaison                25



F. 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
IV. Etapes de développement
                             F. Conjugaison                26



F.        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
V. Déploiement et tests   27



V. Déploiement et tests
 Processus   de livraison
V. Déploiement et tests   28



V. 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
V. Déploiement et tests   29



V. 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
V. Déploiement et tests   30



V. 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
V. Déploiement et tests   31



V. 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
V. Déploiement et tests   32



V. 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 CSV


Passage en Pré-production et Production
V. Déploiement et tests   33



V. Déploiement et tests
 Visuels
V. Déploiement et tests   34



V. Déploiement et tests
 Visuels
VI. Conclusion       35



VI. 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
Création et développement d’une application Java de
génération de contenu à partir de fichiers CSV sur une
            plateforme web d’e-coaching
                            eBusiness Information
                            Vanessa Pasquet
                            Mars – Août 2012

Contenu connexe

Tendances

Soutenance mémoire de fin d'études
Soutenance mémoire de fin d'étudesSoutenance mémoire de fin d'études
Soutenance mémoire de fin d'étudesFabrice HAUHOUOT
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz InesInes Ouaz
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'artInes Ouaz
 
Ma présentation PFE
Ma présentation PFEMa présentation PFE
Ma présentation PFELouati Aicha
 
Visual Studio 2012 pour Windows 8
Visual Studio 2012 pour Windows 8Visual Studio 2012 pour Windows 8
Visual Studio 2012 pour Windows 8Microsoft
 
Livret sujets pfe_2017_digital
Livret sujets pfe_2017_digital Livret sujets pfe_2017_digital
Livret sujets pfe_2017_digital . WATCOM
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapportInes Ouaz
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Chifco pfe-2018-catalogue
Chifco pfe-2018-catalogueChifco pfe-2018-catalogue
Chifco pfe-2018-catalogue. WATCOM
 
Solutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision QualiteSolutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision Qualitefrancois.le.droff
 
Catalogue PFE - Chifco 2019
Catalogue PFE - Chifco 2019Catalogue PFE - Chifco 2019
Catalogue PFE - Chifco 2019Chifco iot
 
Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Laurent Guérin
 
Andcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesAndcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesCERTyou Formation
 
CV Olivier Truong
CV Olivier TruongCV Olivier Truong
CV Olivier Truongoltruong
 

Tendances (20)

Esiea - 5A - Archi 1/3
Esiea - 5A - Archi 1/3Esiea - 5A - Archi 1/3
Esiea - 5A - Archi 1/3
 
Soutenance mémoire de fin d'études
Soutenance mémoire de fin d'étudesSoutenance mémoire de fin d'études
Soutenance mémoire de fin d'études
 
présentation PFE (2)
présentation PFE (2)présentation PFE (2)
présentation PFE (2)
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz Ines
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'art
 
Ma présentation PFE
Ma présentation PFEMa présentation PFE
Ma présentation PFE
 
Visual Studio 2012 pour Windows 8
Visual Studio 2012 pour Windows 8Visual Studio 2012 pour Windows 8
Visual Studio 2012 pour Windows 8
 
Introduction àJava
Introduction àJavaIntroduction àJava
Introduction àJava
 
J2 ee
J2 eeJ2 ee
J2 ee
 
Livret sujets pfe_2017_digital
Livret sujets pfe_2017_digital Livret sujets pfe_2017_digital
Livret sujets pfe_2017_digital
 
Prez PFE
Prez PFEPrez PFE
Prez PFE
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapport
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Chifco pfe-2018-catalogue
Chifco pfe-2018-catalogueChifco pfe-2018-catalogue
Chifco pfe-2018-catalogue
 
Solutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision QualiteSolutions Linux2008 Construire Sa Vision Qualite
Solutions Linux2008 Construire Sa Vision Qualite
 
Catalogue PFE - Chifco 2019
Catalogue PFE - Chifco 2019Catalogue PFE - Chifco 2019
Catalogue PFE - Chifco 2019
 
Présentation PFE: SmartAudit
Présentation PFE: SmartAuditPrésentation PFE: SmartAudit
Présentation PFE: SmartAudit
 
Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2
 
Andcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesAndcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexes
 
CV Olivier Truong
CV Olivier TruongCV Olivier Truong
CV Olivier Truong
 

En vedette

Projet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMProjet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMAbdelmonem NAAMANE
 
Projet fin d’étude
Projet fin d’étudeProjet fin d’étude
Projet fin d’étudeMarine9
 
20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache MavenArnaud Héritier
 
JCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueJCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueRossi Oddet
 
Bonnes pratiques des applications java prêtes pour la production
Bonnes pratiques des applications java prêtes pour la productionBonnes pratiques des applications java prêtes pour la production
Bonnes pratiques des applications java prêtes pour la productionCyrille Le Clerc
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiIssaoui Ilyes
 
Etude de cas label artisanat
Etude de cas label artisanatEtude de cas label artisanat
Etude de cas label artisanatHouria2
 
Presentation Spring, Spring MVC
Presentation Spring, Spring MVCPresentation Spring, Spring MVC
Presentation Spring, Spring MVCNathaniel Richand
 
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES Gypsy Ferrari
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebHarrathi Mohamed
 
Mémoire Professionnel - En quoi l’utilisation du marketing digital peut perm...
Mémoire Professionnel  - En quoi l’utilisation du marketing digital peut perm...Mémoire Professionnel  - En quoi l’utilisation du marketing digital peut perm...
Mémoire Professionnel - En quoi l’utilisation du marketing digital peut perm...Thibault PAILLIER
 
Supervision et analyse de script batch
Supervision et analyse de script batchSupervision et analyse de script batch
Supervision et analyse de script batchschomy
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEOussama Djerba
 
Secteur de Café au Maroc
Secteur de Café au MarocSecteur de Café au Maroc
Secteur de Café au MarocTarek Haress
 
Marketing - Etude de cas : NESPRESSO
Marketing - Etude de cas : NESPRESSOMarketing - Etude de cas : NESPRESSO
Marketing - Etude de cas : NESPRESSOElise Fauvel
 

En vedette (20)

Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
Exposé pfe
Exposé pfeExposé pfe
Exposé pfe
 
Projet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMMProjet fin annee 2011 master min ISAMM
Projet fin annee 2011 master min ISAMM
 
Projet fin d’étude
Projet fin d’étudeProjet fin d’étude
Projet fin d’étude
 
20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven20090615 - Ch'ti JUG - Apache Maven
20090615 - Ch'ti JUG - Apache Maven
 
JCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueJCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratique
 
Tp java ee.pptx
Tp java ee.pptxTp java ee.pptx
Tp java ee.pptx
 
Bonnes pratiques des applications java prêtes pour la production
Bonnes pratiques des applications java prêtes pour la productionBonnes pratiques des applications java prêtes pour la production
Bonnes pratiques des applications java prêtes pour la production
 
Présentation pfe
Présentation pfePrésentation pfe
Présentation pfe
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaoui
 
Etude de cas label artisanat
Etude de cas label artisanatEtude de cas label artisanat
Etude de cas label artisanat
 
Presentation Spring, Spring MVC
Presentation Spring, Spring MVCPresentation Spring, Spring MVC
Presentation Spring, Spring MVC
 
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES
MÉMOIRE DE FIN D'ÉTUDE - LA COMMUNICATION DES CONCEPT-STORES
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Mémoire Professionnel - En quoi l’utilisation du marketing digital peut perm...
Mémoire Professionnel  - En quoi l’utilisation du marketing digital peut perm...Mémoire Professionnel  - En quoi l’utilisation du marketing digital peut perm...
Mémoire Professionnel - En quoi l’utilisation du marketing digital peut perm...
 
Supervision et analyse de script batch
Supervision et analyse de script batchSupervision et analyse de script batch
Supervision et analyse de script batch
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEE
 
Secteur de Café au Maroc
Secteur de Café au MarocSecteur de Café au Maroc
Secteur de Café au Maroc
 
Présentation Projet de fin d'études
Présentation Projet de fin d'étudesPrésentation Projet de fin d'études
Présentation Projet de fin d'études
 
Marketing - Etude de cas : NESPRESSO
Marketing - Etude de cas : NESPRESSOMarketing - Etude de cas : NESPRESSO
Marketing - Etude de cas : NESPRESSO
 

Similaire à Soutenance PFE 2012

Concevoir une preuve de concept web sémantique
Concevoir une preuve de concept web sémantiqueConcevoir une preuve de concept web sémantique
Concevoir une preuve de concept web sémantiqueMichel Héon PhD
 
Py osv newsletter-032018
Py osv newsletter-032018Py osv newsletter-032018
Py osv newsletter-032018FabMob
 
Py osv newsletter-032018
Py osv newsletter-032018Py osv newsletter-032018
Py osv newsletter-032018FabMob
 
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)Equipex Biblissima
 
Symphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureSymphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureMarc Nazarian
 
Symphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureSymphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureJonathan Bonzy
 
Programme 2017 2018
Programme 2017 2018Programme 2017 2018
Programme 2017 2018Bost Vincent
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPjulien pauli
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
Détecter et nettoyer le contenu générique
Détecter et nettoyer le contenu génériqueDétecter et nettoyer le contenu générique
Détecter et nettoyer le contenu génériquebenoit chevillot
 
Webinar offre entreprise
Webinar offre entrepriseWebinar offre entreprise
Webinar offre entrepriseMichael Harlaut
 
Rendre son CMS conforme au SGQRI 008 en 20 étapes
Rendre son CMS conforme au SGQRI 008 en 20 étapesRendre son CMS conforme au SGQRI 008 en 20 étapes
Rendre son CMS conforme au SGQRI 008 en 20 étapesConFoo
 
L'accessibilité en 20 étapes pour TYPO3 et Wordpress
L'accessibilité en 20 étapes pour TYPO3 et WordpressL'accessibilité en 20 étapes pour TYPO3 et Wordpress
L'accessibilité en 20 étapes pour TYPO3 et WordpressYannick Pavard
 
Briquedocumentaire nov 2011
Briquedocumentaire nov 2011Briquedocumentaire nov 2011
Briquedocumentaire nov 2011cdilakanal
 
Briquedocumentaire nov 2011
Briquedocumentaire nov 2011Briquedocumentaire nov 2011
Briquedocumentaire nov 2011cdilakanal
 
Gestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De RefworksGestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De RefworksAlain Marois
 
Alphorm.com Formation Python pour les pentesteurs 2/2
Alphorm.com Formation Python pour les pentesteurs 2/2Alphorm.com Formation Python pour les pentesteurs 2/2
Alphorm.com Formation Python pour les pentesteurs 2/2Alphorm
 
xAPIi, le standard de l'après-SCORM - 13R
xAPIi, le standard de l'après-SCORM - 13RxAPIi, le standard de l'après-SCORM - 13R
xAPIi, le standard de l'après-SCORM - 13RFFFOD
 
Internship at IRCAD, Finale Report Presentation
Internship at IRCAD, Finale Report PresentationInternship at IRCAD, Finale Report Presentation
Internship at IRCAD, Finale Report PresentationRaphaël Bils
 

Similaire à Soutenance PFE 2012 (20)

Concevoir une preuve de concept web sémantique
Concevoir une preuve de concept web sémantiqueConcevoir une preuve de concept web sémantique
Concevoir une preuve de concept web sémantique
 
Py osv newsletter-032018
Py osv newsletter-032018Py osv newsletter-032018
Py osv newsletter-032018
 
Py osv newsletter-032018
Py osv newsletter-032018Py osv newsletter-032018
Py osv newsletter-032018
 
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)
Introduction aux protocoles IIIF. Formation Enssib 23.01.2019 (Régis Robineau)
 
Symphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureSymphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeure
 
Symphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeureSymphonie pour PHP industrialisé en agilité majeure
Symphonie pour PHP industrialisé en agilité majeure
 
Programme 2017 2018
Programme 2017 2018Programme 2017 2018
Programme 2017 2018
 
AlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHPAlterWay SolutionsLinux Outils Industrialisation PHP
AlterWay SolutionsLinux Outils Industrialisation PHP
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Détecter et nettoyer le contenu générique
Détecter et nettoyer le contenu génériqueDétecter et nettoyer le contenu générique
Détecter et nettoyer le contenu générique
 
Webinar offre entreprise
Webinar offre entrepriseWebinar offre entreprise
Webinar offre entreprise
 
Rendre son CMS conforme au SGQRI 008 en 20 étapes
Rendre son CMS conforme au SGQRI 008 en 20 étapesRendre son CMS conforme au SGQRI 008 en 20 étapes
Rendre son CMS conforme au SGQRI 008 en 20 étapes
 
L'accessibilité en 20 étapes pour TYPO3 et Wordpress
L'accessibilité en 20 étapes pour TYPO3 et WordpressL'accessibilité en 20 étapes pour TYPO3 et Wordpress
L'accessibilité en 20 étapes pour TYPO3 et Wordpress
 
Briquedocumentaire nov 2011
Briquedocumentaire nov 2011Briquedocumentaire nov 2011
Briquedocumentaire nov 2011
 
Briquedocumentaire nov 2011
Briquedocumentaire nov 2011Briquedocumentaire nov 2011
Briquedocumentaire nov 2011
 
Gestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De RefworksGestion de références bibliographiques : Sortir De Refworks
Gestion de références bibliographiques : Sortir De Refworks
 
Introduction à la fouille de textes et positionnement de l'offre logicielle
Introduction à la fouille de textes et positionnement de l'offre logicielleIntroduction à la fouille de textes et positionnement de l'offre logicielle
Introduction à la fouille de textes et positionnement de l'offre logicielle
 
Alphorm.com Formation Python pour les pentesteurs 2/2
Alphorm.com Formation Python pour les pentesteurs 2/2Alphorm.com Formation Python pour les pentesteurs 2/2
Alphorm.com Formation Python pour les pentesteurs 2/2
 
xAPIi, le standard de l'après-SCORM - 13R
xAPIi, le standard de l'après-SCORM - 13RxAPIi, le standard de l'après-SCORM - 13R
xAPIi, le standard de l'après-SCORM - 13R
 
Internship at IRCAD, Finale Report Presentation
Internship at IRCAD, Finale Report PresentationInternship at IRCAD, Finale Report Presentation
Internship at IRCAD, Finale Report Presentation
 

Soutenance PFE 2012

  • 1. Création et développement d’une application Java de génération de contenu à partir de fichiers CSV sur une plateforme web d’e-coaching eBusiness Information Vanessa Pasquet Mars – Août 2012
  • 2. Projet de fin d’études 2 Projet de fin d’études I. Groupe Excilys II. eBusiness Information : produit Capico III. Enjeux du projet « Orthographe et Conjugaison » IV. Etapes de développement V. Déploiement et tests VI. Conclusion
  • 3. I. Groupe Excilys 3 I. Groupe Excilys 7 sociétés de services en informatique  Technologies Java/JEE  Secteurs d’activités: Santé, Banque, Sécurité, Fret, …
  • 4. II. eBusiness Information, Capico 4 II. eBusiness Information  Conseil et développement  Expertise Java/JEE  Produit d’e-learning, e-coaching : CAPICO
  • 5. II. eBusiness Information, Capico 5 II. Capico  Plateforme web d’ e-learning / e-coaching  Apprentissage et suivi  Mise en commun des connaissances
  • 6. II. eBusiness Information, Capico 6 Elève et Coach Mode élève :  Consultation de cours  Cours sonorisés  Exercices QCM et questions à trous  Travail à faire et évaluation  Communication et commentaires Mode coach:  Edition de cours  Sonorisation personnalisée  Edition exercices QCM et questions à trous  Classes : Travail à faire, évaluations et suivi des élèves
  • 7. III. Enjeux du projet « Orthographe et Conjugaison » 7 III. 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. III. Enjeux du projet « Orthographe et Conjugaison » 8 Formats de l’archive Orthographe  CSV Comma-Separated Values  Tabulaire  Encodage UTF-8  Orthographe.csv pistache,picetache,pystache,pistacheux,pistache.mp3 piste,pystte,pisteux,pyste,piste.mp3 pistolet,pistaulet,pistoler,pystolet,pistolet.mp3  Audio format MP3
  • 9. III. Enjeux du projet « Orthographe et Conjugaison » 9 Dimensionnement 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. III. Enjeux du projet « Orthographe et Conjugaison » 10 Dé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. III. Enjeux du projet « Orthographe et Conjugaison » 11 Dé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. III. Enjeux du projet « Orthographe et Conjugaison » 12 Gestion de projet  Equipe : 2 développeurs et 1 chef de projet  Intégration dans projet global « Capico Condor »
  • 13. IV. Etapes de développement 13 IV. Etapes de développement A. Environnement de développement B. Suivi de projet C. Gestionnaire de versions D. Choix technologiques E. « Orthographe » F. « Conjugaison »
  • 14. IV. Etapes de développement A. Environnement 14 A. 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. IV. Etapes de développement B. Suivi de projet 15 B. 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. IV. Etapes de développement C. Gestionnaire de versions 16 C. Gestionnaire de versions  Gestion de versions  Git  Branche principale « master » du projet Capico condor  Branche dédiée « CSVConverterBeforeMerge »
  • 17. IV. Etapes de développement D. Choix technologiques 17 D. 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. IV. Etapes de développement D. Choix technologiques 18 D. 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. IV. Etapes de développement D. Choix technologiques 19 D. 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. IV. Etapes de développement D. Choix technologiques 20 D. 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. IV. Etapes de développement E. Orthographe 21 E. 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. IV. Etapes de développement E. Orthographe 22 E. 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. IV. Etapes de développement E. Orthographe 23 E. 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. IV. Etapes de développement E. Orthographe 24 E. 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. IV. Etapes de développement F. Conjugaison 25 F. 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. IV. Etapes de développement F. Conjugaison 26 F. 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. V. Déploiement et tests 27 V. Déploiement et tests  Processus de livraison
  • 28. V. Déploiement et tests 28 V. 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. V. Déploiement et tests 29 V. 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. V. Déploiement et tests 30 V. 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. V. Déploiement et tests 31 V. 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. V. Déploiement et tests 32 V. 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 CSV Passage en Pré-production et Production
  • 33. V. Déploiement et tests 33 V. Déploiement et tests  Visuels
  • 34. V. Déploiement et tests 34 V. Déploiement et tests  Visuels
  • 35. VI. Conclusion 35 VI. 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. Création et développement d’une application Java de génération de contenu à partir de fichiers CSV sur une plateforme web d’e-coaching eBusiness Information Vanessa Pasquet Mars – Août 2012