Vous êtes sur la page 1sur 6

Base de données relationnelles

Enseignent : OUBDA Nicolas

PROJET DE BASE DE DONNEES RELATIONNELLES

I) Introduction

Ce projet a pour but de vous permettre de créer votre propre base de données. Ce dernier permettra
de couvrir plusieurs étapes de créations d’une base de données en passant de la conception à la
réalisation. Vous aurez toutefois trois objectifs :

1. Conception : Modèle entité-association (EA)

2. Normalisation : Modèle relationnel (MR)

3. Réalisation : Mise en place avec MySQL

Le projet compte 60% de la note finale de BDR

Contraintes Générale

Détermination du sujet du Projet

➢ Vous devez déterminer vous-même le sujet de votre projet.


➢ Vous avez carte blanche quant au sujet abordé. Néanmoins, il est évident que vous devez
rester respectueux sans aborder des sujets de morales douteuses.
➢ Tentez d’identifier un projet qui vous stimule. Par exemple, vous pouvez mettre en place:
• une solution pour une problématique qui vous tient particulièrement à cœur;
• un projet lié à un club étudiant;
• un projet lié à l’entreprise où vous faites un stage;
• un projet d’affaires que vous voulez démarrer;
• le prototype d’un concept que vous avez;
• une base de données liée à un sujet que vous aimez (musique, sport, art, science,
techno, histoire …)

NB : Merci de faire valider votre sujet.

Projet d’équipe

➢ Le projet se fait en équipe de 4 personnes ;


➢ Vous ne pouvez pas changer d’équipe. ;
➢ Aucun travail ne doit être réalisé seul.

L’étudiant(e) qui présente un travail individuel se verra automatiquement attribuer la note de 0.

1
NB : Les groupes ont été déjà constitué, merci de vérifier le fichier pour déterminer le numéro et les
membres de votre groupe.

Contraintes techniques.

Vous devez utiliser les outils technologiques imposés. Principalement :

• Le modèle entité-association;
• Le modèle relationnel;
• L’usage de MySQL comme SGBD.

Responsabilisation

Tout au long du projet, on vous demande d’assumer ces deux rôles distincts :

➢ Le client qui a un besoin spécifique (c’est vous-mêmes qui ferez l’identification des
exigences).
➢ Le consultant dans le domaine des bases de données qui développe la solution.

Objectifs globaux

Le but du projet est de permettre à l’étudiant de se familiariser avec les différents concepts reliés aux
bases de données par le biais d’un vrai projet en passant par plusieurs étapes de réalisation :

➢ Objectif 1
• Identification d’un besoin.
• Conception et modélisation d’un modèle de données externe (modèle EA).
• Documentation.

➢ Objectif 2
• Conception d’un modèle de données interne (processus de transformation du modèle EA
vers le modèle MR).
• Normalisation.

➢ Objectif 3
• Réalisation du MR dans une base de données relationnelle en langage SQL.
• Création de tous les objets (table, contraintes, procédures, etc.).
• Rédaction des requêtes pertinentes.
• Présentation.

2
Objectif 1 : Modèle entité-association

Cette première partie du projet est axée sur la conception et plus particulièrement sur le modèle
entité-association (EA). On vous demande de :

➢ introduire le problème;
➢ rédiger une description fonctionnelle du problème;
➢ définir les tâches que chaque usager du système peut ou doit accomplir;
➢ identifier les entités et fournir un dictionnaire des données;
➢ fournir le modèle EA en spécifiant toutes les contraintes pertinentes;
➢ fournir des exemples de requêtes utilisées dans les tâches du système

Livrables.

Cette partie du rapport final contiendra :

1. Une introduction :

➢ qui est le client;


➢ quel est le projet;
➢ à quoi sert-il;
➢ tout autre détail que vous jugez pertinent.

2. Une description fonctionnelle :

➢ c'est une explication concise, en texte et en images, des fonctionnalités désirées pour la base
de données;
➢ vous devez utiliser des termes non techniques en langage courant pouvant être compris par
un lecteur néophyte au sujet des bases de données : votre client;

3. Une définition des usagers du système et quelles sont leurs permissions :

➢ usager ordinaire;
➢ gestionnaire;
➢ administrateur ;
➢ etc.

4. Le modèle entité-association incluant toutes les contraintes pertinentes. À ce schéma, vous devez
joindre les informations complémentaires suivantes:

➢ pour chaque entité du modèle :


• définition,
• description,
• nombre approximatif d’enregistrements attendus dans le système (ce sera une
indication de la taille éventuelle de la base de données);
➢ un dictionnaire des données qui permettra de décrire chaque attribut de toutes les entités
(incluant les associations) :
• le type de donnée (caractère, chaîne, booléen, entier, nombre décimal, date, …)
• toutes les contraintes;

3
5. Cinq exemples de requêtes souhaitées :

➢ Contraintes sur les requêtes à réaliser :

a. 2 requêtes utilisant au moins 2 entités;

b. 1 requête utilisant au moins 3 entités;

c. 1 requête utilisant au moins 4 entités;

➢ Pour chaque requête, vous devez inclure un texte clair visant à décrire l’objectif de la
requête.
➢ Il ne convient pas ici de fournir le code SQL de la requête, mais seulement quelles
informations doivent être obtenues et quelles entités sont concernées.
➢ Au moins une de vos requêtes devra utiliser un champ de type date.

4
Objectif 2 : Modèle relationnel

Cette partie du projet consiste à réaliser la deuxième étape de conception : le modèle relationnel. On
vous demande de :

➢ faire la transformation du modèle entité-association réalisé vers le modèle relationnel;


➢ faire la normalisation de votre modèle relationnel jusqu’à la troisième forme normale

Livrables

Cette partie du rapport final contiendra :

1. Une section « Transformation du modèle EA vers le modèle relationnel » expliquant pas à pas la
transformation du modèle entité-association vers le modèle relationnel pour les trois entités les plus
complexes de votre modèle EA. En fait, on vous demande de justifier la transformation de chaque
attribut mais aussi la transformation de toutes les associations liées. Par exemple, vous devez
préciser pour chaque association, pourquoi vous avez choisi telles clés primaires et telles clés
étrangères et pourquoi vous avez mis les attributs d’association à tel endroit.

2. Une section « Normalisation » expliquant pas à pas la normalisation des trois relations (tables) les
plus complexes de votre modèle relationnel.

3. Une section « Diagramme » présentant un diagramme d’instance complet de votre modèle


relationnel final (après normalisation complète).

Contraintes spécifiques

➢ Même si on vous demande d’expliquer uniquement trois éléments de la transformation et


de la normalisation, vous devez faire une transformation complète et une normalisation
complète de vos modèles.
➢ Pour le diagramme, vous devez utiliser la notation graphique présentée dans les diapositives
« Modèle relationnel ». Vous devez avoir au minimum trois exemples de tuple pour chacune
des relations (tables).

5
Objectif 3 : Développement SQL .

Cette partie du projet consiste à réaliser concrètement votre projet dans un SGBD. Vous devez
produire tous les scripts permettant la réalisation de votre projet avec MySQL. On vous demande de :
vous familiariser avec le SGBD MySQL;

➢ respecter l’essentiel de vos efforts de conception tout en y ajoutant les éléments essentiels
à la réalisation
• Correction de votre modèle selon les dernières indications de votre schéma
relationnel ;
• ajustement des clés primaires et étrangères si nécessaire;
• ajouter des objets de bases de données lorsque nécessaire (indexes, vues, requêtes
préparées, procédures stockées, déclencheurs, etc.)
➢ créer tous les scripts SQL nécessaires à la réalisation de votre projet (scripts clairs et bien
documentés);

Livrables

Vous devez produire un fichier de format ZIP qui doit contenir les trois fichiers suivants :

1. fichier creation.sql : ce fichier doit contenir le script permettant de créer TOUS les éléments
de votre projet (n’oubliez pas que vous devez d’abord effacer tout existence d’objets
existants au préalable) :
• tables;
• attributs;
• contraintes, etc.

2. fichier insertion.sql : ce fichier doit contenir le script permettant toutes les insertions des
données tests de votre projet.
3. fichier requetes.sql : ce fichier doit contenir toutes les requêtes demandées.

Contraintes spécifiques

On vous demande de populer votre base de données. Il s’agit de faire les insertions nécessaires
permettant de faire des tests sur la base de données. On vous demande d’insérer au moins 5
enregistrements par table (3 enregistrements par table de liaison pour les associations n vers n). Il
est essentiel que les données ajoutées soient cohérentes avec le projet et entre chacune d’elle.
L’objectif est de donner un exemple concret de ce que pourrait avoir l’aire votre base de données.

➢ On vous demande d’ajouter un script contenant les requêtes. Ce script doit inclure les 10
requêtes suivantes :
• les 5 requêtes que vous avez décrites dans le premier objectif;
• une requête supplémentaire pertinente faisant un calcul sur le temps;
• une requête supplémentaire pertinente utilisant les 2 clauses du langages SQL;

Vous aimerez peut-être aussi