GPA775 EnonceProjet
GPA775 EnonceProjet
GPA775 EnonceProjet
Projet de session
Introduction
Les laboratoires du cours vous permettront de créer votre propre projet de base de données. Vous aurez
ainsi un seul projet qui se déroulera tout au long de la session. Ce dernier permettra de couvrir plusieurs
étapes de créations d’une base de données en passant de la conception à la réalisation.
Contraintes générales
Projet de session
• 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, car vous y passerez beaucoup de temps. Par
exemple, vous pouvez mettre en place:
o une solution pour une problématique qui vous tient particulièrement à cœur;
o un projet lié à un club étudiant;
o un projet lié à l’entreprise où vous faites un stage;
o un projet d’affaires que vous voulez démarrer;
o le prototype d’un concept que vous avez;
o une base de données liée à un sujet que vous aimez (musique, sport, art, science, techno,
histoire …)
o …
• Au plus tard la deuxième semaine de laboratoire, vous devez obligatoirement faire valider le sujet
de votre projet par le chargé de laboratoire. Ce dernier se réserve le droit de :
o refuser ou accepter votre projet;
o vous proposer quelques modifications afin d’augmenter ou de réduire sa taille.
• Vous ne pouvez pas changer de projet pendant la session.
Projet d’équipe
• Le projet se fait en équipe de 2 personnes.
• Vous ne pouvez pas changer d’équipe pendant la session.
• 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.
• Exceptionnellement, si le nombre d’étudiants inscrits au cours est impair, un groupe de trois
étudiants devra être créé. Néanmoins, une équipe de trois étudiants devra réaliser un projet de
plus grande envergure. Les différences sont présentées dans le document là où elles s’appliquent.
Contraintes techniques
• Vous devez utiliser les outils technologiques imposés. Principalement :
o le modèle entité-association;
o le modèle relationnel;
o l’usage de MySQL comme SGBD.
Responsabilisation
Tout au long de la session, 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.
Recommandations
• Ce projet est une excellente opportunité pour se pencher sur un système de gestion
d’information. Même s’il est généralement assez facile de réaliser un tel projet sans trop d’effort,
il est beaucoup plus difficile d’en faire une bonne modélisation ainsi qu’une implémentation
adéquate qui tient compte des nuances et subtilités que l’on retrouve dans un vrai projet.
• C’est pourquoi on vous encourage à constamment échanger entre les membres de l’équipe. Ces
échanges permettent d’apporter des points de vue différents et souvent des discussions
pertinentes.
• Il est aussi essentiel de partager ces échanges avec le chargé de laboratoire. Ce dernier possède
une plus grande expérience qui vise à vous orienter vers des réflexions qui vous permettront
d’ajouter de la profondeur à votre projet.
• Sachez que l’évaluation du projet est grandement orientée vers le niveau de profondeur qui
montre clairement une réflexion sur les nuances de la problématique.
Objectifs globaux
Le but du projet de session 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:
• Laboratoire 1
o Identification d’un besoin.
o Rédaction d’un devis.
o Conception et modélisation d’un modèle de données externe (modèle EA).
o Documentation.
• Laboratoire 2
o Conception d’un modèle de données interne (processus de transformation du modèle EA
vers le modèle MR).
o Normalisation.
o Documentation.
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
Vous devez produire un rapport en format PDF qui contiendra :
Contraintes spécifiques
• Vous devez pousser les concepts autant que possible et tenter d’utiliser les notions du modèle
entité-association-étendu.
• Votre modèle doit contenir un minimum de 18 entités pour les équipes de deux étudiants ou 24
entités pour les équipes de trois étudiants.
• Pour le diagramme EA, vous devez utiliser la notation graphique de la page suivante.
• Vous avez 4 périodes de laboratoire pour réaliser ce premier mandat.
Critères d’évaluation
1. Introduction / 10
2. Description fonctionnelle / 20
3. Usagers /5
4. Modèle entité-association / 30
Définition des entités /5
Dictionnaire des données / 10
5. Exemple de requêtes / 20
XYZ
Entité faible
Association
abc Attribut
Entité 1 Entité 2
min1..max1 min2..max2
Association
u rôle rôle t
Exemple
Professeur
Numéro d assurance social
Nom
Prénom
Genre Département
Date de naissance
0..n
Nom
Âge 1..1
ProfDepart Sigle
Adresse( u est assigné au département a comme professeurt
Description
No civique(
No de rue, Rue, Date d assignation
No d appartement),
Ville, Pays, Code postal)
Courriel(nom, courriel)
On vous demande de :
Livrables
Vous devez produire un rapport en format PDF qui contiendra :
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 » à la page 16 nommé « représentation structurelle avec exemple
d’instance ». Vous devez avoir au minimum trois exemples de tuple pour chacune des relations
(tables).
• Vous avez 3 périodes de laboratoire pour réaliser ce deuxième mandat.
On vous demande de :
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;
• indexes;
• vues;
• requêtes préparées;
• procédures et fonctions stockées;
• déclencheurs.
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
• Suite à votre travail de conception, on vous demande d’ajouter certains objets SGBD. C’est à vous
de déterminer quels sont les objets les plus pertinents pour votre projet. L’évaluation finale
Critères d’évaluation
1. Script de création (création de tous les objets) / 40
2. Script d’insertion (nombre d’enregistrements requis et pertinence) / 10
3. Script des requêtes (les 10 requêtes) / 30
4. Qualité des scripts (lisibilité et documentation) / 5
5. Présentation / 15