Démarrage du projet Web Planning et cahier des charges

Sujet

Vous devez réaliser un site de e-commerce. Les produits que vous devez vendre sont laissés à votre entière appréciation (y compris humoristique). Il n’y a pas de restriction particulière. Pensez néanmoins que ce projet Web fait partie de vos réalisations qui pourraient être mises en avant lors d’un entretien pour un stage, par exemple.

À la fin de la première séance de la semaine du lundi 7 octobre, vous devrez donner à votre encadrant :

Le projet est dimensionné pour des groupes de 3 étudiants. Ponctuellement les groupes de 2 sont autorisés (mais ils seront notés comme un groupe de 3). Les groupes de 4 peuvent être exceptionnellement autorisés par votre enseignant, mais seront évalués de manière plus stricte et l’on attendra 1/3 de boulot en plus.

Modalités

Rendu

Date de rendu du projet : samedi 23 novembre à 23h59.

Le projet sera à rendre sur Moodle. Un seul membre du trinôme dépose une archive zip nommée selon le format : NomPrenomMembre1-NomPrenomMembre2-NomPrenomMembre3.zip.

Cette archive devra contenir :

Soutenance

Date de soutenance des projets : mercredi 27 novembre

Le jour de la soutenance, le site devra être déployé sur webinfo sous l’un de vos comptes. Le code source du site doit être accessible à votre enseignant : ajouter votre professeur de PHP à votre dépôt Git (de préférence le GitLab de l’IUT), et lui donner le rôle maintainer ou owner.

Il n’y a pas de rapport à écrire, ni de présentation à préparer. Vous devrez juste répondre à une série de questions sur votre code qui nous permettra d’évaluer ce qui a été implémenté.

Critères de notation

Le but pédagogique de ce projet est de mettre en application toutes les techniques que vous avez apprises lors des TDs.

Important : Voici donc les critères sur lesquels vous serez notés. Pour simplifier le projet, vous n’avez pas à gérer de quantité pour les achats de produits.

La note de ce projet Web interviendra pour environ moitié, l’autre moitié sera donnée par l’examen final sur papier (pas de code à écrire, questions de compréhension), sans oublier l’interrogation de fin de TD3 qui comptera moins.

Informations techniques

Git

Maintenez un dépôt Git propre pour que l’enseignant puisse évaluer la contribution de chacun en regardant l’historique des commits.

Ces dépôts nous permettront entre autres de suivre l’activité des différents membres de l’équipe. Pour ceci, il faut que vos identités soient propres et identiques sur chaque machine que vous utilisez pour soumettre des commits. Pour ceci, il faut exécuter

git config --global user.name "Prenom Nom"
git config --global user.email prenom.nom@etu.umontpellier.fr

Héberger le site sur webinfo

Vous disposez de votre propre home sur les serveurs de l’IUT. Ce home contient un dossier public_html. Tout ce que vous déposez dans ce dossier est automatiquement servi par le serveur à l’adresse suivante (si votre login était mon_login_IUT et votre fichier était page.html): http://webinfo.iutmontp.univ-montp2.fr/~mon_login_IUT/page.html

Pour pouvoir accéder à votre home à distance et y déposer des fichiers, il faudra d’abord trouver vos identifiants de connexion login et mot de passe (vous les utilisez probablement déjà pour vous connecter à d’autres services de l’IUT).

Vous pourrez utiliser FileZilla (il faudra certainement l’installer) pour déposer vos fichiers dans votre dossier ~/public_html sur le serveur de l’IUT. Pour vous connecter, il faudra choisir comme protocole SFTP, comme hôte ftpinfo.iutmontp.univ-montp2.fr et vous devrez utiliser votre login et mot de passe. Vous pouvez alors facilement déplacer des fichiers de votre machine vers votre home.

Il se peut que tout fonctionne immédiatement, mais il faudra certainement donner les droits au serveur Apache de lire vos fichiers. Pour cela vous pouvez vous connecter en SSH au serveur ce qui vous donnera accès à un terminal. Sous Linux, la commande vous permettant de vous connecter au serveur est la suivante (en remplaçant mon_login_IUT par votre login)

ssh mon_login_IUT@162.38.222.93 -p 6666

Il faudra ensuite entrer votre mot de passe et répondre “yes” à la question “Are you sure you want to continue connecting”. Vous êtes alors connectés en ssh et les commandes que vous tapez sont exécutées sur la machine cible. Il ne vous reste plus qu’à entrer les deux commandes suivantes :

   # On modifie (-m) récursivement (-R) les droits r-x
   # de l'utilisateur (u:) www-data
   setfacl -R -m u:www-data:r-x ~/public_html
   # On fait de même avec des droits par défaut (d:)
   # (les nouveaux fichiers prendront ces droits)
   setfacl -R -m d:u:www-data:r-x ~/public_html

Votre page devrait maintenant être accessible à l’adresse http://webinfo.iutmontp.univ-montp2.fr/~mon_login_IUT/.

Des sources complémentaires sur comment se connecter en FTP et en SSH à public_html (pour y déposer des fichiers) :

Par où commencer ?

  1. Définir les produits que vous souhaitez vendre.
  2. Créer la table SQL correspondante.
    Conseil: Préfixez vos noms de tables de projet, e.g. p_utilisateur, p_produit, pour ne pas mélanger vos tables MySQL de projet et celles des TDs.
  3. La première séance doit vous permettre d’implémenter quelques actions du MVC Produit.

Ce que ce projet n’est pas :

Que garder pour plus tard ?

Dans la suite de ce cours, plusieurs séances seront consacrées à

En conséquence, ne pas attaquer ces parties pour le moment.