Dossier de Spécifications Complètes
Ce document fournit une spécification exhaustive et opérationnelle, centrée sur une approche agile et Scrum, pour le développement de l'application de gestion de projets agiles destinée aux petites équipes, étudiants et start-ups. Les exigences techniques, fonctionnelles, organisationnelles et de cycle de vie sont détaillées pour garantir la réussite du projet, sa maintenabilité et son évolutivité.
Synthèse des Points Clés
Ce cahier des charges présente une architecture hexagonale (Ports \& Adapters), intégrant un backend Spring Boot, un frontend Angular/NGXS, une infrastructure Dockerisée, une CI/CD GitLab, une gestion avancée de la sécurité, et un monitoring robuste. L'ensemble des modules, frameworks et outils techniques requis est inventorié. Toutes les user stories et technical stories nécessaires pour la gestion exhaustive d'un projet agile sont listées, avec compléments pour assurer la couverture complète du cycle de vie produit, du développement à la maintenance.
1. Environnement Technique
1.1 Vue d'Ensemble Architecturale
L'application repose sur une architecture hexagonale Ports \& Adapters qui garantit la séparation claire des responsabilités, une testabilité optimale et une grande évolutivité. L'intégralité de l'environnement technique est containerisée et automatisée pour des déploiements sûrs et reproductibles.
1.1.1 Schéma PlantUML - Architecture Hexagonale Complète
1.2 Stack Backend
- Spring Boot 3.x (Java 17+)
- Modules principaux :
- Spring Web : REST API, contrôleurs HTTP
- Spring Data JPA : accès base de données, repositories
- Spring Security : authentification JWT, autorisation RBAC
- Spring Boot Actuator : monitoring, health checks, métriques
- Spring Boot Test, Mockito : tests unitaires et d'intégration
- Flyway : migrations DB versionnées et automatisées
- Spring Boot Loader : packaging JAR exécutable
- Spring Validation : validation des entrées utilisateur
- Spring AOP : aspects transversaux (logs, sécurité)
- Base de données : PostgreSQL en production, H2 pour le développement et les tests
- Approche hexagonale : découpage par domaine métier, ports/interfaces métiers et adaptateurs d'infrastructure.
- Modules principaux :
1.3 Stack Frontend
- Angular 17+
- State Management : NGXS (gestion d'état centralisée)
- UI Framework : Angular Material (design system Material Design, personnalisable)
- Angular CLI : build, optimisation, génération de code
- RxJS : programmation réactive
- Angular Router : navigation SPA
- Angular Forms : Reactive Forms et Template-driven
- Cypress : tests end-to-end
- Jasmine/Karma : tests unitaires
- Responsive Design et accessibilité WCAG 2.1 AA.
1.4 Infrastructure, Intégration et Outils
- Docker \& Docker Compose (containerisation des services : frontend, backend, database)
- GitLab CI/CD (pipelines automatisés)
- Build : compilation, packaging
- Test : unitaires, intégration, end-to-end
- Deploy : déploiement progressif blue/green (frontend), rolling (backend)
- Stages : lint, build, test, package, deploy, monitor
- Supervision et Monitoring
- Prometheus : collecte de métriques applicatives et système
- Grafana : dashboards de visualisation, alerting
- ELK Stack (Elasticsearch, Logstash, Kibana) : centralisation et analyse des logs
- Spring Boot Actuator : endpoints health, info, metrics
- Sauvegardes et Haute Disponibilité
- Sauvegardes automatiques quotidiennes (base de données, fichiers de configuration)
- Rétention minimum 30 jours
- Stratégie de restauration documentée
- Gestion des versions de configuration via Git.
1.4.1 Schéma PlantUML - Infrastructure, Déploiement et CI/CD
1.5 Sécurité
- Authentification JWT (JSON Web Tokens)
- Access Token avec expiration courte (15-30 min)
- Refresh Token avec expiration longue (7-30 jours)
- Rotation des tokens
- Spring Security
- Configuration RBAC (Role-Based Access Control)
- Rôles utilisateurs : Admin, Product Owner, Scrum Master, Developer, Observateur
- Permissions granulaires par produit et par ressource
- Protection CSRF, XSS, SQL Injection
- Politique d'accès
- Validation des permissions au runtime
- Audit trail des actions sensibles
- Chiffrement des données sensibles en base.
1.6 Schéma PlantUML - Stack Technique Complet
2. Modules Fonctionnels
2.1 Module Administration
- Gestion des utilisateurs (CRUD complet)
- Création, modification, suppression (soft delete), désactivation/activation
- Attribution et modification des rôles globaux et par produit
- Gestion des profils utilisateurs (nom, email, avatar, préférences)
- Gestion des produits
- CRUD produits agiles
- Constitution et gestion des équipes
- Attribution des rôles agiles (PO, SM, Dev, Observateur).
2.2 Module Gestion Projet
2.2.1 Dashboard Produit
- Vue synthétique des métriques clés
- Vélocité moyenne et par sprint
- Burn-down et burn-up charts
- Points restants au backlog
- Progression des releases et sprints en cours
- Planning des événements équipe (ceremonies, congés, événements)
- Historique des activités récentes
- Notifications et alertes temps réel.
2.2.2 Gestion du Backlog
Schéma PlantUML - Hiérarchie Backlog Agile
- Organisation hiérarchique complète
- Epic → Feature → User Story / Technical Story → Task
- Defects (bugs) → Task
- Spike (recherche/investigation) → Findings
- Affichage multi-vues
- Liste avec tri et filtres avancés
- Board Kanban avec workflow personnalisable
- Calendrier des échéances
- Burndown et burnup charts
- Opérations
- Drag \& drop pour priorisation et déplacement
- Estimation collaborative (Planning Poker intégré)
- Historique des modifications et commentaires.
2.2.3 Planning Poker (Estimation Collaborative)
- Sessions en temps réel
- Création de session d'estimation
- Invitation des participants
- Vote simultané et anonyme jusqu'à révélation
- Échelles d'estimation configurables
- Fibonacci (0, 1, 2, 3, 5, 8, 13, 21, ...)
- T-shirt sizes (XS, S, M, L, XL, XXL)
- Heures idéales
- Personnalisée
- Fonctionnalités
- Chat intégré pour discussions
- Sauvegarde automatique des estimations
- Historique des sessions
- Export des résultats.
2.2.4 Gestion des Sprints et Releases
- Release Planning
- Définition des releases (nom, objectif, dates, périmètre)
- Roadmap produit visuelle
- Suivi des dépendances entre releases
- Sprint Management
- Création et configuration de sprints (durée, capacité, objectif)
- Sprint backlog (sélection depuis product backlog)
- Calcul automatique de vélocité
- États : Planifié, En cours, Terminé, Annulé
- Board Kanban personnalisable
- Workflow configurable (To Do, In Progress, Review, Done, etc.)
- WIP limits (Work In Progress) par colonne
- Swim lanes (par priorité, par membre, par type)
- Drag \& drop intuitif
- Filtres et recherche avancée.
Schéma PlantUML - Workflow Kanban
2.2.5 Ceremonies Agile
- Sprint Planning
- Définition de l'objectif du sprint (Sprint Goal)
- Sélection et décomposition des stories
- Estimation de la capacité équipe
- Engagement de l'équipe
- Daily Stand-up
- Template structuré : Hier / Aujourd'hui / Blocages
- Mise à jour rapide du board
- Identification des impediments
- Historique des daily meetings
- Sprint Review
- Démonstration des incréments livrés
- Collecte de feedback
- Mise à jour du product backlog
- Traçabilité des décisions
- Sprint Retrospective
- Formats multiples : Start/Stop/Continue, Mad/Sad/Glad, 4Ls
- Identification des points d'amélioration
- Définition et suivi des actions d'amélioration
- Historique des rétrospectives pour analyse long terme.
3. User Stories et Technical Stories Exhaustives
3.1 Epic 1 - Administration et Sécurité
User Stories
US-001 : En tant qu'administrateur, je veux créer un compte utilisateur avec attribution de rôles afin de donner accès à l'application.
US-002 : En tant qu'administrateur, je veux modifier les informations et rôles d'un utilisateur existant pour maintenir les données à jour.
US-003 : En tant qu'administrateur, je veux désactiver temporairement un compte utilisateur sans le supprimer pour gérer les départs temporaires.
US-004 : En tant qu'utilisateur, je veux mettre à jour mon profil (nom, email, avatar, préférences) pour personnaliser mon expérience.
US-005 : En tant qu'utilisateur, je veux me connecter avec email/mot de passe ou OAuth2 (Google, GitHub) pour accéder à l'application de manière sécurisée.
US-006 : En tant qu'utilisateur, je veux réinitialiser mon mot de passe par email afin de récupérer l'accès à mon compte.
US-007 : En tant qu'administrateur, je veux consulter les logs d'audit des actions sensibles pour assurer la traçabilité.
Technical Stories
TS-001 : En tant qu'équipe technique, nous devons implémenter l'authentification JWT avec access et refresh tokens pour sécuriser l'API.
TS-002 : En tant qu'équipe technique, nous devons configurer Spring Security avec RBAC pour gérer les autorisations par rôle et ressource.
TS-003 : En tant qu'équipe technique, nous devons implémenter les migrations Flyway pour versionner le schéma de base de données.
TS-004 : En tant qu'équipe technique, nous devons configurer le chiffrement des données sensibles (mots de passe, tokens) en base.
3.2 Epic 2 - Gestion Produit et Équipe
User Stories
US-010 : En tant que Product Owner, je veux créer un nouveau produit agile avec nom, description et vision pour initialiser le projet.
US-011 : En tant que PO, je veux constituer une équipe en assignant des membres avec leurs rôles (PO, SM, Dev, Observateur) pour structurer l'organisation.
US-012 : En tant que Scrum Master, je veux modifier la composition de l'équipe (ajouter/retirer membres) pour adapter aux évolutions.
US-013 : En tant que membre d'équipe, je veux consulter la liste des produits auxquels je suis affecté pour naviguer rapidement.
US-014 : En tant que PO, je veux archiver un produit terminé sans le supprimer pour maintenir l'historique.
3.3 Epic 3 - Gestion du Backlog
User Stories
US-020 : En tant que PO, je veux créer un Epic avec objectif business, priorité et description pour structurer la vision long terme.
US-021 : En tant que PO, je veux créer des Features rattachées à un Epic pour organiser le périmètre fonctionnel.
US-022 : En tant que PO, je veux créer des User Stories au format "En tant que... je veux... afin de..." pour exprimer les besoins utilisateurs.
US-023 : En tant que développeur, je veux créer des Technical Stories pour documenter les besoins techniques non visibles par l'utilisateur.
US-024 : En tant que membre d'équipe, je veux définir des critères d'acceptation pour chaque User Story afin de clarifier la Definition of Done.
US-025 : En tant que PO, je veux prioriser les éléments du backlog par drag \& drop pour refléter la valeur business.
US-026 : En tant que PO, je veux visualiser le backlog en vue liste, Kanban et calendrier pour m'adapter au contexte.
US-027 : En tant que membre d'équipe, je veux ajouter des commentaires et pièces jointes sur les stories pour enrichir la documentation.
US-028 : En tant que PO, je veux filtrer et rechercher dans le backlog (par statut, priorité, assigné, tags) pour naviguer efficacement.
US-029 : En tant que membre d'équipe, je veux créer des Defects (bugs) avec sévérité et priorité pour suivre les anomalies.
US-030 : En tant que PO, je veux créer des Spikes pour documenter les investigations et recherches nécessaires.
Technical Stories
TS-010 : En tant qu'équipe technique, nous devons implémenter la gestion hiérarchique Epic > Feature > Story > Task avec relations en base.
TS-011 : En tant qu'équipe technique, nous devons optimiser les requêtes de chargement du backlog pour supporter 1000+ items.
TS-012 : En tant qu'équipe technique, nous devons implémenter la recherche full-text sur les stories et commentaires.
3.4 Epic 4 - Estimation et Planning Poker
User Stories
US-040 : En tant que Scrum Master, je veux créer une session de Planning Poker pour un ensemble de stories à estimer.
US-041 : En tant que membre d'équipe, je veux rejoindre une session de Planning Poker et voter de manière anonyme.
US-042 : En tant que SM, je veux configurer l'échelle d'estimation (Fibonacci, T-shirt, heures) selon les préférences de l'équipe.
US-043 : En tant que participant, je veux voir les résultats révélés simultanément après que tous aient voté.
US-044 : En tant qu'équipe, nous voulons discuter via chat intégré pour converger vers un consensus d'estimation.
US-045 : En tant que PO, je veux consulter l'historique des sessions d'estimation pour analyser la fiabilité.
Technical Stories
TS-020 : En tant qu'équipe technique, nous devons implémenter WebSocket pour les sessions Planning Poker en temps réel.
TS-021 : En tant qu'équipe technique, nous devons assurer la persistance des votes et résultats d'estimation.
3.5 Epic 5 - Sprints et Releases
User Stories
US-050 : En tant que PO, je veux créer une Release avec nom, objectif, dates et roadmap pour planifier à moyen terme.
US-051 : En tant que SM, je veux créer un Sprint avec durée, dates début/fin et capacité équipe pour cadrer l'itération.
US-052 : En tant que PO, je veux définir un Sprint Goal clair et mesurable pour aligner l'équipe sur l'objectif.
US-053 : En tant que membre d'équipe, je veux sélectionner des stories du product backlog vers le sprint backlog lors du planning.
US-054 : En tant que développeur, je veux décomposer une User Story en tâches techniques pour faciliter l'exécution.
US-055 : En tant que membre d'équipe, je veux mettre à jour le statut des tâches et stories sur le board Kanban par drag \& drop.
US-056 : En tant que PO, je veux consulter le burndown chart du sprint en cours pour suivre la progression.
US-057 : En tant que SM, je veux clôturer un sprint et générer automatiquement le rapport de sprint (vélocité, reste à faire, etc.).
US-058 : En tant que PO, je veux reporter les stories non terminées vers le prochain sprint ou le backlog.
Technical Stories
TS-030 : En tant qu'équipe technique, nous devons calculer automatiquement la vélocité moyenne sur les derniers sprints.
TS-031 : En tant qu'équipe technique, nous devons générer les données pour burndown/burnup charts en temps réel.
TS-032 : En tant qu'équipe technique, nous devons implémenter les WIP limits configurables sur le board Kanban.
3.6 Epic 6 - Ceremonies Agile
User Stories
US-070 : En tant que SM, je veux organiser un Sprint Planning avec ordre du jour et participants pour structurer la cérémonie.
US-071 : En tant que membre d'équipe, je veux enregistrer mon daily stand-up (hier/aujourd'hui/blocages) pour partager ma progression.
US-072 : En tant que SM, je veux consulter l'historique des daily meetings pour identifier les patterns de blocage.
US-073 : En tant que PO, je veux organiser une Sprint Review avec démonstration des incréments et collecte de feedback.
US-074 : En tant que SM, je veux faciliter une rétrospective avec format configurable (Start/Stop/Continue, Mad/Sad/Glad, etc.).
US-075 : En tant qu'équipe, nous voulons définir des actions d'amélioration lors de la rétrospective et suivre leur réalisation.
US-076 : En tant que SM, je veux consulter l'historique des rétrospectives pour mesurer l'amélioration continue.
Technical Stories
TS-040 : En tant qu'équipe technique, nous devons implémenter les templates de ceremonies configurables.
TS-041 : En tant qu'équipe technique, nous devons stocker et versionner les notes de ceremonies pour traçabilité.
3.7 Epic 7 - Dashboard et Reporting
User Stories
US-080 : En tant que PO, je veux visualiser le dashboard produit avec métriques clés (vélocité, progression, qualité).
US-081 : En tant que membre d'équipe, je veux consulter le calendrier des événements équipe (sprints, ceremonies, congés).
US-082 : En tant que PO, je veux exporter les rapports (sprint, release, vélocité) au format PDF/Excel pour partage externe.
US-083 : En tant que stakeholder, je veux accéder à un dashboard public (avec permissions) pour suivre l'avancement sans se connecter.
US-084 : En tant que membre d'équipe, je veux configurer mes préférences de widgets sur mon dashboard personnel.
Technical Stories
TS-050 : En tant qu'équipe technique, nous devons implémenter le cache des métriques pour améliorer les performances du dashboard.
TS-051 : En tant qu'équipe technique, nous devons générer les rapports PDF via templating avec données en temps réel.
3.8 Epic 8 - Notifications et Collaboration
User Stories
US-090 : En tant qu'utilisateur, je veux recevoir des notifications en temps réel (assignation, mentions, changements) sur l'interface.
US-091 : En tant qu'utilisateur, je veux configurer mes préférences de notifications (email, push, in-app) par type d'événement.
US-092 : En tant que membre d'équipe, je veux mentionner (@) un collègue dans un commentaire pour attirer son attention.
US-093 : En tant que membre d'équipe, je veux suivre (watch) une story pour être notifié de ses changements.
Technical Stories
TS-060 : En tant qu'équipe technique, nous devons implémenter le système de notifications avec WebSocket pour temps réel.
TS-061 : En tant qu'équipe technique, nous devons configurer l'envoi d'emails transactionnels via service externe (SendGrid, SES).
3.9 Epic 9 - Intégrations Externes (Compléments)
User Stories
US-100 : En tant que développeur, je veux synchroniser les commits Git avec les stories pour tracer le code produit.
US-101 : En tant que PO, je veux importer/exporter le backlog au format CSV/JSON pour migration ou backup.
US-102 : En tant qu'administrateur, je veux configurer l'intégration Slack pour notifications équipe.
US-103 : En tant que développeur, je veux créer des webhooks sortants pour intégration avec outils externes.
Technical Stories
TS-070 : En tant qu'équipe technique, nous devons implémenter l'API REST publique documentée avec OpenAPI/Swagger.
TS-071 : En tant qu'équipe technique, nous devons sécuriser les webhooks avec validation de signature.
3.10 Epic 10 - DevOps, Monitoring et Maintenance (Compléments)
Technical Stories
TS-080 : En tant que DevOps, nous devons configurer les pipelines GitLab CI/CD avec stages (lint, build, test, deploy).
TS-081 : En tant que DevOps, nous devons conteneuriser l'application avec Docker Compose pour environnements de dev/prod.
TS-082 : En tant que DevOps, nous devons configurer Prometheus pour collecter les métriques applicatives et système.
TS-083 : En tant que DevOps, nous devons créer des dashboards Grafana avec alerting pour supervision 24/7.
TS-084 : En tant que DevOps, nous devons implémenter la stratégie de sauvegarde automatisée quotidienne avec tests de restauration.
TS-085 : En tant que DevOps, nous devons configurer l'ELK Stack pour centralisation et analyse des logs.
TS-086 : En tant que DevOps, nous devons implémenter le blue/green deployment pour le frontend et rolling pour le backend.
TS-087 : En tant qu'équipe technique, nous devons atteindre 80% de couverture de tests (unitaires + intégration).
TS-088 : En tant qu'équipe technique, nous devons mettre en place TestContainers pour tests d'intégration avec PostgreSQL.
3.11 Epic 11 - Accessibilité et UX (Compléments)
User Stories
US-110 : En tant qu'utilisateur en situation de handicap, je veux naviguer l'application au clavier pour l'accessibilité.
US-111 : En tant qu'utilisateur, je veux basculer entre thème clair/sombre pour confort visuel.
US-112 : En tant qu'utilisateur mobile, je veux accéder aux fonctionnalités essentielles en mode responsive.
US-113 : En tant que nouvel utilisateur, je veux suivre un onboarding guidé pour découvrir l'application.
Technical Stories
TS-090 : En tant qu'équipe technique, nous devons garantir la conformité WCAG 2.1 AA pour accessibilité.
TS-091 : En tant qu'équipe technique, nous devons optimiser les performances frontend (temps de chargement < 3s).
4. Cycle de Vie, Mise en Production et Maintenance
4.1 Cycle de Vie Agile du Développement
- Planification (Inception)
- Rédaction du product backlog initial
- Priorisation des Epics et Features
- Définition de la roadmap et des releases
- Constitution de l'équipe et attribution des rôles.
- Développement Itératif (Construction)
- Sprints de 2-3 semaines
- Découpage des stories en tâches
- Développement, tests, code review
- Intégration continue via GitLab CI/CD
- Démonstration en Sprint Review.
- Lancement (Transition)
- Déploiement en environnement de staging
- Tests d'acceptation utilisateur (UAT)
- Migration des données si nécessaire
- Déploiement en production (blue/green, rolling)
- Monitoring intensif post-déploiement.
- Production (Exploitation)
- Surveillance continue (Prometheus, Grafana, ELK)
- Recueil des feedbacks utilisateurs
- Hotfixes en cas d'incidents critiques
- Mises à jour de sécurité.
- Amélioration Continue (Évolution)
- Analyse des métriques d'usage
- Priorisation des évolutions et nouvelles features
- Rétrospectives d'amélioration process
- Refactoring et réduction dette technique.
4.2 Stratégie de Déploiement
- Frontend (Angular)
- Blue/Green Deployment : deux environnements identiques, bascule instantanée
- Zero-downtime
- Rollback immédiat en cas de problème
- Backend (Spring Boot)
- Rolling Deployment : mise à jour progressive des instances
- Health checks avant bascule de trafic
- Stratégie de rollback automatisée
- Base de données
- Migrations Flyway versionnées et testées
- Stratégie backward-compatible (additive changes)
- Backup avant chaque migration majeure.
4.3 Supervision et Monitoring
- Métriques applicatives (promtail + loki + Grafana)
- Temps de réponse API
- Taux d'erreur (4xx, 5xx)
- Throughput (requêtes/sec)
- Nombre d'utilisateurs actifs
- Vélocité des sprints (métrique métier)
4.4 Sauvegardes et Reprise
- Sauvegardes quotidiennes automatisées (PostgreSQL + fichiers)
- Rétention 30 jours minimum
- Tests de restauration mensuels
- Documentation des procédures de rollback
5. Planification et Priorisation du Backlog
5.1 Méthodologie de Priorisation
Pour garantir un développement efficace et structuré, nous utilisons une approche combinée de priorisation:[^2][^3][^1]
- MoSCoW (Must have, Should have, Could have, Won't have)
- Dépendances techniques (Technical Debt Priority)
- Valeur métier (Business Value vs Effort)
5.2 Releases et Sprints Planifiés
Release 0 - Infrastructure et Fondations (Sprints 0-2)
Objectif: Mettre en place l'environnement technique et les fondations applicatives
Sprint 0 (2 semaines) - Setup Infrastructure
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-100 | TS | Configuration Spring Boot | Must-Have | 5 | - |
| TS-101 | TS | Configuration Angular 17 | Must-Have | 5 | - |
| TS-102 | TS | Docker Compose local | Must-Have | 8 | TS-100, TS-101 |
| TS-103 | TS | Migrations Flyway initiales | Must-Have | 5 | TS-100 |
| TS-104 | TS | GitLab CI/CD Pipeline | Must-Have | 8 | TS-100, TS-101 |
Total Sprint 0: 31 points
Sprint 1 (2 semaines) - Authentification et Sécurité
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-001 | TS | Authentification JWT | Must-Have | 13 | TS-103 |
| TS-002 | TS | Spring Security RBAC | Must-Have | 8 | TS-001 |
| TS-004 | TS | Chiffrement données sensibles | Must-Have | 5 | TS-001 |
| US-005 | US | Connexion email/OAuth2 | Must-Have | 8 | TS-001, TS-002 |
| US-006 | US | Réinitialisation mot de passe | Should-Have | 5 | TS-001 |
Total Sprint 1: 39 points
Sprint 2 (2 semaines) - Administration Utilisateurs
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-001 | US | Création compte utilisateur | Must-Have | 5 | US-005 |
| US-002 | US | Modification utilisateur | Must-Have | 3 | US-001 |
| US-003 | US | Désactivation compte | Must-Have | 3 | US-001 |
| US-004 | US | Mise à jour profil | Must-Have | 5 | US-005 |
| US-007 | US | Logs d'audit | Should-Have | 5 | US-001 |
| US-008 | US | MFA (2FA) | Could-Have | 8 | US-005 |
| TS-105 | TS | Prometheus/Grafana setup | Should-Have | 8 | TS-104 |
Total Sprint 2: 37 points
Release 1 - MVP Gestion Produit et Backlog (Sprints 3-6)
Objectif: Livrer les fonctionnalités core de gestion de produit agile
Sprint 3 (2 semaines) - Gestion Produit
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-010 | US | Création produit agile | Must-Have | 5 | US-001 |
| US-011 | US | Constitution équipe | Must-Have | 5 | US-010 |
| US-012 | US | Modification équipe | Must-Have | 3 | US-011 |
| US-013 | US | Liste produits affectés | Must-Have | 3 | US-010 |
| US-014 | US | Archivage produit | Should-Have | 3 | US-010 |
| TS-010 | TS | Hiérarchie Epic>Feature>Story | Must-Have | 13 | US-010 |
Total Sprint 3: 32 points
Sprint 4 (2 semaines) - Backlog Management (Partie 1)
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-020 | US | Création Epic | Must-Have | 5 | TS-010 |
| US-021 | US | Création Feature | Must-Have | 5 | US-020 |
| US-022 | US | Création User Story | Must-Have | 5 | US-021 |
| US-023 | US | Création Technical Story | Must-Have | 5 | US-021 |
| US-024 | US | Critères d'acceptation | Must-Have | 3 | US-022 |
| US-025 | US | Priorisation drag \& drop | Should-Have | 8 | US-020 |
| TS-011 | TS | Optimisation SQL/pagination | Should-Have | 8 | TS-010 |
Total Sprint 4: 39 points
Sprint 5 (2 semaines) - Backlog Management (Partie 2)
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-026 | US | Vues multiples backlog | Must-Have | 8 | US-020 |
| US-027 | US | Commentaires et PJ | Must-Have | 5 | US-022 |
| US-028 | US | Filtrage et recherche | Must-Have | 8 | US-020 |
| US-029 | US | Création Defects | Must-Have | 5 | US-020 |
| US-030 | US | Création Spikes | Should-Have | 5 | US-020 |
| TS-012 | TS | Recherche full-text | Should-Have | 8 | US-028 |
Total Sprint 5: 39 points
Sprint 6 (2 semaines) - Planning Poker
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-020 | TS | WebSocket temps réel | Must-Have | 13 | TS-001 |
| US-040 | US | Création session Planning Poker | Must-Have | 8 | TS-020 |
| US-041 | US | Vote anonyme | Must-Have | 5 | US-040 |
| US-042 | US | Configuration échelles | Should-Have | 3 | US-040 |
| US-043 | US | Révélation simultanée | Must-Have | 5 | US-041 |
| US-044 | US | Chat intégré | Should-Have | 5 | US-040 |
| US-045 | US | Historique sessions | Should-Have | 3 | US-040 |
Total Sprint 6: 42 points
Release 2 - Sprints et Cérémonies (Sprints 7-10)
Objectif: Gestion complète des sprints et ceremonies agiles
Sprint 7 (2 semaines) - Sprint Management
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-050 | US | Création Release | Must-Have | 5 | US-010 |
| US-051 | US | Création Sprint | Must-Have | 8 | US-050 |
| US-052 | US | Définition Sprint Goal | Must-Have | 3 | US-051 |
| US-053 | US | Sélection stories sprint backlog | Must-Have | 8 | US-051 |
| US-054 | US | Décomposition en tâches | Must-Have | 5 | US-053 |
| TS-030 | TS | Calcul vélocité auto | Should-Have | 5 | US-051 |
| TS-031 | TS | Génération burndown/burnup | Should-Have | 8 | US-051 |
Total Sprint 7: 42 points
Sprint 8 (2 semaines) - Board Kanban et Suivi
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-055 | US | Board Kanban drag \& drop | Must-Have | 13 | US-053 |
| US-056 | US | Burndown chart | Must-Have | 8 | TS-031 |
| US-057 | US | Clôture sprint et rapport | Must-Have | 8 | US-051 |
| US-058 | US | Report stories non terminées | Must-Have | 5 | US-057 |
| TS-032 | TS | WIP limits configurables | Should-Have | 5 | US-055 |
Total Sprint 8: 39 points
Sprint 9 (2 semaines) - Cérémonies Agile
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-070 | US | Organisation Sprint Planning | Must-Have | 5 | US-051 |
| US-071 | US | Daily stand-up | Must-Have | 5 | US-051 |
| US-072 | US | Historique dailies | Should-Have | 3 | US-071 |
| US-073 | US | Sprint Review | Must-Have | 5 | US-057 |
| US-074 | US | Rétrospective | Must-Have | 8 | US-057 |
| US-075 | US | Actions d'amélioration | Should-Have | 5 | US-074 |
| US-076 | US | Historique rétrospectives | Should-Have | 3 | US-074 |
| TS-040 | TS | Templates ceremonies | Should-Have | 5 | US-070 |
Total Sprint 9: 39 points
Sprint 10 (2 semaines) - Dashboard et Reporting
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| US-080 | US | Dashboard produit | Must-Have | 8 | US-050 |
| US-081 | US | Calendrier événements | Must-Have | 5 | US-077 |
| US-082 | US | Export rapports PDF/Excel | Must-Have | 8 | US-057 |
| US-077 | US | Synchro calendrier agile | Should-Have | 5 | US-070 |
| TS-050 | TS | Cache métriques dashboard | Should-Have | 5 | US-080 |
| TS-051 | TS | Génération PDF templating | Should-Have | 8 | US-082 |
Total Sprint 10: 39 points
Release 3 - Collaboration et Intégrations (Sprints 11-13)
Objectif: Fonctionnalités avancées de collaboration et intégrations externes
Sprint 11 (2 semaines) - Notifications et Collaboration
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-060 | TS | Système notifications WebSocket | Must-Have | 8 | TS-020 |
| US-090 | US | Notifications temps réel | Must-Have | 5 | TS-060 |
| US-091 | US | Préférences notifications | Must-Have | 5 | US-090 |
| US-092 | US | Mentions (@) commentaires | Must-Have | 3 | US-027 |
| US-093 | US | Suivi (watch) story | Should-Have | 3 | US-090 |
| TS-061 | TS | Emails transactionnels | Should-Have | 5 | US-090 |
| US-083 | US | Dashboard public stakeholders | Could-Have | 5 | US-080 |
| US-084 | US | Widgets dashboard personnel | Could-Have | 5 | US-080 |
Total Sprint 11: 39 points
Sprint 12 (2 semaines) - Intégrations Externes
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-070 | TS | API REST publique OpenAPI | Must-Have | 8 | TS-001 |
| US-100 | US | Synchro commits Git | Must-Have | 8 | TS-070 |
| US-101 | US | Import/export backlog CSV | Should-Have | 5 | US-020 |
| US-102 | US | Intégration Slack | Should-Have | 5 | TS-070 |
| US-103 | US | Webhooks sortants | Should-Have | 5 | TS-070 |
| TS-071 | TS | Sécurisation webhooks | Should-Have | 5 | US-103 |
Total Sprint 12: 36 points
Sprint 13 (2 semaines) - Accessibilité et UX
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-090 | TS | Conformité WCAG 2.1 AA | Must-Have | 8 | TS-101 |
| US-110 | US | Navigation clavier | Must-Have | 5 | TS-090 |
| US-111 | US | Thème clair/sombre | Must-Have | 5 | TS-101 |
| US-112 | US | Responsive mobile | Must-Have | 8 | TS-101 |
| US-113 | US | Onboarding interactif | Should-Have | 5 | US-005 |
| TS-091 | TS | Optimisation performances <3s | Should-Have | 8 | TS-101 |
Total Sprint 13: 39 points
Release 4 - DevOps et Production (Sprints 14-15)
Objectif: Finalisation DevOps, monitoring et mise en production
Sprint 14 (2 semaines) - Monitoring et Observabilité
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-082 | TS | Prometheus métriques | Must-Have | 5 | TS-105 |
| TS-083 | TS | Dashboards Grafana alerting | Must-Have | 8 | TS-082 |
| TS-084 | TS | Sauvegarde automatisée | Must-Have | 8 | TS-103 |
| TS-085 | TS | ELK Stack logs | Should-Have | 8 | TS-082 |
| TS-086 | TS | Blue/green \& rolling deployment | Must-Have | 8 | TS-104 |
Total Sprint 14: 37 points
Sprint 15 (2 semaines) - Qualité et Tests
| ID | Type | Titre | Priorité | Points | Dépendances |
|---|---|---|---|---|---|
| TS-087 | TS | Couverture tests 80% | Must-Have | 13 | TS-100 |
| TS-088 | TS | TestContainers intégration | Must-Have | 8 | TS-087 |
| TS-080 | TS | Finalisation CI/CD pipelines | Must-Have | 5 | TS-104 |
| TS-081 | TS | Conteneurisation production | Must-Have | 8 | TS-102 |
Total Sprint 15: 34 points
5.3 Synthèse de la Planification
| Release | Sprints | Durée | Stories | Points Total | Objectif Principal |
|---|---|---|---|---|---|
| Release 0 | 0-2 | 6 sem | 11 US + 10 TS | 107 | Infrastructure \& Auth |
| Release 1 | 3-6 | 8 sem | 24 US + 5 TS | 152 | MVP Backlog \& Planning |
| Release 2 | 7-10 | 8 sem | 20 US + 6 TS | 159 | Sprints \& Cérémonies |
| Release 3 | 11-13 | 6 sem | 16 US + 4 TS | 114 | Collaboration \& Intégrations |
| Release 4 | 14-15 | 4 sem | 0 US + 8 TS | 71 | DevOps \& Production |
Total: 15 sprints (30 semaines) | 71 US + 33 TS = 104 stories | 603 points