11/11

Projet 11 · sur 11

Piloter un projet informatique

SAÉ 5.02 · BUT3 · Développement / Gestion de projet · équipe de 7-8 En cours
Node.jsSQLiteScrumTrelloGitHubnpmTests unitairesDocusaurusJSDoc / TypeDocDocker
Le projet en cours

La SAÉ 5.02 « Piloter un projet informatique » est le projet de développement en équipe de la 3e année (semestre 5, automne 2026). Elle place les étudiants dans la situation d'un professionnel R&T intégré à un service informatique, qui conçoit une application au sein d'une équipe et doit pour cela mettre en place un environnement de travail collaboratif et des méthodes de gestion de projet.

Le travail se fait en groupe de 7 à 8 personnes avec la méthode Scrum : un product owner (qui est aussi chef de projet), un scrum master et des développeurs. Les outils sont imposés : Trello pour le backlog et le suivi des sprints, GitHub pour le code, un IDE unique par équipe avec npm pour la gestion des paquets, un test runner pour les tests unitaires, et Docusaurus avec TypeDoc/JSDoc pour la documentation.

Le sujet est la réalisation d'un clone d'Instagram en Node.js / SQLite : profils, publication de photos et de vidéos (publiques ou réservées aux amis), commentaires, likes et dislikes, repartage, hashtags et tendances, système d'amitié, messagerie instantanée à deux ou en groupe, filtres et retouche photo, signalement et modération, notifications, le tout lançable avec Docker.

L'évaluation porte autant sur la gestion de projet que sur le produit : qualité de l'application, investissement individuel (avec une évaluation par les pairs), qualité du code (bonnes pratiques, commentaires, documentation, en suivant le Google coding style) et utilisation réelle des outils de gestion de projet. Le rendu final est attendu pour le 23 décembre 2026.

Mon rôle — développeur dans l'équipe Scrum : je prends en charge des fonctionnalités du product backlog au fil des sprints.

Objectif

Piloter en équipe, avec la méthode Scrum, le développement complet d'une application web — un clone d'Instagram en Node.js / SQLite — en utilisant réellement les outils de gestion de projet, et livrer un produit testé, documenté et conteneurisé avec Docker.

Fonctionnalités attendues
  • Création et gestion de profils personnels.
  • Publication de photos et de vidéos, visibles par tous ou seulement par les amis.
  • Commentaires, likes et dislikes sur les publications et les commentaires.
  • Repartage d'une publication.
  • Gestion des hashtags et des tendances.
  • Système d'amitié.
  • Messagerie instantanée à deux ou à plusieurs.
  • Filtres et outils de retouche pour les images.
  • Signalement et modération (droits administrateur).
  • Notifications.
  • Lancement de l'application avec Docker.
Démarche prévue
  • Constituer l'équipe et répartir les rôles Scrum (product owner, scrum master, développeurs).
  • Choisir un nom de projet, créer le tableau Trello et le dépôt GitHub de l'équipe.
  • Définir les fonctionnalités à réaliser et remplir le product backlog.
  • Développer par sprints en Node.js / SQLite, avec un environnement de développement commun (npm).
  • Écrire des tests unitaires pour valider le code.
  • Documenter l'application avec Docusaurus et TypeDoc/JSDoc (documentation utilisateur et technique).
  • Construire l'image Docker et rédiger le rapport de gestion de projet.
Enjeux
  • Coordonner 7 à 8 développeurs sur un même dépôt GitHub et tenir un backlog Trello à jour, sprint après sprint.
  • Concevoir un modèle de données SQLite cohérent pour les profils, publications, commentaires, réactions, hashtags et amitiés.
  • Gérer la visibilité des publications (publique ou amis) et les droits de modération.
  • Mettre en place une messagerie instantanée à plusieurs et un système de notifications.
  • Garder un code lisible et documenté, conforme au Google coding style.
Livrables attendus
  • Code complet, lançable avec npm install puis npm start.
  • Documentation utilisateur (installation, utilisation) et documentation technique pour les développeurs.
  • Image Docker permettant de lancer l'application.
  • Rapport de quelques pages sur l'organisation de l'équipe du point de vue de la gestion de projet.