Télécharger la présentation
Publié parCatherine Dupont Modifié depuis plus de 11 années
1
Projet GenDiapo Alexandre FLAMENT Christophe QUAY-THEVENON
Responsable : Jean-Pierre DAVID - CLIPS / Synergie 3R Consultant : Pierre-Yves MONNET - Cap Gemini
2
Développer un prototype de générateur de documents multimédias
Projet GenDiapo Documents Étudiants DEUG Enseignant Course of object language Licence DESS Édition Publication Développer un prototype de générateur de documents multimédias
3
Sommaire Projet Solution Assurance Qualité Gestion de Projet
Christophe Alexandre Christophe Solution Assurance Qualité Christophe Gestion de Projet Alexandre Conclusion Alexandre
4
PROJET
5
Acteurs SYNERGIE 3R CLIPS Start up spécialisée Laboratoire
Projet Acteurs SYNERGIE 3R CLIPS Laboratoire Start up spécialisée dans le e-learning
6
+ + + Contexte Enseignement actuel Deux types d’étudiants
Projet Contexte Enseignement actuel Je vais vous expliquer le langage objet + + Ceci est un exemple d’un support écrit pour le langage objet Évolutivité Sous point Point 2 Sous Point Modularité Module Flexibilité Évolution Support Écrit Diapositives Explications Orales + Deux types d’étudiants Développement de l’enseignement interactif
7
Problèmes Nombreux Documents Nombreux Outils Problème de Cohérence
Projet Problèmes SLIDES WRITTEN SUPPORT SUPPORT ECRIT A SUPPORT ECRIT B DIAPOSITIVES A DIAPOSITIVES B Étudiants DEUG Outil Bureautique Enseignant Étudiants DESS Nombreux Documents Nombreux Outils Problème de Cohérence
8
Solutions Un document pour toutes les informations
Projet Solutions Un document pour toutes les informations Type Catégorie Un outil pour tous les traitements Édition Publication Portabilité du système Édition Publication Interoperabilité Format Logiciel
9
SOLUTION Les besoins détailé nous établis une solution en accord avec le clips. Synergie 3R suivant le projet
10
Système GenDiapo GenDiapo Solution Enseignant Outil Auteur Outil
SUPPORT ECRIT A Étudiants DEUG DIAPOSITIVES A Outil Auteur COURS Outil Publication GenDiapo SUPPORT ECRIT B Étudiants DESS With actual software, teacher need To Maintain different version of very closed document between categories Maintain Slides and Written Support, despite the fact that slide can be produce from written support The Goal of GenDiapo is to centralise all course into one for teacher, that’s mean : Course corresponds to the document need by teacher : it stores written support and slide in the same document and it store course for different category of student in one document The goal behind this is to avoid redundant information Constraint : Use standard format So the usual MS Office document and tools is replace here by : New document type : course And Two software : Author tool Publishing tool So let’s see the course in more details DIAPOSITIVES B
11
Tâches Principal but Nous Solution Enseignant Outil Auteur Outil
SUPPORT ECRIT A Étudiants DEUG DIAPOSITIVES A Nous Outil Auteur COURS Outil Publication SUPPORT ECRIT B Étudiants DESS With actual software, teacher need To Maintain different version of very closed document between categories Maintain Slides and Written Support, despite the fact that slide can be produce from written support The Goal of GenDiapo is to centralise all course into one for teacher, that’s mean : Course corresponds to the document need by teacher : it stores written support and slide in the same document and it store course for different category of student in one document The goal behind this is to avoid redundant information Constraint : Use standard format So the usual MS Office document and tools is replace here by : New document type : course And Two software : Author tool Publishing tool So let’s see the course in more details DIAPOSITIVES B Principal but
12
Tâches Faisabilité Nous Équipe GenEval Équipe Outil de Publication
Solution Tâches Enseignant SUPPORT ECRIT A Nous Équipe GenEval Étudiants DEUG DIAPOSITIVES A Outil Auteur COURS Outil Publication SUPPORT ECRIT B Étudiants DESS With actual software, teacher need To Maintain different version of very closed document between categories Maintain Slides and Written Support, despite the fact that slide can be produce from written support The Goal of GenDiapo is to centralise all course into one for teacher, that’s mean : Course corresponds to the document need by teacher : it stores written support and slide in the same document and it store course for different category of student in one document The goal behind this is to avoid redundant information Constraint : Use standard format So the usual MS Office document and tools is replace here by : New document type : course And Two software : Author tool Publishing tool So let’s see the course in more details Faisabilité DIAPOSITIVES B Équipe GenEval Outil de Publication similaire
13
Cours Solution Enseignant Outil Auteur Outil Publication DEUG DESS
SUPPORT ECRIT A DEUG DIAPOSITIVES A Outil Auteur COURS Outil Publication SUPPORT ECRIT B DESS With actual software, teacher need To Maintain different version of very closed document between categories Maintain Slides and Written Support, despite the fact that slide can be produce from written support The Goal of GenDiapo is to centralise all course into one for teacher, that’s mean : Course corresponds to the document need by teacher : it stores written support and slide in the same document and it store course for different category of student in one document The goal behind this is to avoid redundant information Constraint : Use standard format So the usual MS Office document and tools is replace here by : New document type : course And Two software : Author tool Publishing tool So let’s see the course in more details DIAPOSITIVES B
14
Toutes les Informations
Solution Cours COURS Toutes les Informations Structure Section Section … Atom Aucune Plusieurs Categories Paragraph Image Code Atom are paragraph, images, code (citation et surtout list passé a la trape ici) Another thing to deal with, is categories : Here, the teacher indicates for each atom, has which it addresses, I mean to which category, so each atom in section could be mark with one or more categories. To be modular, all categories are define by teacher. There is no predefine choice. The last thing to take in account, is to maintain slide and written support in the same course. In fact, element get
15
Toutes les Informations
Solution Cours COURS Toutes les Informations Structure Section Section Section … … Aucune Plusieurs Categories Atom Paragraph Atom are paragraph, images, code (citation et surtout list passé a la trape ici) Another thing to deal with, is categories : Here, the teacher indicates for each atom, has which it addresses, I mean to which category, so each atom in section could be mark with one or more categories. To be modular, all categories are define by teacher. There is no predefine choice. The last thing to take in account, is to maintain slide and written support in the same course. In fact, element get Diapositive Support Écrit Image Code
16
Outil Auteur Édition de cours Création de cours
Solution Outil Auteur Édition de cours Création de cours Enseignant Indépendant de la plate-forme Indépendant de la Présentation Outil Auteur COURS Indépendant de l’index, du glossaire et de la table des matières This is the author tool. So it’s main goal is to create a course with a graphical interface. One constrain was the author tool should be independent of platform. As the structure let’s guess it, the course is independent of presentation. Teacher is also discharge of maintaining index, glossary, TOC. All this information call be calculated after. In fact, when the teacher has finish his course, he will invoke the publishing tool to make document for the student. Conclusion : So, we have seen : how was a course how to create it So let’s go back the global system. Lancement de l’Outil de Publication
17
HyperDiaporama Hyper Diaporama Solution Enseignant Outil Auteur Outil
SUPPORT ECRIT A DEUG DIAPOSITIVES A Outil Auteur COURS Outil Publication SUPPORT ECRIT B The goal is to make all this document for student. We call them HyperDiaporama DESS DIAPOSITIVES B
18
Adaptation au niveau de l’étudiant
Solution HyperDiaporama Adaptation au niveau de l’étudiant Aucune ou plusieurs catégories Hyper Diaporama WRITTEN SUPPORT A DEUG Présentation homogène DIAPOSITIVES A Type Diapositive Support Écrit Outil Publication Version Papier Web As we seen, they correspond to one or more categories. To help student, the presentation should be homogenous. There is different type of HyperDiaporama : Slide : like this one Written Support : like documents that we can download from the “placcard” of UFRIMA This one aspect of HyperDiaporama, the second aspect is versions : It can on paper (slide or written support) Or in web (slide or written support) We call the first one, printable version, the second one web versions….. Now, the content : It can be access sequentially but, although throw index glossary and table of content To make idea more clear, let’s see the result that be produce from the course example that was shown. WRITTEN SUPPORT B DESS Accès à l’information DIAPOSITIVES B Index Glossaire Table des matières
19
Outil Publication Hyper Diaporama Solution Outil Publication DEUG DESS
SUPPORT ECRIT A DEUG DIAPOSITIVES A COURS Outil Publication SUPPORT ECRIT B It take a course, and with parameter it will make one this HyperDiaporama. DESS DIAPOSITIVES B
20
HyperDiaporama depuis Cours
Solution Outil Publication HyperDiaporama depuis Cours Paramètres Catégorie Type Version Langue Fichier de Sortie COURS Outil Publication HYPER DIAPORAMA Publishing course : Transformation into HyperDiaporama Parameters are selection of style selection of categorie Selection type (slide or written support) Selection version (web or paper) The most important part of the publishing tool is information division : All information are store in course without notion of page, since it can be a page of a web browser, or a page of paper (A4 for example) So, a little bit like TeX for people who know; the publishing tool should cut all information to make different page. Of course the break should make nicely, especially for slide. And as for author tool, publishing tool should be platform independent. So we seen box in general scheme. I’m going to show you which technologies do we use. Indépendant de la plate-forme
21
Exemple de Cours Solution Abstract = ‘’ Outil Auteur au format XML ’’
titleCours ‘’ Le Projet GenDiapo ’’ COURS Section (Title = ‘’ Système GenDiapo ’’ ) Paragraph (Category = ‘’ Maîtrise, DESS’’) Abstract = ‘’ Outil Auteur au format XML ’’ Development = ‘’ GenDiapo est un outil auteur standard permettant l’édition de documents au format XML par l’intermédiaire d’une interface graphique ‘’ Paragraph (Category = ‘’ DESS ’’) Abstract = ‘’ Outil de Publication au format PDF et HTML ’’ Development = ‘’ GenDiapo propose également un outil de publication permettant la transformation du document XML en un document PDF ou HTML avec les informations choisies par l’utilisateur ’’ Blabla centrage de l’information (section, 2 para) 1er para : in every version slide version/written support 2nd para : only for deug Conclusion : So we have seen in detail how course are organise. Ours goal we also to make a environment to create this document easily
22
Exemple de Résultats Type Web Type Papier DESS Tous Solution
Here, there is the two version of result : Web and Paper For web, the table of content is visible on left. For paper we don’t see it, but it’s at the beginning Notice that the web version includes all categories The paper version includes only deug categories … So as this two HyperDiaporama are produce by the publishing tool DESS Tous
23
Technologies X X X X XML DTD XSL Moteur XSL Java HTML/PDF Solution
Outil Auteur COURS Outil Publication HYPER DIAPORAMA XML X X X X DTD XSL Moteur XSL Java So all technologies are standard or future standard XML, DTD, XSL are all XML format. DTD is a grammar for XML file XSL Engine transform XML into another format. It is written in XML So the author tool will use grammar of course, and is written in Java Course are store in XML and grammar describe with a DTD Publishing tool (we will shown only feasibility) use : DTD for read course XSL to transform course XSL engine to parse XSL And it is written in Java for platform independence HyperDiaporama are store in HTML for web version PDF for paper version HTML/PDF
24
Outil Auteur XML Open Source
Solution Merlot Outil Auteur XML Open Source Contenu des éléments Arbre XML
25
Outil Auteur XML Open Source
Solution Pourquoi Merlot… Outil Auteur XML Open Source Avantages Open Source Portabilité Outil Auteur générique Fonctionnalités standards Système de Plugins Inconvénient Pas de vue globale du document Pas de mise en forme du document
26
Solution GenDiapo Vue Stylée Arbre XML Attributs
27
Architecture GenDiapo Vue Stylée et Attributs
Solution Architecture GenDiapo Vue Stylée et Attributs Ré-ingénierie de Merlot Architecture Package à modifier Composants Swing Package javax.swing.text Vue stylée Peu utilisé pour notre domaine Maquette pour vérifier faisabilité Pontage Architecture Merlot Architecture Propre à GenDiapo Liens entre les deux
28
Plugins Évolution de GenDiapo Plugin DTD Plugin Action Mise en place
Solution Plugins Évolution de GenDiapo Plugin DTD Propre à une DTD Personnalisation de l’Outil Auteur Arbre XML Vue Stylée Attributs Mise en place d’un SDK Plugin Action Ajout de traitements
29
ASSURANCE QUALITE
30
Critère Poursuite du Projet Modularité Indépendance Évolutivité
Assurance Qualité Critère Poursuite du Projet Modularité Contrôle : Architecture et Codage Concerne : Outil Auteur et Outil Publication Indépendance Concerne : Tous les éléments Contrôle : Java, XML, …. Évolutivité Contrôle : Architecture et Codage Concerne : Outil Auteur et Outil Publication
31
Normes Poursuite du Projet Documents Phase du projet
Assurance Qualité Normes Poursuite du Projet Gestion des versions Entête et Plan Type Documents Phase du projet Modification/Fusion avec Merlot Normes de Merlot Futurs Développeurs Mise en Place d’un CVS Gestion des versions Serveur Local Serveur Local Sauvegarde quotidienne
32
Poursuite du Projet & Accessibilité
Assurance Qualité Site Web Poursuite du Projet & Accessibilité Source Forge CVS, Bugs, Forum, Statistiques….. Hébergeur Projet Open Source Centralisation des données Facilité d’accès (connexion Web) Éléments mis en ligne Codes Exécutables Code Source SDK Documentation
33
Réalisation d’un Prototype
Assurance Qualité Tests Réalisation d’un Prototype Gestion de Bugs Fichier ToDo & Documents Formulaire disponible sur SourceForge Tests Unitaires Utilisation de JTest Tests d’Intégration Construit depuis les Spécifications Externes Tests sur Windows et Linux
34
Réunions Contrôle du Projet Réunions d’avancement
Assurance Qualité Réunions Contrôle du Projet Réunions d’avancement Stagiaires Responsables Équipe GenEval Contrôle du projet Propositions techniques Vérification des besoins Définition des tâches suivantes Réunions de présentation Stagiaires Responsables Enseignants Présentation de l’architecture Vérification Satisfaction Démonstration de prototypes
35
GESTION DE PROJET
36
Satisfaction Enseignants
Gestion de Projet Cycle de Vie Satisfaction Enseignants Design Externes Codage Test & Intégration Validation External Design Coding Test & Integration Validation Outil Auteur & Structure de Document Faisabilité de l’Outil de Publication We have three goal : Author tool Course structure Feasibility of publishing tool More over, the exact specification requirement was define at the beginning of the project. So we design and code using increment. One increment consist of external design AND validation, then normal phase with a validation at the end And then, we iterate with a second one a final validation. We have more detail with planning….
37
Outil Auteur et Structure Document
Gestion de Projet Planning initial Outil Auteur et Structure Document Jan Fev Mars Avr Mai Juin Juil Août 18% 50 % 32 % Définition Besoins Faisabilité Système XML Java Conception & Codage Outil Auteur Structure de Cours Révision Outil Auteur Structure de Cours Faisabilité Outil Publication In fact the project was into 3 parts. The first one corresponding to the half time period ( 4/1/2001 – 31/8/2001 ) We got requirement And study system feasibility with XML and Java technologies Since the full time period we are in the first increment. ( 10/4/ /6/2001 ) There is two goal here, but linked : Develop a prototype for author tool Develop course structure Since this is the most important part of the project, it’s take 50% of all effort In a second phase, ( 9/7/2001 – 31/8/2001 ) We will make a revision of 1st increment And will add the publishing tool. Actually, We will just show the production chain. In fact a correct development of the publishing tool need the double in works. (why in this order feasibility and revision ?) Now, taking in account the project context, we have different risks.
38
Outil Auteur et Structure Document
Gestion de Projet Planning final Outil Auteur et Structure Document Jan Fev Mars Avr Mai Juin Juil Août 18% 66 % 16 % Définition Besoins Faisabilité Système XML Java Conception & Codage Outil Auteur Structure Document Faisabilité Révision In fact the project was into 3 parts. The first one corresponding to the half time period ( 4/1/2001 – 31/8/2001 ) We got requirement And study system feasibility with XML and Java technologies Since the full time period we are in the first increment. ( 10/4/ /6/2001 ) There is two goal here, but linked : Develop a prototype for author tool Develop course structure Since this is the most important part of the project, it’s take 50% of all effort In a second phase, ( 9/7/2001 – 31/8/2001 ) We will make a revision of 1st increment And will add the publishing tool. Actually, We will just show the production chain. In fact a correct development of the publishing tool need the double in works. (why in this order feasibility and revision ?) Now, taking in account the project context, we have different risks.
39
Outil Auteur et Structure Document
Gestion de Projet Risques Outil Auteur et Structure Document Satisfaction des Enseignants Réunions de présentations Cycle de vie Délais Planning Définition de buts prioritaires Reprise de Merlot Architecture About requirements first : The goal was not well define at the beginning. All won’t be done. So the risk was to assign wrong priority. To minimise this problem, we made validation meeting with teachers and document about what will do (????) A second risk is delay : Because the project was to important, and ??? We use planning adjust correctly during project We defined priority goal We recovery open source code. A third risk is architecture : Similar project aren’t mature. Two method was use to avoid problem : Validation & Weekly meeting Reusability of existing code ???? (creation de maquette) A last main risk is feasibility : It is link to architecture in fact To minimise this, we made model at the end system feasibility and in 1st increment. This guaranty the feasibility using the architecture we design. Although, we try not to reinvent the wheel, that’s why during the system feasibility we have look for existing components. That’s all folk…… Réunions d’avancement Faisabilité Réalisation de maquette Recherche de composants existants
40
CONCLUSION
41
Bilan Réussite Réussite du Projet Reprise d’éléments Open Source
Conclusion Bilan Réussite Réussite du Projet Édition et Publication d’un cours Outil générique avec vue du document Reprise d’éléments Open Source Mise en place de liens avec Merlot Découvertes Technologies Java, XML et XSL Développement avec un CVS
42
Contributions Très Instructif Projet de longue durée
Conclusion Contributions Très Instructif Projet de longue durée Toutes les phases de développement Gestion de Projet Collaboration avec d’autres équipes Réelles : GenEval Virtuelles : Merlot Gestion des animations (SVG)
43
QUESTIONS … COMMENTAIRES …
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.