Us personelles - ZosiscoIV/Dev-Web-2024 GitHub Wiki
Résumé coaching 5.b
+ Chaque étudiant a bien décrit entièrement et soigneusement sa User story personnelle, comme attendu.
+ Chaque étudiant indique ici quelle est sa US personnelle et indique le lien pour pouvoir accéder à sa description.
Pour rappel, les US individuelles, à valider avec un coach, sont :
- spécifiques à votre projet (pas générique comme une page de login ou de changement de mot de passe par exemple)
- "intéressantes", c'est-à-dire qui fait intervenir des compétences pertinentes, avec backend et frontend
- pas trop courtes. (Même si en tant qu'US ce ne doit pas être trop gros.)
- décrites et implémentées par un seul étudiant, pour permettre de valider ses compétences
- relativement prioritaires, pour qu'elle soit réalisées tôt dans le projet
- pour lesquelles l'analyse et le testing seront particulièrement soignés
- pour lesquelles vous réaliserez une vidéo individuelle simple de présentation complète (max 10 min) (voir : https://github.com/EphecLLN/Dev-Web-2024/wiki/US-personelles-videos)
Pour rappel, une US analysée comporte :
- un nom correct (Le titre est sous forme "en tant que …, je souhaite… afin de…")
- un code unique, il faut pouvoir les TRIER PAR ORDRE DE PRIORITE toutes les US du projet, chacune avec un code ou numéro ou nom unique permettant d'ordonner.
- la valeur pour le client
- une description textuelle claire et complète, accompagnée de maquettes, définissant précisément la US, notamment son début et sa fin.
- les US sont bien découpées. Une US devrait porter sur un (et un seul) ajout fonctionnel utile au client. Idéalement une US devrait pouvoir être implémentée en une journée.
- la référence aux autres US liées, à faire avant ou après, est indiquée pour bien comprendre le contexte
- les critères d'acceptation clairs et complets, sous forme de scénario (voire de checklist), permettant de définir précisément si une US est bien implémentée, complètement (attention aux cas d'erreurs également)
Fournir également (probablement dans le gestionnaire de tâches) avant d'implémenter :
- une découpe en tâches techniques avec les infos nécessaires à l'implémentation, notamment les dépendances techniques de la US : prérequis, endpoints API, tables de la DB, librairies utilisées, ...
- la complexité/durée estimée, pour aider à planifier le développement et pour comparer par la suite avec l'effort réellement apporté
1. Liste des US personnelles par étudiant avec les liens pour y accéder
Ann-Lore Schoonyans
US-101- Lister les produits en stock
En tant que gérant, je veux voir la liste complète des produits disponibles, leur quantité actuelle, leur prix et leur statut (en stock/hors stock), afin de mieux gérer l’état de mon inventaire et d’anticiper les commandes.
Description :
Cette fonctionnalité affichera une liste des produits disponibles dans le stock avec leur nom, quantité actuelle, prix et statut. Un tri sera possible sur le nom et un filtre sur la catégorie ou le statut.
Critères d’acceptation :
- Une interface affiche tous les produits avec leur nom, quantité, prix et statut
- Les produits hors stock sont clairement signalés
- Possibilité de filtrer par catégorie ou statut
Priorité : Elevée
Taches techniques :
- Créer une base de données des produits (tables stock, produit, catégorie, taxe).
- Développer une interface d’affichage et de triage. EndPoints
- Lister les produits
- Endpoint: GET /api/products
- Description: obtenir la liste des produits dans le stock.
- Response: Détails de chaque produit (nom, prix, quantité, en stock ou pas).
- Status codes:
- 500 : Erreur avec la base de donnée.
- 404 : Aucun produit trouvé.
- Lister les catégories
- Endpoint : GET /api/categorie
- Description : obtenir la liste de toutes les catégories
- Response : identifiant et la catégorie associée
- Status codes :
- 500 : Erreur avec la base de donnée.
- 404 : Aucun produit trouvé.
Antoine Bontems
US-201 : Modifier la quantité d'un produit dans le panier
En tant qu'utilisateur, je veux modifier la quantité d'un produit dans mon panier pour ajuster ma commande.
- Description :
L'utilisateur doit pouvoir changer la quantité d’un article déjà présent dans le panier sans avoir à le supprimer puis le rajouter. - Critères d’acceptation :
- Chaque produit dans le panier affiche un champ de sélection ou un bouton pour modifier la quantité.
- En augmentant ou diminuant la quantité, le sous-total du produit est recalculé dynamiquement.
- Une validation empêche les quantités négatives ou supérieures au stock disponible.
- Le total général du panier est recalculé automatiquement.
- Priorité : Élevée
Tâches techniques :
- Vérifier que la quantité ne puisse pas être modifiée si le produit n'est pas disponible en stock en assez grande quantité
- Empêcher la quantité de passer en négatif
- Si la quantité atteint zéro, afficher un message de validation à l'utilisateur pour le retirer du panier ou le remettre à 1
Théo Cahuzac
US-301 : Rechercher un produits par son nom dans le but de gagner du temps
En tant que client, je souhaite pouvoir chercher des produits par nom avec une barre de recherche Valeur pour le client : recherche rapide des produits. Description :
- Lorsque l'utilisateur navigue sur notre site d'e-commerce il peut-être vite submerger d'information, une barre de recherche permet de cibler le/les * articles que l'utilisateur est susceptible de vouloir pour lui faire gagner du temps et rendre sa navigation dans le site plus simple et user-friendly.
- La recherche est disponible via une barre de recherche disponible en permanence dans l'en-tête donc accessible depuis "n'importe quelle page"
- Lorsque l'utilisateur tape un nom de produits, les produits correspondant s'affichent sur la page
Critères d’acceptation :
- Chaque produits doit pouvoir être retrouver à partir de son nom
- Afficher un message d'erreur si le nom ne correspond à aucun produits
- La liste est composé du nom du produit, de son prix
Tâches techniques : *Frontend :
- Ajouter une barre de recherche
- Afficher les produits filtré dans une liste
- Backend :
- Retourner les produits correspondant à la recherche
US-401 – Création d’un compte
Épic : Gestion des comptes
Importance : Haute
En tant que Utilisateur·ice final·e
Je veux créer un compte avec email et mot de passe
Afin de contrôler mon accès à la plateforme et mes données personnelles
Description
-
Formulaire d’inscription :
- Mot de passe
-
Validation client & serveur
Critères d’acceptation
- Email
- Unicité garantie (pas d’email en double).
- Mot de passe
- ≥ 8 caractères
- ≥ 1 majuscule et 1 chiffre
- Session
- Génération d’un JWT à l’inscription
- JWT renvoyé dans la réponse (ou via cookie sécurisé)
- UX
- Messages d’erreur clairs et contextualisés
- Possibilité future d’ajouter SSO / MFA
Tâches techniques
- API
POST /register
: hash du mot de passe & création user - Validation des données d’entrée
- Génération & configuration du JWT
- Tests unitaires & d’intégration