# Projet transversal en informatique (MultiMIF) ## Réunion de lancement 2017
.right.bottom[ Emmanuel Coquery Lionel Médini Aurélien Tabard ]
Page de l'UE:
Emmanuel Coquery (http://liris.cnrs.fr/~ecoquery)
-> Enseignement -> MIF10Projet Transversal (MultiMIF) --- # Objectifs ### Pratiquer le développement dans le cadre d'un projet - Se rapprocher d'une expérience de développement professionnel - Mettre en pratique les techniques vues dans d'autres cours de M1 ou de Licence * Programmation avancée, Génie Logiciel, Programmation Web, Gestion de données pour le Web, _etc_ --- # Groupes ### 6 étudiants * Pas le choix de vos partenaires ### Organisation * Quelles méthodes ? * Quels outils ? ### Trouver sa place dans le groupe * Chacun doit pouvoir trouver son rôle * Voir au delà des compétences techniques ### Une note de groupe * Modulable par étudiant (± 2 points) --- ## Sujet 2017: vote électronique ### Développer une application de vote: * Créer et administrer des votes * Choisir un mode de scrutin (voir [Système Électoral sur wikipedia](https://fr.wikipedia.org/wiki/Syst%C3%A8me_%C3%A9lectoral#Les_diff.C3.A9rents_modes_de_scrutin_et_syst.C3.A8mes_.C3.A9lectoraux)) et l'expérimentation [Voter autrement](https://vote.imag.fr/about) * Gérer le déroulement du vote : * Authentification des votants * Permettre le vote * Suivre le vote et accéder aux résultats * Tableau de bord * Donner des garanties sur le vote : * Respect de l'anonymat * Intégrité des résultats --- # Organisation du projet ## Méthodologie de projet: SCRUM * Bien définir les différents rôles * Utiliser le système d'issues de la forge pour le suivi * Planifier le travail du groupe * Faire des comptes rendus de toutes les réunions ### Mêlées * Durée: 1 semaine * Attention aux éventuels Cours/TD/TP qui s'intercalent --- # 4 semaines de projet ## Bloc 1 : Semaine du 9 au 13 octobre #### Démarrage, constitution des groupes * Répartition des rôles, mise en place de l'organisation #### Configuration des environnements * Développement, recette, démo #### Conception * Identification des acteurs, des cas d'utilisation principaux * Identification des Risques * Début d'architecture --- # 4 semaines de projet ## Bloc 1 : Semaine du 16 au 20 octobre #### 1er jet d'architecture * Application minimale qui fonctionne #### Chaîne d'outillage fonctionnelle --- # 4 semaines de projet ## Bloc 2 : Semaine du 13 au 17 novembre #### Développement ## Bloc 2 : Semaine du 20 au 24 novembre #### Développement #### Soutenances --- # Permanences Du support autour de la conception, ainsi que du support technique sera fourni.
Calendrier disponible sur le site (page de l'UE): .center[http://liris.cnrs.fr/ecoquery/dokuwiki/doku.php?id=enseignement:multimif:2017] --- # Organisation interne ## Répartir au minimum les rôles suivants * Product Owner * Responsable des choix de conception produits * Scrum Master * Veille à l'application de Scrum * Veille au bon fonctionnement de l'équipe * Tracker * Responsable du suivi de l'avancement * Responsable qualité * Met en place les processus assurant la qualité du produit * Veille au respect de ces processus * Référents techniques * Identifier les personnes (plus) compétentes sur les différentes technologies utilisées --- # Gestion de la qualité ## Tests * Écriture des test (qui teste et quoi) * Automatisation * Documents et rapports pour les tests manuels ## Audit de code * Outils (Sonarqube) * Relecture de code croisée --- # Livrables ## Documents, comptes-rendus * Définir un modèle de document * Titre, date de dernière modification, auteurs * Tableau des modification et relectures
Date
Personne
Action
2017-10-10
L. Médini
Validation
2017-10-09
A. Tabard
Relecture, corrections mineures
2017-10-09
E. Coquery
Première version complète
2017-10-08
E. Coquery
Plan
* Les comptes rendus de réunion doivent lister présents, absents excusés et absents (uniquement pour les membres du projets sensés participer à la réunion) .center[ #### Ces livrables sont à déposer dans le .red[wiki du projet forge],
et listés dans une .red[page Wiki "Fichiers"] ] --- # Document de fin d'études préliminaires
* VOTRE cahier des charges * Cas d'utilisation principaux * Présentation de vos outils de gestion de projet et d'intégration continue * Risques identifiés * Pistes d'architecture
.center.red[ À rendre pour le dimanche 15 octobre ] --- # Document d'architecture logicielle
* Résumé de l'architecture (1 diagramme + explications) * Ensemble des diagrammes UML * Description du matériel et du logiciel * Vues statiques et dynamiques * Mémos techniques (choix techniques et justifications), en particulier: * Utilisation de Spring Web MVC, représentation des ressources en REST * Solution(s) de persistance des données
.center.red[ À rendre pour le vendredi 20 octobre ] --- # Rendu de code * Mettre les intervenants de l'UE comme **Reporter** de votre projet * Créer une branche `FINAL` correspondant au code de la démo * Qui datera au plus tard du **jour de la soutenance** * Installer une démo pour le jour de la soutenance sur la machine virtuelle du groupe * Elle devra rester déployée jusqu'au jury du premier semestre de M1 * Les informations permettant d'utiliser la démo (_e.g._ login, url, etc) devront être explicitées dans le Wiki du projet à la page "**Demo**"
.red.center[ À faire pour le jour de la soutenance ] --- # Compte-rendus de gestion de projet
### Document bilan à la .red[fin de chaque mêlée] * Résumé d'avancement * Points de blocage technique et/ou humains * État de la qualité * screenshots Sonarqube --- # Démonstration et soutenance ## Démonstration * Préparer un scénario de démonstration * Montrer les différentes facettes de l'interface utilisateur * Montrer les différentes fonctionnalités, les aspects de sécurité, etc * Mettre en avant les points forts de la réalisation ## Soutenance * Présenter votre mode de fonctionnement collaboratif, toutes les informations indiquant comment vous avez conduit votre projet * Présenter vos choix d'architecture, quelques diagrammes UML, les patterns utilisés, etc * Montrer que votre produit répond aux attentes du client --- # Groupes et salles TD pour le lancement Groupes A, B ,C, D: TD10 Groupes E, F, G, H: TD11 Groupes I, J, K, L: TD12 Groupes M, N, O: TD13
.center.red[Attention, les groupes sont susceptibles de changer selon les présents]