====== Outils du Génie Logiciel ====== ===== Objectifs du module ===== * Définir les bonnes pratiques et outils indispensables au génie logiciel. ===== Modalités d'évaluation ===== Le module sera évalué sur la base d'un projet commun et sur l'implication dans ce projet. Des QCM et TD spécifiques viendront compléter l'évaluation sur projet. ===== Intervenants ===== ^ Nom ^ Affiliation ^ Adresse ^ | [[urli@i3s.unice.fr|Simon Urli]] (SU) |Start-up PulseTotem / I3S | Bureau XXX | ===== Planification ===== * **05/01/16** : Introduction au module : * [[http://goo.gl/forms/ru8S52nh79|Qui êtes-vous ?]] * Cours : * {{:2015_2016:lp:dam:gl:intro.pdf|Présentation du module}} * {{:2015_2016:lp:dam:gl:gestion_de_version.pdf|Retour sur Git}} * TD : * [[2015_2016:lp:dam:gl:stash_git|Prise en main stash/git]] * **12/01/16** : Introduction au sujet : * Cours : * Introduction à JIRA : * {{:2015_2016:lp:dam:gl:jira.pdf|Slides}} * {{:2015_2016:lp:dam:gl:atlas_-_etudiant_-_ge_rer_son_projet.pdf|PDF "Gérer son projet"}} * {{:2015_2016:lp:dam:gl:maven-jenkins.pdf|Maven, Jenkins et Automatisation}} * Prise en main de Maven : {{:2015_2016:lp:dam:gl:pom.xml.zip|pom.xml}} * TD : * {{:2015_2016:lp:dam:gl:projet.pdf|Présentation du projet}} * [[http://www.jeuxdenim.be/jeu-CitesPerdues|Plus d'infos sur le jeu]] * Définition des premières tâches * **19/01/16** : Retour sur les tests unitaires : * Cours : * Slides retour sur les tests * {{:2015_2016:lp:dam:gl:code-dicegame-tests.zip|Code démo}} * TD : * Projet * Critères Sprints : * Tickets JIRA / Commits GIT => Répartition du travail * Correspondance release / fonctionnalités attendues * Démonstration * Qualité du code / Tests * Build Maven / Jenkins * **26/01/16** : Premier Sprint et Initiation aux WebServices * Sprint 1 : * Release JIRA (bouton release dans le Kanban : {{:2015_2016:lp:dam:gl:atlas_-_etudiant_-_ge_rer_son_projet.pdf|cf doc JIRA}}) * Release GIT dans Master + Tag : ''git tag [nomTag] && git push origin [nomTag]'' ([[https://git-scm.com/book/en/v2/Git-Basics-Tagging|cf doc Git]]) * Cours : * {{:2015_2016:lp:dam:gl:apiweb.pdf|Introduction aux API Web}} * {{:2015_2016:lp:dam:gl:test-service.zip|Exemple de code}} * **02/02/16** : QCM et Travail sur le projet * Pas de cours - QCM Git & Jenkins * Retours sur le Sprint 1 * Sprint 2 * **09/02/16** : Sprint 3 et Retours sur la conception * Cours : {{:2015_2016:lp:dam:gl:conception.pdf|Retour sur la conception}} * Retours sur le Sprint 2 * Sprint 3 * **23/02/16** : Sprint 4 * Démo Sprint 4 - G1 : * Rien à présenter parties Moteur et IHM * WS : une requête pour Créer Joueur / Partie + récupérer cartes * WS : requête pour tirer une carte * Hors démo : * IHM : rien de neuf niveau graphique - Intégrer les fonctions pour appel au WS * Moteur : Gestion des exceptions - Score en fin de partie * Démo Sprint 4 - G2 : * Démo pb pour la présentation des WS donc pas de démo... * IHM : Début d'interface mais pas de connection au WS donc ça plante * Release Sprint 5 attendu pour le **dimanche 28 mars 23h59** * Groupe 1 : * Initialisation du plateau de bout en bout (IHM -> API -> Moteur) * Moteur : Ajout de fonctionnalités / MàJ Diagrammes (classes & BPMN) + Tests du moteur * WebServices : réalisation du protocole + documentation * Groupe 2 : * IHM : Réglage / score / plateau amélioré * Moteur : tests & doc * WS : API avec gestion des erreurs et documentée * **23/02/16** : Sprint 4 * {{:2015_2016:lp:dam:gl:designpatterns-2015.pdf|Cours Patrons de Conception}} * Démo Sprint 5 - G1 : * Initialisation du plateau non fonctionnel. * Pas de communication avec le WS. * WS : GET pour connecter un joueur. * Jeu initialisé à partir de deux joueurs. * Structure de donnée plateau : pas d'info des zones des joueurs + zones de défausse. * Tirer une carte : renvoie la pioche. * Moteur : fonctionnalités supplémentaires : tri des cartes + scores implémentés. * Démo Sprint 5 - G2 : * IHM avec règles + gestion en cas de non connection au serveur. * Jeu en console pas de vision du plateau. * Bug sur la récupération de la carte présente sur la défausse. * En fin de partie information du score. * Services non définis : mock des objets pour le moment. * Manque des infos sur les données. * Pas possible de créer de user via WS. * Release Sprint 6 attendue pour le **dimanche 13 mars 23h 59** * **15/03/16** : Sprint 5 * Démo Sprint 5 - Groupe 1 : * Aucune démo côté IHM / WS * Démo en console : pas de gestion des input invalides * 2 tests en plus * WS : 1 requête ajoutée * Projet très peu abouti * Démo Sprint 5 - Groupe 2 : * Fonctionnement des WS * Pas d'IHM en démo * Moteur : correction bug moteur * Release **Sprint Final** attendue pour le **dimanche 20 mars 23h 59** * **22/03/16** : Evaluation du Projet * Présentation du projet à une **équipe de développeurs en charge de la poursuite du projet** * Evaluation : * Vue d'ensemble sur le projet : * Contexte projet / Démo release finale * Organisation * Fonctionnalités réalisées / à faire * Architecture du code * Compilation / Lancement / Déploiement * Points faibles / points forts * Par équipe : * Description du travail réalisé * Explication des choix techniques effectués * Focus technique sur un aspect (fonctionnalité, élément d'architecture...) * Organisation au sein de l'équipe * Communication avec les autres équipes * Organisation : * **13h-15h** - Groupe 2 : * **13h - 13h 30** : Vue d'ensemble (Alexandre Le Foll, Pierre Gerbaud, Pierre Juaneda, Enzo Bianchi) * **13h 35 - 14h** : Equipe Model (Enzo Bianchi, Tristan Ferreira, Edouard Kabia, Alexandre Le Foll) * **14h 05 - 14h 30** : Equipe Controller (Pierre Juaneda, Victor Sarda, Ali Boulajine, Florent Taine, Edouard Beccaria) * **14h 35 - 15h** : Equipe IHM (Pierre Gerbaud, Remi Perrin, Kevin Banquart, Adrien Bianco, Julien Noncher-Gillet) * **15h 15-17h 15** - Groupe 1 : * **15h 15 - 15h 45** : Vue d'ensemble (Alexis Moisan, Kevin Hougue, Jeremie Blanchard, Issam Khairi) * **15h 50 - 16h 15** : Equipe Moteur (Jeremie Blanchard, Florian Louvet, Johan Caron, Nicolas Kocur, Benjamin Szucs) * **16h 20 - 16h 45** : Equipe WS (Issam Khairi, Lydie Ray, Lionel Raymond, Sanoyan Jeyakumar, Alexis Moisan) * **16h 50 - 17h 15** : Equipe IHM (Kevin Hougue, Jeremy Scatigna, Valentin Chagnoux, Johnny Nguyen)