# 📋 Backlog Phase 2 - P'titsPas **Version** : 1.0 **Date** : 25 Novembre 2025 **Auteur** : Équipe PtitsPas --- ## 🎯 Objectif de ce document Ce document liste toutes les **fonctionnalités reportées en Phase 2**. Ces fonctionnalités ne sont pas bloquantes pour le MVP (Phase 1), mais apportent de la valeur ajoutée pour la production intensive. --- ## 📊 Vue d'ensemble | Catégorie | Nombre de tickets | Estimation | |-----------|-------------------|------------| | **RGPD avancé** | 3 tickets | ~8h | | **Monitoring avancé** | 2 tickets | ~6h | | **Statistiques & Reporting** | 4 tickets | ~16h | | **Sauvegarde & Restauration** | 2 tickets | ~6h | | **Documentation utilisateur** | 3 tickets | ~12h | | **Améliorations UX** | 3 tickets | ~10h | | **TOTAL** | **17 tickets** | **~58h** | --- ## 🔒 RGPD avancé ### Ticket P2-01 : [Backend] API Suppression compte (soft delete) **Estimation** : 3h **Labels** : `backend`, `phase-2`, `rgpd` **Description** : Implémenter le droit à l'oubli (RGPD Article 17) avec suppression logique des comptes. **Tâches** : - [ ] Endpoint `DELETE /api/v1/users/:id` (soft delete) - [ ] Ajout champ `supprime_le` TIMESTAMPTZ dans `utilisateurs` - [ ] Anonymisation données personnelles (email, téléphone, adresse) - [ ] Conservation données légales (acceptations CGU) - [ ] Guards (super_admin only) - [ ] Tests unitaires **Justification report Phase 2** : - Peu de demandes en phase test - Suppression manuelle possible en attendant --- ### Ticket P2-02 : [Backend] API Export données personnelles (RGPD) **Estimation** : 3h **Labels** : `backend`, `phase-2`, `rgpd` **Description** : Implémenter le droit à la portabilité (RGPD Article 20) avec export JSON des données personnelles. **Tâches** : - [ ] Endpoint `GET /api/v1/users/:id/export` (JSON) - [ ] Export données utilisateur + enfants + acceptations - [ ] Format JSON structuré - [ ] Guards (utilisateur lui-même ou admin) - [ ] Tests unitaires **Justification report Phase 2** : - Export manuel SQL possible en phase test - Peu de demandes attendues --- ### Ticket P2-03 : [Backend] Cron anonymisation comptes inactifs **Estimation** : 2h **Labels** : `backend`, `phase-2`, `rgpd`, `cron` **Description** : Anonymiser automatiquement les comptes inactifs après X mois (configurable). **Tâches** : - [ ] Cron job quotidien - [ ] Détection comptes inactifs (dernière connexion > X mois) - [ ] Anonymisation automatique - [ ] Notification admin - [ ] Configuration durée inactivité (table `configuration`) - [ ] Tests **Justification report Phase 2** : - Pas de comptes inactifs en phase test - Peut être fait manuellement --- ## 📊 Monitoring avancé ### Ticket P2-04 : [Backend] API Métriques système **Estimation** : 3h **Labels** : `backend`, `phase-2`, `monitoring` **Description** : Exposer des métriques système (CPU, RAM, disque, BDD) pour monitoring. **Tâches** : - [ ] Endpoint `GET /api/v1/metrics` (super_admin only) - [ ] Métriques système (CPU, RAM, disque) - [ ] Métriques BDD (connexions, taille, requêtes lentes) - [ ] Métriques application (requêtes/s, temps réponse) - [ ] Format Prometheus (optionnel) - [ ] Tests **Justification report Phase 2** : - Pas critique pour MVP - Logs suffisent pour debugging initial --- ### Ticket P2-05 : [Frontend] Dashboard Monitoring **Estimation** : 3h **Labels** : `frontend`, `phase-2`, `monitoring`, `admin` **Description** : Créer un dashboard de monitoring pour le super admin. **Tâches** : - [ ] Page `/admin/monitoring` (super_admin only) - [ ] Graphiques temps réel (CPU, RAM, disque) - [ ] Alertes (seuils configurables) - [ ] Historique métriques (7 jours) **Justification report Phase 2** : - Pas critique pour MVP - Monitoring serveur possible via outils système --- ## 📈 Statistiques & Reporting ### Ticket P2-06 : [Backend] API Statistiques dashboard **Estimation** : 4h **Labels** : `backend`, `phase-2`, `statistiques` **Description** : Créer les endpoints pour récupérer les statistiques de l'application. **Tâches** : - [ ] Endpoint `GET /api/v1/stats/overview` - [ ] Statistiques globales (comptes, enfants, AM, validations) - [ ] Statistiques temporelles (inscriptions par mois, validations par semaine) - [ ] Statistiques géographiques (par ville) - [ ] Cache (rafraîchissement toutes les heures) - [ ] Tests **Justification report Phase 2** : - Pas de données = pas de statistiques - Nécessite application en production --- ### Ticket P2-07 : [Frontend] Widgets statistiques dashboard **Estimation** : 4h **Labels** : `frontend`, `phase-2`, `statistiques`, `gestionnaire` **Description** : Afficher les statistiques dans le dashboard gestionnaire. **Tâches** : - [ ] Widget "Comptes en attente" (nombre) - [ ] Widget "Comptes validés ce mois" (graphique) - [ ] Widget "Enfants inscrits" (nombre) - [ ] Widget "AM disponibles" (nombre) - [ ] Graphique évolution inscriptions (6 derniers mois) **Justification report Phase 2** : - Besoin d'utilisateurs réels pour avoir des données - Fonctionnalité importante pour vente, mais pas bloquante pour MVP --- ### Ticket P2-08 : [Backend] API Export rapports (CSV/PDF) **Estimation** : 4h **Labels** : `backend`, `phase-2`, `reporting` **Description** : Permettre l'export de rapports pour les gestionnaires. **Tâches** : - [ ] Endpoint `GET /api/v1/reports/users` (CSV) - [ ] Endpoint `GET /api/v1/reports/validations` (CSV) - [ ] Endpoint `GET /api/v1/reports/summary` (PDF) - [ ] Génération PDF (librairie PDFKit) - [ ] Filtres (date, statut, rôle) - [ ] Tests **Justification report Phase 2** : - Export manuel SQL possible en phase test - Nécessite données réelles --- ### Ticket P2-09 : [Frontend] Écran Rapports **Estimation** : 4h **Labels** : `frontend`, `phase-2`, `reporting`, `gestionnaire` **Description** : Créer un écran de génération de rapports pour les gestionnaires. **Tâches** : - [ ] Page `/admin/rapports` (gestionnaire/admin) - [ ] Sélection type de rapport (utilisateurs, validations, synthèse) - [ ] Filtres (date, statut, rôle) - [ ] Prévisualisation - [ ] Téléchargement (CSV/PDF) **Justification report Phase 2** : - Pas prioritaire pour MVP - Nécessite données réelles --- ## 💾 Sauvegarde & Restauration ### Ticket P2-10 : [Infra] Script backup PostgreSQL automatique **Estimation** : 3h **Labels** : `infra`, `phase-2`, `backup` **Description** : Créer un script de sauvegarde automatique de la base de données. **Tâches** : - [ ] Script `backup.sh` avec `pg_dump` - [ ] Compression (gzip) - [ ] Rotation (garder 30 derniers jours) - [ ] Cron job quotidien (3h du matin) - [ ] Notification email en cas d'échec - [ ] Tests restauration **Justification report Phase 2** : - Pas bloquant pour développement - Backup manuel possible en phase test - À faire avant mise en production --- ### Ticket P2-11 : [Doc] Guide sauvegarde & restauration **Estimation** : 3h **Labels** : `documentation`, `phase-2`, `backup` **Description** : Documenter les procédures de sauvegarde et restauration pour les admins sys. **Tâches** : - [ ] Procédure sauvegarde manuelle - [ ] Procédure restauration - [ ] Configuration cron - [ ] Troubleshooting - [ ] Exemples de commandes - [ ] Checklist pré-restauration **Justification report Phase 2** : - Documentation technique, pas bloquante pour MVP - À faire avant mise en production --- ## 📚 Documentation utilisateur ### Ticket P2-12 : [Doc] Guide utilisateur Gestionnaire **Estimation** : 4h **Labels** : `documentation`, `phase-2`, `formation` **Description** : Rédiger le guide utilisateur pour les gestionnaires. **Tâches** : - [ ] Connexion et première utilisation - [ ] Consultation des demandes - [ ] Validation/Refus de comptes - [ ] Gestion des paramètres - [ ] FAQ gestionnaire - [ ] Captures d'écran **Justification report Phase 2** : - Formation présentiel prioritaire pour premiers utilisateurs - Documentation nécessaire pour scalabilité --- ### Ticket P2-13 : [Doc] Guide utilisateur Parent/AM **Estimation** : 4h **Labels** : `documentation`, `phase-2`, `formation` **Description** : Rédiger le guide utilisateur pour les parents et assistantes maternelles. **Tâches** : - [ ] Inscription étape par étape - [ ] Création du mot de passe - [ ] Connexion - [ ] Utilisation de l'application - [ ] FAQ parent/AM - [ ] Captures d'écran **Justification report Phase 2** : - Formation présentiel prioritaire - Documentation nécessaire pour scalabilité --- ### Ticket P2-14 : [Doc] Vidéos tutoriels **Estimation** : 4h **Labels** : `documentation`, `phase-2`, `formation`, `video` **Description** : Créer des vidéos tutoriels pour les utilisateurs. **Tâches** : - [ ] Vidéo "Inscription parent" (3-5 min) - [ ] Vidéo "Inscription AM" (3-5 min) - [ ] Vidéo "Validation comptes gestionnaire" (3-5 min) - [ ] Vidéo "Configuration initiale admin" (5-7 min) - [ ] Hébergement (YouTube privé ou serveur) **Justification report Phase 2** : - Pas bloquant pour MVP - Utile pour scalabilité et autonomie utilisateurs --- ## 🎨 Améliorations UX ### Ticket P2-15 : [Frontend] Mode sombre **Estimation** : 3h **Labels** : `frontend`, `phase-2`, `ux` **Description** : Ajouter un mode sombre à l'application. **Tâches** : - [ ] Thème sombre (couleurs, contrastes) - [ ] Toggle mode clair/sombre - [ ] Sauvegarde préférence utilisateur - [ ] Adaptation tous les écrans **Justification report Phase 2** : - Nice-to-have, pas bloquant - Améliore confort utilisateur --- ### Ticket P2-16 : [Frontend] Notifications push (optionnel) **Estimation** : 4h **Labels** : `frontend`, `phase-2`, `ux`, `notifications` **Description** : Ajouter des notifications push pour les événements importants. **Tâches** : - [ ] Service Worker (PWA) - [ ] Notification "Compte validé" - [ ] Notification "Nouveau message" (si messagerie) - [ ] Gestion permissions - [ ] Paramètres notifications **Justification report Phase 2** : - Nice-to-have, pas bloquant - Nécessite PWA ou app mobile --- ### Ticket P2-17 : [Frontend] Accessibilité (WCAG 2.1) **Estimation** : 3h **Labels** : `frontend`, `phase-2`, `ux`, `a11y` **Description** : Améliorer l'accessibilité de l'application (conformité WCAG 2.1). **Tâches** : - [ ] Audit accessibilité (Lighthouse, axe) - [ ] Correction contrastes - [ ] Attributs ARIA - [ ] Navigation clavier - [ ] Lecteur d'écran (test) **Justification report Phase 2** : - Amélioration continue - Pas bloquant pour MVP - Important pour collectivités (obligation légale) --- ## 📋 Priorisation Phase 2 ### Priorité Haute (à faire en premier) 1. **Sauvegarde & Restauration** (Tickets P2-10, P2-11) → Avant mise en production 2. **Statistiques** (Tickets P2-06, P2-07) → Argument de vente 3. **Documentation utilisateur** (Tickets P2-12, P2-13) → Scalabilité ### Priorité Moyenne 4. **RGPD avancé** (Tickets P2-01, P2-02, P2-03) → Conformité 5. **Reporting** (Tickets P2-08, P2-09) → Utile pour gestionnaires ### Priorité Basse 6. **Monitoring avancé** (Tickets P2-04, P2-05) → Nice-to-have 7. **Améliorations UX** (Tickets P2-15, P2-16, P2-17) → Confort --- ## 🚀 Critères de passage en Phase 2 La Phase 2 peut commencer quand : - ✅ Phase 1 terminée (61 tickets) - ✅ Application déployée en production (au moins 1 collectivité) - ✅ Utilisateurs réels (au moins 10 comptes validés) - ✅ Feedback terrain collecté - ✅ Bugs critiques corrigés --- ## 📊 Estimation globale Phase 2 **Total** : 17 tickets **Estimation** : ~58h de développement **Planning suggéré** : - Sprint 1 (2 semaines) : Sauvegarde + Statistiques (26h) - Sprint 2 (2 semaines) : Documentation + RGPD (24h) - Sprint 3 (1 semaine) : Reporting + Améliorations UX (8h) --- **Dernière mise à jour** : 25 Novembre 2025 **Version** : 1.0 **Statut** : ✅ Backlog Phase 2 défini