434 lines
12 KiB
Markdown
434 lines
12 KiB
Markdown
# 📋 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
|
|
|