Projet EMSI Rabat 2010-2011

De $1

Sujet du projet

 

Le but du mini projet est de réaliser un magasin de vente de films DVDs/BlueRay. Vous pourrez vous inspirer des fonctionnalité du projet IGift qui vous a été donné à l'étude, mais pour ce projet vous utiliserez  l'héritage pour typer les films à la vente (dvd ou blueray), en plus des relations  vues en cours.

Vous partirez des classes pour générer les modèles de données, pas le contraire !

  • Le type du support est donné par sa classe (vous ferez de l'héritage)
  • Chaque film a une description d'une ligne (ex : les experts, Manhattan, vol 2),
  • La liste des Acteurs, RELATION
  • Le Réalisateur, RELATION
  • Un prix, 
  • Un résumé,
  • Une photo de jaquette,
  • Les films ont au moins un genre : série télé, film action, film aventure, film policier, spectacle, etc. RELATION ou ENUMERATION (cf IGift)
  • Une quantité en stock,

Les acteurs et le réalisateur ont un nom, une description de quelques lignes et la liste films dans lesquels ils jouent.

Une fois que le minimum fonctionne, vous rajouterez :

  • Une description détaillée (à vous de voir : acteurs, réalisateur, année, format pal/ntsc, langues audio, langues sous-titre, durée, etc à vous de voir, mais démarrez très simplement, comme pour IGift)
  • Les films appartiennent à une ou plusieurs rubriques : nouveautés, actuellement au cinéma, sortis en 2010, coffret collector, etc

Inspirez vous de allocine.fr par exemple, mais simplifiez un max.

Fonctionnalités

Fonctionnalités attendues similaires à IGift, mais vous pouvez revoir l'ergonomie. (en particulier, avoir une interface user et une interface admin (facultative), qui se déclenchent en fonction du login/password dans un bandeau en haut).

  • Affichage des films, tous ou par catégories, plus si vous avancez bien (voir les nouveautés, etc),
  • Recherche de films par mot clé (recherche dans la description),
  • Gestion d'un panier et des commandes, penser à diminuer le stock,
  • Passage de la commande, ajout dans la liste des commandes.
  • Un utilisateur a une liste de commandes (relation 1-N), une commande correspond au contenu d'un panier + date et prix total.

Interface admin :

L'admin peut créer des comptes utilisateurs, à moins que vous ne préfériez réaliser une interface d'inscription (simple si possible, ne faites pas aussi compliqué que IGift, sauf si vous le sentez). L'admin peut ajouter des films en base. 

Conseils pour le développement

Implémentez rapidement les fonctionnalités de base (ajout de films sans relations, affichage) puis ajoutez de la fonctionnalité, si votre persistence manager est en mode "supprimer et créer" il supprimera les tables et les recréera, ce qui permettra à vos modèles d'évoluer.

  1. Pensez à écrire est une fonctionnalité qui permet PAR PROGRAMME de peupler la base avec un jeu de test conséquent. Dans la Servlet qui sera appelée au début, par exemple, implémentez une action qui appelle la méthode peupleLaBaseFilmsAvecJeuDeTest() dans un gestionnaireDeFilms, et peupleLaBaseUtilisateursAvecJeuDeTest() dans le gestionnaireDePersonnes. Croyez moi, vous en aurez besoin !!!
  2. Exécutez la servlet avec les actions du point précédent et vérifiez que la base est bien peuplée,
  3. Rajoutez une JSP pour afficher les personnes mais aussi les films (en gros, si vous êtes repartis du TP précédent, vous pouvez réutiliser index.jsp en la complétant)
  4. Rajoutez maintenant le REALISATEUR, pour cela crééz un modèle Realisateur (une entité) qui contiendra un Id et une description de type String et rajoutez dans le modèle Film un attribut de type Realisateur. Si la relation est bi-directionnelle rajoutez dans la classe Realisateur une collection de films.
  5. Complétez les méthodes qui peuplent le jeu de test pour créer maintenant des users, des films (avec réalisateur) et des réalisateurs (avec films). Testez, vérifiez que la base de données est correcte, modifiez la jsp pour qu'elle affiche par film les réalisateurs,
  6. etc.

Modalités de rendu

  • Date limite : le 28 Février,
  • Vous travaillerez en binome,
  • Vous rendrez un répertoire qui contient :
    1. Votre projet netbeans (faites un clean project avant, cela enlèvera réduira sa taille),
    2. La base de données (prenez-là dans netbeans-derby), donnez lui un nom qui contient vos noms de binome afin que tout le monde n'ait pas les memes noms,
    3. Un fichier word avec explications, photos d'écrans, logins, passwords pour tester, noms du binome, etc
  • Ce répertoire doit être rendu au responsable de la collecte des projets. C'est lui qui le mettra dans un gros répertoire qui compressé (en rar ou  en zip) et déposé quelque part où je puisse le récupérer (serveur ftp, page web, megaupload, répertoire partagé dropbox, à vous de choisir)

Je récapitule : à la fin, le responsable m'envoie un mail avec un lien, je récupère le lien, le dezippe, et dedans  j'ai tout ce qu'il faut pour corriger le projet. Si le 28 Février je n'ai pas le fichier je mets zéro à tout le monde !

 

 

Mots clés:
 
Images (0)
 
Commentaires (0)
Vous devez être connecté pour poster un commentaire.