Développement d'un jeu narratif en ligne

Lors de notre deuxième année nous avons eu un assez gros projets (estimé à 320 jours/hommes). L'environnement ici simulait un cas où nous serions une entreprise qui développe ses propres idées à partir d'un besoin client. Nous avons eu un sujet proposé par nos professeurs qui jouaient le rôle de la maîtrise d'ouvrage : comment valoriser le patrimoine. Nous avons donc choisi de réaliser une sorte de jeu vidéo en ligne où le joueur était plongé dans des scénarios de la seconde guerre mondiale qui mettaient en scène des lieux clés de notre région. Également, certains joueurs pouvaient écrire leurs propres histoires.

Nous avons ensuite dû réaliser une grande partie de cadrage de projet : comprendre les besoins, les fonctionnalités qui y sont liées, les risques, l'organisation du travail et les rôles de chacun. Ensuite nous avons réalisé la partie plus technique à savoir la modélisation des besoins à la fois des diagrammes et modèles de données, l'installation des serveurs (avec une partie sécurité) et le suivi des risques du projet.
Enfin, durant trois semaines nous avons développé notre application avec en parallèle des moments focalisés sur les tests unitaires et utilisateur. Il y avait également un approfondissement de la sécurité durant cette phase.
Personellement, lors de ce projet j'ai été chef d'équipe et responsable de la partie serveurs plus spécifiquement base de données et sécurité, je me suis chargé de conceptualiser la base de donnée et l'installer. J'ai également pu développer une des fonctionnalités principales à savoir lire une histoire.
D'un point de vue serveur, cela était très similaire à ce que j'avais déjà pu faire : installer des services web, sécuriser, automatiser.

Ce projet a été réalisé en groupe de 7 sur l'ensemble du semestre. Ci-dessous, un aperçu du rendu final de notre application :

Interface Rezisten
PHP HTML/CSS Javascript Postgres PHPUnit
Debian Github Visual Paradigm VS Code Canva

Compétences requises

  • Cadrer et organiser un projet de manière très efficace
  • Conceptualiser d'une application à partir d'un besoin large
  • Penser à toutes les étapes en amont du développement pour être efficace lors de cette phase
  • Organiser un travail en groupe avec une équipe de taille importante
  • Réaliser une application dynamique en web
  • Réfléchir fortement à l'expérience utilisateur

Compétences acquises

  • Réaliser un dossier de conception complet et utile à la réalisation
  • Gérer un travail d'équipe en tant que chef de projet
  • Mettre en place des mesures de sécurité dans une application qui manipule des données utilisateur
  • Organiser un développement et des tâches au sein d'une grande équipe
  • Gérer des imprévus

L'application n'est plus hébergée pour des raisons techniques mais le code source est disponible ici : Dépôt github