Énoncé du TP3 - A08

IFT6801 - TP3 - A08

Application Web en MiniRails ou Ruby on Rails

But

Le but de ce travail est de vous familiariser avec la modélisation MVC pour une application Web et sa programmation en Ruby avec le framework Rails. Comme Ruby on Rails est assez complexe à maitriser, on vous suggère d'utiliser Minirails qui met en jeu les principes du modèle MVC, mais sans la complexité qui serait nécessaire pour une application web professionnelle.
 
Le contexte du travail est le même que lors des deux tps précédents: un magasin de disque traditionnel  qui vend des albums comprenant plusieurs plages. Les informations sur les disques suivent le même modèle que celui des TP1 et TP2. Pour le TP3, le système devra pouvoir traiter les commandes de plusieurs clients ayant chacun leur panier d'achats qu'ils peuvent manipuler (i.e. ajouter ou enlever des achats) et retrouver d'une session à une autre. L'administrateur peut consulter toutes les commandes de tous les clients et il peut "vider" un panier lorsque la livraison des albums est effectuée.
 
Vous devez développer votre site en Ruby soit avec MiniRails ou Ruby on Rails. Afin d'améliorer l'utilisabilité de votre site, pensez à respecter autant que possible les points de l'article de Fang et Salvendy présenté en classe.
 
Votre site transactionnel devrait permettre à un client de composer sa commande:
  • de chercher et d'afficher des résumés d'albums (titre, artiste, année et prix par exemple); ceci serait la page par défaut; il serait possible à un usager de choisir des albums qu'il veut acheter en l'ajoutant à un panier;
  • de voir toutes les informations d'un album;
  • d'afficher le contenu du panier, de le modifier en ajoutant de nouveaux albums ou en en retirant, et de finaliser la commande;
  • d'entrer des informations sur la livraison qui seront conservées d'une visite à l'autre d'un même client
  • l'administrateur soit pouvoir lister l'ensemble des commandes de tous les clients et vider le panier d'un client une fois la livraison effectuée;
  • un usager doit pouvoir consulter le catalogue sans être connecté mais une connexion sera exigée aussitôt qu'il voudra ajouter quelque chose au panier.

Ce travail est à réaliser en groupe de deux (min-max). 

Défi supplémentaire (si vous trouvez que l'énoncé ci-haut n'est pas assez ambitieux)

  • utiliser Ruby on Rails avec une vraie BD;
  • permettre à l'administrateur de modifier la base de données;
  • installer vos scripts sur un vrai serveur Web chez un hébergeur ou dans votre page au DIRO.

Remise

La remise consiste en envoyer un courriel au démonstrateur ( Cet e-mail est protégé contre les robots collecteurs de mails, votre navigateur doit accepter le Javascript pour le voir ) en ayant comme subject remise tp3 et comme contenu un archive zip du répertoire complet minirails dans lequel se trouvent tous les fichiers générés pas les scripts ou ceux que vous aurez écrits. En principe, il suffirait de lancer le script du serveur dans ce répertoire et de taper l'URL correspondante dans un browser pour que votre application démarre.

 Date limite de remise(format xs:dateTime): 2008-12-21T23:59:59


Barème:

Programmation 5
Résultats et utilisabilité 4
Validation
1
Dernière mise à jour : ( 07-12-2010 )