User Stories ‐ Rejoindre une Réservation ‐ Emmanuel Narcisi - Tablify-Developement/Tablify-Web GitHub Wiki
🚀 Epic - Rejoindre une Réservation
🆔 Code : EPIC-3
Auteur : Narcisi Emmanuel
Priorité : Haute
Date de création : 20-02-2025
🔷 Description
En tant que client,
Je souhaite pouvoir rejoindre une réservation existante basée sur des centres d’intérêt communs,
Afin de rencontrer des personnes partageant les mêmes centres d’intérêt et optimiser l'utilisation des réservations ouvertes.
🔷 Fonctionnalités
- Affichage des réservations ouvertes
- Système de matching basé sur les centres d’intérêt
- Gestion des participants à une réservation
- Système de notation des centres d’intérêt
🚀 US009 - Affichage des Réservations Ouvertes
🆔 Code : US009
Auteur : Narcisi Emmanuel
Priorité : Moyenne
Date de création : 20-02-2025
🔷 Description
En tant que client,
Je souhaite voir une liste des réservations ouvertes,
Afin de pouvoir sélectionner une réservation correspondant à mes centres d’intérêt.
🔷 Valeur pour le client
Permet aux clients de découvrir des opportunités de réservation partagée et d’optimiser l’occupation des tables.
🔷 Critères d'acceptation
- Un écran affiche toutes les réservations ouvertes.
- Les réservations affichent la date, l'heure, le lieu et le nombre de places restantes.
🔷 Tâches Techniques
- Créer une interface listant les réservations ouvertes.
- Récupérer les données des réservations via une API.
- Mettre à jour l’affichage en temps réel en fonction des nouvelles réservations.
🔷 Prérequis techniques
- API :
GET /reservations/open
pour récupérer la liste des réservations ouvertes.
🚀 US010 - Système de Matching par Centres d’Intérêt
🆔 Code : US010
Auteur : Narcisi Emmanuel
Priorité : Haute
Date de création : 20-02-2025
🔷 Description
En tant que client,
Je souhaite voir en priorité les réservations correspondant à mes centres d’intérêt,
Afin de participer à une réservation avec des personnes partageant mes préférences.
🔷 Valeur pour le client
Améliore l’expérience utilisateur en proposant des réservations adaptées à leurs intérêts.
🔷 Critères d'acceptation
- Un algorithme filtre les réservations en fonction des centres d’intérêt du client.
- L’affichage des réservations est classé par pertinence.
🔷 Tâches Techniques
- Développer un algorithme de matching par centres d’intérêt.
- Mettre en place un système de pondération pour classer les réservations.
- Intégrer ce filtre dans l’interface utilisateur.
🔷 Prérequis techniques
- Base de données (PostgreSQL) : Stocker les centres d’intérêt des utilisateurs.
- API :
GET /reservations/match?userId={id}
pour récupérer les meilleures recommandations.
🚀 US011 - Gestion des Participants à une Réservation
🆔 Code : US011
Auteur : Narcisi Emmanuel
Priorité : Moyenne
Date de création : 20-02-2025
🔷 Description
En tant que client,
Je souhaite pouvoir voir les participants d’une réservation avant de la rejoindre,
Afin de savoir avec qui je vais partager mon repas.
🔷 Valeur pour le client
Permet aux clients de choisir une réservation en fonction des autres participants et d'éviter des situations inconfortables.
🔷 Critères d'acceptation
- Un bouton permet d'afficher la liste des participants à une réservation.
- Chaque participant est affiché avec son nom et ses centres d’intérêt.
🔷 Tâches Techniques
- Ajouter une section “Participants” dans les détails d’une réservation.
- Afficher les informations des participants récupérées via l’API.
- Permettre une mise à jour dynamique lorsque de nouveaux participants rejoignent.
🔷 Prérequis techniques
- API :
GET /reservations/{id}/participants
pour récupérer la liste des participants.
🚀 US012 - Système de Notation des Centres d’Intérêt
🆔 Code : US012
Auteur : Narcisi Emmanuel
Priorité : Moyenne
Date de création : 20-02-2025
🔷 Description
En tant que client,
Je souhaite pouvoir noter l’expérience d’une réservation en fonction des centres d’intérêt,
Afin de donner un retour sur la compatibilité des participants.
🔷 Valeur pour le client
Améliore la qualité du matching en affinant les recommandations pour les futurs utilisateurs.
🔷 Critères d'acceptation
- Un client peut attribuer une note entre 1 et 5 étoiles à une réservation.
- Les notes influencent le système de matching futur.
🔷 Tâches Techniques
- Implémenter un système de notation sur l’interface.
- Enregistrer les notes des utilisateurs dans la base de données.
- Ajuster l’algorithme de matching en fonction des notes reçues.
🔷 Prérequis techniques
- Base de données (PostgreSQL) : Stocker les évaluations des utilisateurs.
- API :
POST /reservations/{id}/rating
pour enregistrer une note.
📌 Récapitulatif des US créées
- US009 - Affichage des réservations ouvertes
- US010 - Système de matching par centres d’intérêt
- US011 - Gestion des participants à une réservation
- US012 - Système de notation des centres d’intérêt
🔥 Complexité estimée pour l’ensemble de l’Epic : Haute
Durée estimée : 10 jours
Ressources : Frontend (React, ShadCN), Backend (Node.js, PostgreSQL), Algorithme de matching