Présentation stages 2009 (INRA) std::cout << _(« Bonjour ;^) ») << std::endl; Développement des interfaces du projet VLE: GVLE & VLE-WEB
Plan Introduction Méthodologie de travail Développement GVLE 02/04/2017 Plan Introduction Méthodologie de travail Développement GVLE Développement VLE-Web Modèle d’irrigation Conclusion 2 Guillaume Ansel, Cyril Marcq, Daniel Salomé 2
1. Introduction 3 Guillaume Ansel, Cyril Marcq, Daniel Salomé 02/04/2017 1. Introduction 3 Guillaume Ansel, Cyril Marcq, Daniel Salomé
1. Introduction Stage de Licence/Master Informatique 02/04/2017 1. Introduction Stage de Licence/Master Informatique Durée : 18 semaines (master), 10 semaines (licence) Thèmes: « Développement des fonctionnalités de GVLE. » « Développement d’une interface Web pour VLE. » « Création d’un modèle d’irrigation sous VLE. » Encadrement: Gauthier Quesnel Patrick Chabrier Eric Ramat Hélène Raynal 3 étudiants sur le site de Calais, 2 à Toulouse G. Quesnel & P. Chabrier : GVLE E. Ramat : VLE-Web H. Raynal : Modèle d’irrigation 4 Guillaume Ansel, Cyril Marcq, Daniel Salomé
1. Introduction VLE: « Virtual Laboratory Environment » « Plate-forme informatique de multi-modélisation et de simulation de systèmes complexes dynamiques. » (http://vle.univ-littoral.fr) On laisse, on enlève ? Guillaume Ansel, Cyril Marcq, Daniel Salomé
2. Méthodologie de travail 02/04/2017 2. Méthodologie de travail 6 Guillaume Ansel, Cyril Marcq, Daniel Salomé
2. Méthodologie de travail 02/04/2017 2. Méthodologie de travail Le développement de VLE s’appuie sur le travail collaboratif et des outils issus du Logiciel Libre. Utilisations des méthodes de gestion de projet agiles de développement (eXtreme Programming). Découpage du travail en tâches élémentaires réalisable rapidement par une personne. Communication importante entre les membres via le salon de discussion en ligne #vle, les mailing-list et les réunions. C++ (STL, Boost, Gtkmm…) Git Sourceforge Cmake … XP = Communication (XP préconise le développement en binôme, pour nous : IRC) + réalisation simple (ne pas cherchez les complications inutiles) + feedback (commentaires Sourceforge) Quelques pratiques utilisées en XP: Les tests unitaires font partie intégrante du cycle de développement (libvpz, libgraph) Les tâches terminées sont intégrées directement au dépôt public Le Refactoring (ou remaniement de code) doit être utilisé quand une partie de l’application doit être remodelée => meilleure maintenabilité => utilisation d’un outil d’analyse de code (cppchecker) Convention de nommage identique pour tout le monde Pas de segmentation du code entre les développeurs, tout le monde travaille sur toute les parties du projet (gvle). 7 Guillaume Ansel, Cyril Marcq, Daniel Salomé
2. Méthodologie de travail 02/04/2017 2. Méthodologie de travail 1. Sourceforge Site web d'hébergement de projet Outil de suivi de bugs Outil de gestion des tâches Documentation du projet (wiki) Dépôt des sources (CVS, SVN, Git) Bugtracker: référence les bugs connus (global= problème de compilations etc…) Features request: pour les fonctionnalités attendues de VLE (global) Tracker GVLE: pour les tâches à réaliser dans GVLE Tracker VLE-Web: pour les tâches à réaliser dans VLE-Web 8 Guillaume Ansel, Cyril Marcq, Daniel Salomé
2. Méthodologie de travail 02/04/2017 2. Méthodologie de travail 2. Git Logiciel de gestion de versions Modèle décentralisé (chacun possède son propre dépôt) Dépôt public sur sourceforge.net Possibilité de travailler « offline » Gestion de plusieurs branches de développement, des conflits, historique des versions… Envoie d’un patch après la réalisation de chaque tâche Dépôt public: branche master = version officielle de VLE Offline => pas trop longtemps => divergence par rapport au master (mais toujours possible) Développement d’une tâche = création d’une branche temporaire dans son dépot local, puis fusion avec la branche master Envoie d’un patch sur sourceforge pour fermer la tâche 9 Guillaume Ansel, Cyril Marcq, Daniel Salomé
3. Développement GVLE 10 Guillaume Ansel, Cyril Marcq, Daniel Salomé 02/04/2017 3. Développement GVLE 10 Guillaume Ansel, Cyril Marcq, Daniel Salomé
3. Développement GVLE 1. Les ajout de fonctionnalités: 02/04/2017 3. Développement GVLE 1. Les ajout de fonctionnalités: Gestion des paquets via GVLE Export des vues en images (png, pdf, svg) Export d'un modèle dans une classe Import des modèles (vers Model, vers Classe) Import des classes Personnalisation des préférences de GVLE 11 Guillaume Ansel, Cyril Marcq, Daniel Salomé
3. Développement GVLE 2. Les améliorations de l’ergonomie du logiciel 02/04/2017 3. Développement GVLE 2. Les améliorations de l’ergonomie du logiciel Renommage des éléments du VPZ (model, view, output, condition...) Gestion du copier-coller pour les modèles, vues Nouvelle fenêtre de gestion de modèles atomiques (système d'onglets) Uniformisation des raccourcis clavier et des menus Changement de l'interface vers une version mono- fenêtré 12 Guillaume Ansel, Cyril Marcq, Daniel Salomé
3. Développement GVLE 3. Les corrections de bugs 02/04/2017 3. Développement GVLE 3. Les corrections de bugs Gestions des erreurs causant une sortie de l'application Minimiser le nombre de messages d’erreur non pertinent Correction des bugs sur la gestion des connexions Corrections des bugs sur la création de modèles couplés 13 Guillaume Ansel, Cyril Marcq, Daniel Salomé
4. Développement VLE-Web 02/04/2017 4. Développement VLE-Web 14 Guillaume Ansel, Cyril Marcq, Daniel Salomé
4. Développement VLE-Web 02/04/2017 4. Développement VLE-Web >>> 15 Guillaume Ansel, Cyril Marcq, Daniel Salomé
5. Modèle d’irrigation 16 Guillaume Ansel, Cyril Marcq, Daniel Salomé 02/04/2017 5. Modèle d’irrigation 16 Guillaume Ansel, Cyril Marcq, Daniel Salomé
5. Modèle d’irrigation >>> 17 02/04/2017 5. Modèle d’irrigation >>> 17 Guillaume Ansel, Cyril Marcq, Daniel Salomé
6. Conclusion 18 Guillaume Ansel, Cyril Marcq, Daniel Salomé 02/04/2017 6. Conclusion 18 Guillaume Ansel, Cyril Marcq, Daniel Salomé
02/04/2017 6. Conclusion Participation aux travaux d'une unité de recherche (encadrement différent d'une entreprise) Travail collaboratif et à distance Connaissances techniques 19 Guillaume Ansel, Cyril Marcq, Daniel Salomé