Projet Master Recherche - Langages pour Bases de données
Présentation Générale

La société Pizza Online est une société qui livre des pizzas à domicile. Jusqu'alors les commandes étaient passées par téléphone. Pizza online décide de moderniser sa gestion et de créer un site internet au moyen duquel les clients pourront commander eux-même leur menu, imprimer ce menu ou même consulter les informations du site par Wap au moyen de leur téléphone portable.

Dans une première phase le projet consiste à réaliser un tel site en utilisant le langage CDuce (www.cduce.org) XPour cela vous vous mettrez seul.

Dans une deuxième temps, la société Pizza Online ayant prospéré, elle rachète la société e-Pizza. Il faut intégrer les deux sites. Vous choisirez alors un autre camarade et intégrerez vos informations au moyen d'une DTD d'intégration qui sera exprimée, ensuite, comme un type CDuce..

Rien ne vous empêche de consulter des sites analogues éventuellement existant pour vous donner des idées sur la présentation, le contenu, les fonctionnalités, etc.

Voici quelques indications pour la réalisation, que vous êtes invités à respecter pour faciliter l'intégration des données. En fonction du temps dont vous disposez, vous êtes libre d'inventer des compléments qui vous paraissent plus intéressants et/ou amusants.

Le site de Pizza Online

Voici quelques précisions :

  • Les clients de Pizza Online sont stockés dans une base de données relationelle. A tout moment un nouveau cllient doit pouvoir etre inséré, supprimé ou encore des informations le concernant doivent pouvoir etre mises à jour.
  • Un client, lorsqu'il se connecte sur le site, à différentes possibilités: il peut choisir parmi des menus type, des pizzas types ou bien composer lui meme sa pizza et son menu. Pour cela il est amené à choisir dans une liste d'ingrédients. En début de connexion, des informations relatives au client sont demandées (nom, adresse, numéro de téléphone etc). Si le client est un habitué, ses commandes précédentes lui sont rappelées et éventuellement des offres spéciales lui sont proposées. Une fois notre client satisfait, la commande est passée.
  • Lorsqu'une commande est passée, le chef prépare le menu correspondant. Il dispose pour cela d'un écran lui donnant les commandes en cours. Une fois la commande prete, le livreur peut l'acheminer. Nous ne nous intéresserons pas au processus de livraison.
  • Le stock des produits nécessaires à la préparation des menus est géré par la base de données. Lors de chaque commande passée par un client, ce stock est mis à jour automatiquement. Des qu'un seuil d'alerte est atteint, une commande est passée au fournisseur du produit en question.
Représentation des données

Vous devez définir la représentation de ces informations en XML, en en plaçant une partie dans la base de données (comme suggéré).

Mises à jour: Vous pouvez vous contenter, surtout dans un premier temps, d'effectuer les mises à jour manuellement en éditant directement les documents XML puis le cas échéant, de reporter cette mise à jour dans la bases de données..

Publication: enfin produisez au moins deux versions différentes de vos informations, dont une en XHTML, et l'autre en WML. Une édition PDF (via XSL-FO) sera appréciée, mais il faut être sûr de pouvoir en venir à bout dans les délais impartis.

On devrait pouvoir effectuer des recherches pour un ingrédient donne (par exemple quelles sont les pizzas utilisant du gorgonzola, quelles sont les pizzas végétariennes) etc. N'oubliez pas de fournir des liens hypertextes pour pouvoir naviguer dans le site, ou pour générer un PDF permettant d'imprimer le contenu affiché à l'écran.

Echéances

Le projet est à rendre pour 26 février 2010 Des soutenances seront organisées afin que vous présentiez vos réalisations.