Énoncé officiel · Itération 2

L'espace membre

Une porte, un salon, des habitudes mémorisées

25 % de la session Semaines 5 à 7 + relâche Démo en semaine 7 Équipe de 3
← Accueil du cours ← Énoncé 1 Les 3 volets Le processus AGILE L'évaluation Les technologies Plan détaillé Énoncé 3 →

Le mandat

Votre boutique attire des habitués : il leur faut une porte. Cette itération construit le seuil (l'inscription et l'authentification), le salon (l'espace membre où chacun retrouve ses transactions et ses options) et l'entraide (une FAQ intégrée). Le site apprend à reconnaître ses visiteurs et à s'en souvenir.

À la fin de l'itération, un visiteur peut s'inscrire par un assistant pas à pas, se connecter de façon sécurisée, retrouver son historique d'achats, ajuster ses options, voir ses préférences mémorisées et consulter la FAQ. Aucun mot de passe n'existe en clair, nulle part.

L'espace membre est une partie privée : la page Les technologies vous laisse le choix du moteur, tant que chaque écran reste adressable par une URL sémantique.

Le déroulement en un dessin

SEMAINE 5 l'IA génère le dossier, l'équipe prototype, le client valide SEMAINES 5 À 7 · UN VOLET PAR COÉQUIPIER AUTH inscription, connexion, session MEMBRE profil, historique, préférences FAQ AIDE FAQ, tests et démo commune SEMAINE 7 LA DÉMO un membre de bout en bout, du seuil au salon git à chaque séance demo.votre-domaine promotion le vrai site en ligne NOUVEAUTÉ : LE STAGING on ne développe plus sur le vrai site demo reçoit, la production suit

Le dossier fonctionnel naît en semaine 5, trois volets construisent l'espace membre en parallèle, et tout converge vers la démo de la semaine 7. En dessous, la nouveauté : le travail passe par le staging demo.votre-domaine avant d'être promu sur le vrai site.

S5
Dossier fonctionnel et prototypes
S5 à S7
Les trois volets en parallèle
S7
Démo · 25 %
Relâche

La remise intermédiaire · Fin de la semaine 5

Comme à chaque itération, l'IA peut générer les dossiers fonctionnels et les prototypes HTML et CSS : ce sont des livrables quand même, versés dans GitHub, retravaillés et validés avant le code.

À la fin de la semaine 5, le dossier fonctionnel de l'espace membre est dans GitHub, les prototypes des pages membres sont en ligne et les preuves de concept fonctionnent. Pre-release TAG = ITERATION_2_FONCTIONNELLE.

Contenu de la remise intermédiaire

Les trois volets · Un par coéquipier

De la semaine 5 à la semaine 7, chaque coéquipier porte un volet. Les équipes de 2 doivent également couvrir les 3 volets. Les trois volets avancent en parallèle et convergent vers la démo commune de la semaine 7.

AUTH Le seuil · Authentification Semaines 5 à 7
  • Inscription en assistant pas à pas (wizard multi-étapes) avec validation à chaque étape
  • Mots de passe hachés avec password_hash, vérifiés avec password_verify : jamais de mot de passe en clair, ni dans la base, ni dans les journaux
  • Connexion, déconnexion et pages protégées par session
  • Messages d'erreur fonctionnels dans tous les formulaires
MEMBRE Le salon · Espace membre Semaines 5 à 7
  • Profil auto-éditable et options utilisateur
  • Historique des transactions du membre, branché sur la caisse de l'itération 1 : chaque achat laisse une trace visible dans le compte
  • Préférences mémorisées côté client (localStorage, cookies) : le site se souvient des habitudes
  • Chaque écran de l'espace membre a sa propre URL sémantique
AIDE L'entraide · FAQ · Démo Semaines 5 à 7
  • FAQ intégrée à l'espace membre : les questions des membres trouvent réponse une fois pour toutes
  • Tests de tout le site en ligne et finitions
  • Démonstration devant la classe : inscription, connexion, achat connecté, historique, options, FAQ
  • Release TAG = ITERATION_2_MEMBRE : l'évaluation se fait avec cette version du code en ligne
R La relâche
  • La boutique tourne toute seule en ligne pendant que l'équipe reprend son souffle : les grandes manoeuvres marketing s'en viennent

Les technologies

Les pages d'inscription et de connexion font partie du site public : PHP vanille. L'espace membre, derrière la connexion, est une partie privée : PHP vanille ou moteur au choix, comme le panneau admin. Dans tous les cas, URLs sémantiques et écrans adressables.
Voir la page Technologies
Nouveauté de l'itération : le staging demo.votre-domaine
La boutique a maintenant des membres : on ne développe plus directement sur le vrai site. L'équipe met en place un environnement de staging sur le sous-domaine demo de son adresse (exemple : demo.boutique.com). Le redéploiement horaire cible désormais le staging, et la production est promue après validation par l'équipe. Le client suit l'avancement sur demo, la démo d'itération se fait sur la production.

Exigences techniques de l'itération

Règle d'or : Le code de l'équipe doit OBLIGATOIREMENT respecter l'architecture simple, l'architecture cible officielle de cette itération. Son code est celui de la tag ARCHITECTURE_SIMPLE du dépôt projet-web-contrat, et sa version vivante est sur le hub des versions.

Interface & Standards Web

  • HTML sémantique avec id uniques et classes en français (l'exigence de l'itération 1 demeure)
  • Un lien <a> pour naviguer, un <form method="POST"> pour transporter des données, et rien d'autre ; s'il y a plusieurs formulaires par page, un <input type="hidden"> porte l'identifiant et le name du submit identifie l'action
  • URLs sémantiques partout ; pagination adressable, jamais de scroll infini

Données & Sécurité

  • Les exigences de l'itération 1 demeurent : DAO avec PDO, requêtes préparées partout, PHP Filters dans les modèles pour tous les GET et POST
  • Tout le site demeure en HTTPS (le protocole est activé dès l'itération 1)
  • Les sessions sont sécurisées : identifiant de session régénéré à la connexion, déconnexion qui détruit la session
  • Les pages membres sont réellement protégées : y accéder sans session valide redirige vers la connexion

Déploiement & DevOps

  • Le staging demo.votre-domaine est en place : le redéploiement horaire le cible, la production est promue après validation par l'équipe

Le processus AGILE

Semaine 5

Semaines 6 et 7

Les liens du ticket : Chaque ticket doit comporter le lien vers une doc externe pertinente et le lien vers les discussions IA associées partagées (spécification, maquette, résolutions de bug, choix stratégiques).

Fin de la semaine 7

Les critères d'évaluation · 25 %

Un point de la grille vaut un pourcent de la session. La démonstration a lieu en semaine 7, sur le site en ligne, avec la version Release TAG = ITERATION_2_MEMBRE.

Évaluation individuelle : Toute l'évaluation est individuelle. Chaque étudiant doit remettre son item pour chaque critère : créer son ticket, faire sa mêlée, commiter dans son ticket, programmer son module, respecter l'architecture cible lui-même tout au long de l'itération.
Intégration continue : L'étudiant doit faire ses commits de manière progressive et fréquente selon le guide d'intégration continu à partir des maquettes HTML de départ. Chaque critère de cette grille est pénalisable par le manque de commits. Une remise en bloc du code final est refusée selon le critère anti-IA. Le strict minimum sera de au moins un commit par séance.
Points Critère
Le processus · 12 points
4 / 4Spécifications en temps utile (maquette + devis fonctionnel)
4 / 4Le Ticket (issue) : titre utilisateur, DoD, tâches, commits liés, commentaires de réflexion et liens
4 / 4Agile en temps utile : Sprint planning (Kanban), Mêlée quotidienne et collaboration, Sprint review
Le produit · 13 points
4 / 4Expérience utilisateur : HTML sémantique (id + classes), ergonomie, contenus
4 / 4Navigation : URLs adressables, liens, formulaires, flux
4 / 4Traitement des données : modèles, php filters, requêtes préparées
1 / 1Architecture : respect de l'architecture cible (exemple Contrat, tag ARCHITECTURE_SIMPLE)
25Total de l'itération 2 · 25 % de la session
Démonstration : Pour avoir les points sur les critères de Produit, le produit doit obligatoirement avoir été démontré par l'étudiant au moment de la Sprint review.
Vérification de compétence (anti-plagiat) : À la date du sprint review l'étudiant doit répondre à des questions sur son code ou des demandes de modifications live par le professeur. Les 13 points de critères produit en dépendent. La note est de 0 en cas d'incapacité à valider qu'il est l'auteur de son code.
Principe Agile : Le sprint planning se prépare avec l'équipe entière et la démonstration de l'itération se réalise avec l'équipe entière, à la date fixée par le professeur. La démonstration a lieu à la date indiquée peu importe le degré d'avancement, à l'image d'une rencontre avec un client qui ne peut être reportée.

Les modalités

En reflet du monde du travail, les séances de laboratoire sont toutes à présence obligatoire et à participation obligatoire. Pour des raisons de motivation au travail, d'échange effectif de l'information et d'évaluation, les heures contact se réalisent en classe, en présentiel, en collaboration avec son équipe.

Présence et contribution : Toute absence non justifiée aux laboratoires du projet sera pénalisée proportionnellement au temps perdu sur l'itération, sans reprise possible. Cela inclut les retards, les longues pauses et les départs en avance. Par exemple, un étudiant qui s'absente la moitié du temps voit sa note multipliée par 50 % sur tous les critères, sauf la spécification.

L'espace du laboratoire est réservé aux activités du projet. Les participants doivent contribuer à la hauteur de la pondération pour recevoir la pleine mesure des points. Le professeur se réserve le droit d'exclure un participant d'une équipe s'il ne participe pas et que cela complique la division des volets. Personne ne doit réaliser les tâches de ses camarades.

Bonne chance !

À la fin de cette itération, votre boutique aura des habitués qui reviennent, se connectent et retrouvent leurs affaires.