Énoncé officiel · Itération 1

La boutique et ses données

Générée par l'IA, administrée par l'équipe, payée pour vrai

25 % de la session Semaines 1 à 4 Démo en semaine 4 Équipe de 3
← Accueil du cours Les 3 volets Le processus AGILE L'évaluation Énoncé 2 →

Le mandat

Des coéquipiers, une idée de commerce, et une IA qui assiste. Dès la première semaine, votre équipe de 3 choisit sa boutique (produits, forfaits ou services), fait générer par l'IA le HTML complet de l'itération 1, la charte graphique et les dossiers fonctionnels, puis publie la maquette en ligne pour la faire valider par le client. Ce qui prenait un mois en 2025 prend maintenant une semaine : le vrai travail commence tout de suite.

À la fin de l'itération, la boutique est en ligne, ses données sont administrables par les marchands, et un achat de bout en bout fonctionne en mode sandbox : de la vitrine à la confirmation de paiement, avec sa trace dans le journal des transactions, dans le respect de l'architecture cible.

Avant de démarrer, lisez la page Les technologies : elle fixe la ligne de partage entre le site public (PHP vanille) et les parties privées (technologie libre), ainsi que les règles qui traversent tout le projet.

Le déroulement en un dessin

SEMAINE 1 l'IA génère, l'équipe publie, le client valide SEMAINES 1 À 3 · UN VOLET PAR COÉQUIPIER VITRINE le catalogue affiché au public CATALOGUE les listes éditables de l'admin CAISSE le premier achat en sandbox SEMAINE 4 LA DÉMO un achat de bout en bout, de la vitrine à la caisse git à chaque séance le vrai site en ligne pas de staging à cette itération : le site n'est pas encore publicisé

La boutique naît en semaine 1, trois volets la construisent en parallèle, et tout converge vers la démo de la semaine 4.

S1
Génération et publication
S1 à S3
Les trois volets en parallèle
S4
Démo · 25 %

La remise intermédiaire · Fin de la semaine 1

Cette année, l'IA génère les dossiers fonctionnels, le HTML et le CSS. Générés ou pas, ce sont des livrables : ils sont versés dans Git, retravaillés par l'équipe et validés avant que le code de données ne commence.

À la fin de la semaine 1, la maquette HTML complète de la boutique est en ligne sur le vrai site, pour validation par le client. Le dossier fonctionnel est dans Git. Pre-release TAG = ITERATION_1_SPECIFICATIONS.

Contenu de la remise intermédiaire

Vous êtes responsables de tout ce que l'IA produit : chaque page, chaque classe CSS et chaque décision du dossier fonctionnel doit pouvoir être expliquée par un membre de l'équipe.

Les trois volets · Un par coéquipier

De la semaine 1 à la semaine 3, 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 4.

VITRINE L'affichage public de la boutique Semaines 1 à 3

La boutique affiche sous une forme navigable des produits, forfaits ou services que l'utilisateur peut se procurer. La boutique comprend :

  • Des pages listes de produits (format galerie)
  • La page de détail des produits (une seule page dynamique sert tous les produits)
  • Une forme de classification : soit des filtres, soit de la pagination, soit des catégories
CATALOGUE Les listes éditables du panneau admin Semaines 1 à 3

Le gestionnaire contrôle l'inventaire et les opérations du magasin via une interface web sécurisée. Le panneau d'administration comprend :

  • Le panneau d'administration sécurisé
  • L'interface de gestion (ajouter, modifier, retirer des éléments)
  • Le système de téléversement des images
  • La validation des données côté serveur
CAISSE Le premier achat avec paiement Semaines 1 à 3

Le client finalise sa commande en effectuant une véritable transaction de bout en bout. Le système de paiement comprend :

  • Le protocole sécurisé HTTPS activé sur le nom de domaine
  • Un tunnel d'achat multi-étapes (wizard) permettant de collecter l'adresse et les préférences de livraison avant de passer au paiement
  • La configuration d'un compte sandbox ou régulier (PayPal ou Stripe)
  • L'intégration du processus de paiement à la page produit
  • La page de confirmation de la transaction
  • l'Enregistrement de la transaction dans la base de données (IPN)

Semaine 4 · La démo des trois volets réunis

Les technologies

Tout le site public est en PHP vanille, sans framework. Le panneau admin est à géométrie variable : PHP vanille MVC, site Laravel, app Next ou autre proposition validée avec le prof. Dans tous les cas, les URLs restent sémantiques et chaque page ou élément reste adressable.
Voir la page Technologies

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 : les éléments uniques ont un id (#liste-produits), les éléments répétés ont un nom de classe en français comme dans le dossier fonctionnel (.produit-titre, .produit-prix), les boites sont étiquetées (boite-principale, menu, menu-secondaire)
  • Un lien <a> pour naviguer, un <form method="POST"> pour transporter des données vers le serveur, et rien d'autre
  • URLs sémantiques partout, y compris dans le panneau admin ; pagination adressable, jamais de scroll infini

Données & Sécurité

  • Environ un DAO encapsulé par table de données (ProduitDAO.php) : aucun code SQL en dehors des DAO
  • La librairie de données est sécuritaire et portable (PDO) et tout le SQL est en requête préparée (bind param)
  • Les règles de validation et de filtration sont dans les modèles (PHP Filters), pour tous les GET et POST, avec les messages d'erreur fonctionnels à afficher dans les formulaires

Déploiement & DevOps

  • Le site est publié en ligne avec un nom de domaine et l'URL est dans le README.md du dépôt Git

Le processus AGILE

Semaine 1

Semaines 2 et 3

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).

Semaine 4

Les critères d'évaluation · 25 %

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

É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 1 · 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 !

En quatre semaines, votre boutique passera d'une idée à un commerce en ligne qui encaisse son premier paiement.