====== Sprint 10 — Reporting & Business Intelligence ====== ===== Objectif du Sprint ===== Mettre en œuvre une couche décisionnelle complète permettant aux dirigeants, responsables d'agence, gestionnaires et commerciaux de piloter l'activité en temps réel. À l'issue du Sprint 10 : * Les indicateurs clés sont consolidés * Les tableaux de bord sont personnalisables * Les performances commerciales sont mesurées * Les performances locatives sont analysées * Les revenus sont prévisionnels * Les exports décisionnels sont disponibles * Les propriétaires disposent de statistiques avancées Ce sprint clôture la première phase de maturité fonctionnelle de la plateforme. ---- ====== Périmètre ====== ===== Modules concernés ===== ReportingModule DashboardModule AnalyticsModule ExportsModule ForecastModule KpiModule ---- ====== Architecture décisionnelle ====== PostgreSQL ↓ Reporting Views ↓ Analytics Engine ↓ Dashboards ↓ Exports ---- ====== Workflow métier ====== Collecte données ↓ Agrégation ↓ Calcul KPI ↓ Visualisation ↓ Export ---- ====== User Stories ====== ===== US-1001 : Consulter le tableau de bord général ===== **En tant que directeur d'agence** Je souhaite disposer d'une vue synthétique Afin de piloter mon activité. ---- ===== Endpoint ===== GET /reporting/dashboard ---- ===== KPI affichés ===== CA du mois CA annuel Réservations Occupation Contrats signés Paiements encaissés ---- ====== US-1002 : Consulter les revenus ====== ===== Endpoint ===== GET /reporting/revenues ---- ===== Analyses ===== Mensuelle Trimestrielle Annuelle Comparative N-1 ---- ====== US-1003 : Consulter les performances commerciales ====== ===== Endpoint ===== GET /reporting/sales ---- ===== KPI ===== Prospects Conversions Taux conversion CA commercial Réservations générées ---- ====== US-1004 : Consulter les performances des biens ====== ===== Endpoint ===== GET /reporting/properties ---- ===== Statistiques ===== Occupation CA Nombre réservations Prix moyen Durée moyenne séjour ---- ====== US-1005 : Consulter les performances propriétaires ====== ===== Endpoint ===== GET /reporting/owners ---- ===== KPI ===== Revenus Occupation Nombre biens Réservations ---- ====== US-1006 : Consulter les statistiques clients ====== ===== Endpoint ===== GET /reporting/customers ---- ===== KPI ===== Nouveaux clients Clients actifs Clients récurrents Panier moyen ---- ====== Occupation ====== ===== US-1007 : Calcul du taux d'occupation ===== ===== Formule ===== :contentReference[oaicite:0]{index=0} ---- ===== Endpoint ===== GET /reporting/occupancy ---- ====== Prévisions ====== ===== US-1008 : Prévisions de revenus ===== ===== Endpoint ===== GET /reporting/forecast ---- ===== Horizon ===== 30 jours 90 jours 12 mois ---- ===== Données utilisées ===== Réservations confirmées Saisonnalité Historique Occupation ---- ====== US-1009 : Prévisions d'occupation ===== ===== Objectif ===== Estimer les périodes de forte et faible activité. ---- ====== Exports ====== ===== US-1010 : Export Excel ===== ===== Endpoint ===== GET /reporting/export/excel ---- ===== Contenu ===== KPI Réservations Paiements Factures Propriétaires ---- ====== US-1011 : Export PDF ===== ===== Endpoint ===== GET /reporting/export/pdf ---- ===== Utilisation ===== Direction Comptabilité Propriétaires ---- ====== Tableaux de bord ====== ===== US-1012 : Dashboard Direction ===== ===== Widgets ===== CA Occupation Top Biens Top Propriétaires Top Clients Prévisions ---- ===== US-1013 : Dashboard Commercial ===== ===== Widgets ===== Prospects Conversions Pipeline Tâches Activités ---- ===== US-1014 : Dashboard Gestionnaire ===== ===== Widgets ===== Réservations Contrats Paiements Check-in Check-out ---- ====== Statistiques avancées ====== ===== US-1015 : Top biens ===== ===== Classement ===== CA Occupation Réservations ---- ===== US-1016 : Top clients ===== ===== Critères ===== Montant dépensé Nombre séjours Ancienneté ---- ===== US-1017 : Top propriétaires ===== ===== Critères ===== Revenus Occupation Nombre biens ---- ====== Modèle Prisma ====== ===== ReportingSnapshot ===== model ReportingSnapshot { id String @id @default(uuid()) snapshotDate DateTime revenue Decimal occupancyRate Decimal reservationCount Int } ---- ===== KpiSnapshot ===== model KpiSnapshot { id String @id @default(uuid()) metric String value Decimal period String calculatedAt DateTime } ---- ====== Vues SQL ====== ===== Revenue View ===== CREATE VIEW reporting_revenue_summary AS SELECT year, month, SUM(total_amount) FROM reservations GROUP BY year, month; ---- ===== Occupancy View ===== CREATE VIEW reporting_occupancy_summary AS SELECT property_id, occupancy_rate FROM ... ---- ====== Architecture Backend ====== src/modules/reporting ├── dashboard │ ├── analytics │ ├── revenues │ ├── occupancy │ ├── forecasts │ ├── exports │ └── kpis ---- ====== Domain Services ====== DashboardService AnalyticsService RevenueService OccupancyService ForecastService ExportService ---- ====== Événements métier ====== ===== KpiCalculated ===== KpiCalculated ---- ===== ReportGenerated ===== ReportGenerated ---- ====== Swagger ====== ===== Tags ===== Reporting Analytics Forecasts Exports Dashboards ---- ===== Volume API ===== Environ : 25 endpoints ---- ====== Frontend ====== ===== Pages ===== /reports /reports/revenues /reports/occupancy /reports/properties /reports/owners /reports/customers /reports/forecast ---- ===== Composants ===== RevenueChart OccupancyChart KpiCard ForecastChart PropertyRanking OwnerRanking CustomerRanking ---- ====== Dashboard Direction ====== ===== KPI ===== CA Occupation Réservations Paiements Top Biens Prévisions ---- ====== Dashboard Commercial ====== ===== KPI ===== Prospects Conversions Pipeline Activités Objectifs ---- ====== Dashboard Gestion ====== ===== KPI ===== Réservations Contrats Paiements Arrivées Départs ---- ====== Tests ====== ===== Unitaires ===== RevenueService ForecastService OccupancyService AnalyticsService ---- ===== Intégration ===== Paiement ↓ Facture ↓ Agrégation ↓ Reporting ---- ===== E2E ===== Connexion ↓ Dashboard ↓ Analyse revenus ↓ Export Excel ↓ Export PDF ---- ====== Définition de terminé ====== Le Sprint 10 est terminé lorsque : * Dashboards opérationnels * KPI opérationnels * Reporting financier opérationnel * Reporting commercial opérationnel * Reporting occupation opérationnel * Prévisions opérationnelles * Exports opérationnels * Swagger à jour * Tests verts * CI verte ---- ====== Livrables ====== * ReportingModule * DashboardModule * AnalyticsModule * ForecastModule * ExportsModule * KpiModule * DTO * Swagger * Tests * Migrations Prisma ---- ====== Démonstration Sprint ====== Scénario métier : 1. Consultation dashboard direction 2. Analyse revenus 3. Analyse occupation 4. Analyse performances biens 5. Analyse performances propriétaires 6. Prévisions 7. Export Excel 8. Export PDF ---- ====== Bilan Release 2.0 ====== À l'issue du Sprint 10, la plateforme dispose de : * Gestion utilisateurs * Catalogue immobilier * Réservations * Contrats électroniques * Paiements * Facturation * Extranet propriétaire * CRM * Communications * Reporting décisionnel La plateforme couvre désormais l'intégralité du cycle métier d'une agence de location professionnelle. ---- ====== Phase suivante ====== La roadmap entre maintenant dans la phase d'industrialisation avancée. ===== Sprint 11 — Administration & Paramétrage ===== Objectif : Permettre à chaque agence de configurer entièrement son environnement. Modules concernés : AdministrationModule AgencySettingsModule WorkflowModule CustomFieldsModule AuditModule FeatureFlagsModule Fonctionnalités : * Paramétrage agence * Paramétrage métier * Champs personnalisés * Audit complet * Journaux système * Feature Flags * Multi-agence avancé À l'issue du Sprint 11, la plateforme deviendra entièrement configurable sans intervention technique.