PROJET JAVAFX: LA ROUE DE LA FORTUNE

Objectifs

Développer une application de Casino en équipe (5 étudiants) en appliquant la méthode Agile.

Contexte

Ce projet est propre au parcours IAMSI (Integration d'application et management du système d'information).
Il s'étale sur 4 sprints de 3 semaines.
Pour ce projet, nos professeurs ont joué le rôle de clients non-informaticiens et nous ont exprimé leurs souhaits dans la réalisation d'une application du casino en ligne. Chaque groupe a été chargé de réaliser un jeu complet. Nous avons réalisé le jeu "La roue de la fortune".

Travail d'Équipe et Rôle

La méthode Agile prévoit 2 rôles particuliers au sein d'une équipe. Le "product owner", chargé de faire respecter les besoins des clients. Et le "scrum master", chargé de faire respecter l'organisation au sein de l'équipe. À chaque début de sprint, un "product backlog" est établi, c'est une liste de tâches à réaliser pour le sprint en cours. Nous donnons un poids à chaque tâche puis nous les attribuons aux membres de l'équipe. Des rendez-vous de 15 min sont régulièrement donnés permettant à chacun d'exprimer ses besoins et difficultés.

Attentes et Contraintes

Le choix du langage était libre et très peu d'informations ont été donné. Les clients ont parfaitement joué les non-informaticiens en nous laissant dans le flou, en changeant d'avis ou en exprimant des besoins différents selon le client. C'est au fur et à mesure des échanges entre le product owner et les clients que nous avons pu préciser notre trajectoire.
La prochaine contrainte consistera, au prochain semestre, à mettre en commun toutes les applications réalisés par les groupes d'élève afin d'obtenir une application de casino proposant plusieurs jeux.

Ce que m'a apporté ce projet

Informatique :
Approfondissement des connaissances du langage JavaFX.
Estimation du poids d'une tâche.
Gestion des bugs (recherche, analyse et résolution des erreurs).
Respect du modèle MVC.
Transversale :
Application concrète de la méthode Agile.
Savoir répartir les tâches à faire et définir des délais.
Être à l'écoute, communiquer et proposer son aide.
Prendre des initiatives, être créatif.
Respecter les contraintes données.

En rapport au programme du BUT Informatique

Apprentissages critiques (AC) et Composantes essentielles (CE) mobilisés :

AC 1.2 - Adopter de bonnes pratiques de conception et de programmation
Exemples :
→ Utilisation du Modèle-Vue-Contrôleur (MVC).
→ Application des principes SOLID et DRY (Don't repeat yourself).

AC 5.2 - Formaliser les besoins du client et de l'utilisateur
Exemples :
→ Recueil et analyse des besoins et souhaits du client.
→ Interpreter sous forme de spécifications précises à l'aide d'un diagramme de conception.

AC 5.3 - Identifier les critères de faisabilité d'un projet informatique
Exemples :
→ Identifié une technologie adaptée au projet et maitrisé par le groupe.
→ Evaluation des difficultés comme la réalisation d'un générateur de nombre aléatoire fiable.

AC 5.4 - Définir et mettre en œuvre une démarche de suivi de projet
CE 5.1 - En communiquant efficacement avec les différents acteurs d'un projet
Exemples :
→ Utilisation d'un outil de gestion de projet (Gitlab).
→ Estimation de la vélocité de l'équipe via des burnup et burndown chart.
→ Organisation d'un rendez-vous bi-hebdomadaire de l'équipe.
→ Rédaction de compte-rendu pour tous types de réunion.

CE 5.2 - En respectant les règles juridiques et les normes en vigueur
Exemples :
→ Création d'un générateur de nombre aléatoire correspondant aux normes européennes.

AC 6.3 - Mobiliser les compétences interpersonnelles pour intégrer une équipe informatique
CE 6.4 - En développant une communication efficace et collaborative
Exemples :
→ Adaptation aux différents styles de communication et personnalités.
→ Respect des normes de nommage pour les contributions sur GitLab.

AC 6.4 - Rendre compte de son activité professionnelle
Exemples :
→ Synthèse écrite de chaque contribution au projet afin d'éviter l'incompréhension de l'équipe.
→ Rédaction de compte-rendu pour tous types de réunion.


Image du Projet 2