Projet de bases de données:Un site de rencontres

publicité
Projet de bases de données:Un site de rencontres
Eugene Asarin, Enrica Duchi, Isabelle Fagnot, Roberto Mantaci
1
Présentation Générale
Il s’agit de développer une base de données pour un site de rencontres. Les visiteurs ont
la possibilité de consulter la liste des personnes qui satisfont leurs critères de recherche.
Pour avoir plus de détails sur chaque personne ils doivent s’inscrire dans la base. Un gérant
contrôle les informations données par chaque nouveau inscrit avant de les insérer dans la
base.
2
Contenu de la base
La description d’une personne doit au moins contenir un code l’identifiant, une photo,
son prénom, son sexe, sa date de naissance, son mail et le département où elle habite.
A une personne on doit aussi pouvoir associer des informations concernant ses cheveux,
la couleur de ses yeux, et d’autres caractéristiques physiques comme sa taille et son poids.
On peut aussi lui associer hobby/intérêt/signe zodiacal, etc..
Pour chaque personne on veut représenter ses goûts en termes des types de personnes
qu’il préfère : un type de personne peut être donné par le sexe, l’âge, la couleur des yeux,
etc.. Chaque personne doit enfin avoir la possibilité de mettre dans un panier les personnes
sélectionnées pour le retrouver à la prochaine connexion.
3
Utilisateurs et fonctionnalités
Cette section décrit les fonctionnalités liées à chaque utilisateur.
Le visiteur : il peut afficher la liste des personnes correspondantes à sa requête avec leurs
photo, leurs prénom, leurs âge et leurs département. Il a besoin de s’inscrire dans la
base pour afficher les autres informations.
Le membre : il peut avoir tous les informations qui sont contenues dans la base. Pour ce
faire il doit s’inscrire, en laissant ses informations comme sa date de naissance, son
pays de résidence et une adresse email. De plus il doit choisir un identifiant et un mot
de passe pour accéder à la base. Une fois que le visiteur est inscrit il doit insérer sa
photo dans la base et fournir au moins les informations concernant son aspect et ses
hobbies/intérêts. Toutes les informations données par le visiteur doivent être validées
1
par le gérant de la base. Tous les changements concernant les informations données
par un membre doivent être aussi acceptées par le gérant de la base.
Le gérant : le gérant a l’accès à toutes les données de la base. Il vérifie que les informations
données par un membre respectent certaines conditions et décide de les accepter ou
pas.
4
Travail à faire
Le projet doit être réalisé en trinôme, sur les machines et SGBD de votre choix. L’utilisation de BD relationnelles et de SQL est obligatoire.
– Concevoir une base de données pour le site décrit ci-dessus. Pour la conception vous
devez utiliser la méthode Merise (en passant par les MCD) ou une autre méthod
(diagrammes E/A, UML etc.) Obtenir un schéma relationnel de la BD. Proposer
sa réalisation concrète (types de données, contraintes d’intégrité). Attention, ne pas
utiliser un unique tableau “personne” dans la base mais introduire d’autres tableaux
comme par exemple un tableau contenant les tailles possibles, un autre les couleurs
des yeux etc...
– Écrire sous forme de requêtes SQL les énoncés suivants :
R1 Les personnes de sexe masculin qui ont âge inférieur à 40 ans.
R2 Les personnes qui ont les cheveux longs et les yeux marrons.
R3 Le prénom féminin le plus courant.
R4 L’âge moyen des membres de la base.
R5 Les prénoms des gens qui ont la danse comme hobby.
R6 Pour chaque hauteur, donner le nombre de personnes qui ont cette hauteur.
– Écrire une application (ou une applet, ou une servlet) en Java/JDBC qui réalise une
interface utilisateur (textuelle ou graphique ou web) et les fonctionnalités décrites
dans la section 3. Veillez en particulier à assurer les aspects suivants :
– menu spécifiques pour les visiteurs, membres, gérants ;
– opérations essentielles : ajout et suppression des clients, affichage, recherche (de
préférence en suivant le protocole décrit dans la section 3).
– les boutons, liens ou points menu pour les 6 requêtes SQL R1-R6.
– 2 à 5 autres fonctionnalités que vous trouverez utiles pour ce genre de site, ou
intéressantes à réaliser.
– Rédiger un rapport présentant le travail réalisé et justifiant vos choix.
– Le rapport doit être remis au secrétariat (Christine Da Silva) lundi le 12 juin au
plus tard. Une archive contenant le rapport et tous les codes sources doit être remis à la même date selon une procédure qui sera spécifiée ultérieurement. Si elle
n’est pas spécifiée ou ne fonctionne pas pour vous, envoyer l’archive par email à
[email protected]
– Faire une soutenance de projet accompagnée d’une démonstration de votre programme.
2
5
Critères d’évaluation
Barème indicatif : 12 pour la BD, 8 pour Java.
Par exemple une BD parfaite + une interface PHP parfait = note 12+0=12.
Pour la partie BD on appréciera :
– la qualité du modèle MCD, la justification de vos choix ;
– la correction du schéma relationnel, sa forme normale ;
– la qualité de la bases de données, les contraintes d’intégrité ;
– la correction et la clarté des requêtes R1-R6 ;
– la correction, la clarté, la richesse fonctionnelle, l’adéquation aux besoins des utilisateurs des requêtes SQL utilisées dans votre programme Java.
Pour la partie Java on appréciera :
– le fonctionnement sans faille de programme ;
– la réalisation des fonctionnalités de base ;
– le choix opportun et la réalisation des fonctionnalités avancées ;
– la qualité de programmation orientée objet
L’utilisation d’une interface graphique, une interface web et autres servlets (à notre
connaissance non supportées sur les machines de l’UFR) donnera un petit bonus. Assurezvous que la version simple avec un petit menu textuel fonctionne avant de vous y prendre.
La qualité du rapport et de la soutenance (et la participation de tous les membres du
trinôme) sera prise en compte pour l’évaluation du projet.
3
Téléchargement