Accéder au contenu principal

CORRIGE TYPE DE L'EMD DE « Bases de données », S4, 2012-2013, 2e année GSI


Questions de cours : (répondre en deux ou trois lignes au max) (5 pts)

1 – Qu'est-ce qu'une « Base de données » ? Qu'est-ce que SGBD ? (1 pt)

Une base de données, c'est l'ensemble des données nécessaires au bon fonctionnement d'une entreprise, ensemble cohérent, intégré, partageable, et géré par un SGBD.

Un SGBD est un logiciel qui gère une base de donnée ; il a pour charge d'exécuter des tâches très diverses telle l'exécution de requêtes d'interrogation des données, le contrôle des accès concurrents, la reprise après panne, ...

2 – Quelles différences y a-t-il entre « Fichier de données », « Banque de données » et Base de données » (1 pt)

Un fichier de données est l'ensemble des données homogènes propres à une application tel le fichier électoral ou des abonnés au téléphone.
Dans une base de données, ces dernières sont hétérogènes mais liées entre elles.
Enfin une banque de données, c'est l'ensemble des informations propres à un domaine particulier tels la banque des données médicales, juridiques

3 – Qu'entend-t-on par « indépendance physique par rapport aux données (1 pt)

L' indépendance physique signifie qu'on peut modifier des informations liées au stockage des données ou aux moyens d'y accéder (chemin d'accès) sans que cela ne remette en cause la structuration des données. Par exemple, si on ajoute un indexe à une table, cela n'affectera pas les programmes ou requêtes qui utilisent cette table sinon qu'il ajoute en rapidité.

4 – Qu'est-ce que « l'indépendance logique » vis à vis des données (1 pt)

L'indépendance logique veut dire qu'on peut voir les données de différentes façons. Tous les utilisateurs ne voient pas toutes les données : un chef de personnel s'intéressera aux heures de vacations des enseignants alors que le service de scolarité s'intéressera aux notes des étudiants, les informations sur les étudiants et leurs notes ainsi que celles relatives aux enseignants et leurs heures de vacations faisant toutes partie de la même base de données.

5 – Une dépendance fonctionnelle traduit « un fait du monde réel ». Expliquez sur un exemple. (1 pt)

Cette phrase signifie qu'une dépendance fonctionnelle représente quelque chose de réel (qui existe en soi) dans le domaine à modéliser indépendamment de toute modélisation. Si on dit que le nom de pays détermine le nom de la capitale, c'est parce qu'il en est ainsi dans la réalité. Il y a une dépendance fonctionnelle Pays → capitale.

Exercice 1 : (5 pts)1

Une personne désire modéliser le système d’information correspondant aux réceptions qu’elle organise (personnes invitées, menus, ...). Ce système d’information doit lui permettre, entre autres choses, de pouvoir l’aider à organiser une réception en lui offrant la possibilité de construire sa liste d’invités, ainsi que son menu et les boissons associées. Une réception a lieu à une date donnée et y sont invitées des personnes dont on connaît le nom, le prénom, le sexe, l'âge et la profession (l’identification d’une personne se fait par son nom et son prénom). Le repas servi lors d’une réception comprend un certain nombre de plats identifiés par leur nom ("Mtouwam bel kouirât" par exemple) et leur nature ("plat principal", " dessert " par exemple). Pour pouvoir réussir un menu, il faut que les boissons servies soient en accord avec les plats. On dispose donc pour chaque plat d’une liste de types de limonades ou jus possibles caractérisés par leur marque ("Hammoud Boualem" par exemple) et un type ("Jus d'orange", "Selecto" par exemple). Pour que la réception soit réussie, il faut éviter qu’une dispute vienne gâcher l’événement et pour se faire la connaissance des amitiés et inimitiés entre personnes est primordiale. Enfin le dernier ingrédient d’une réception réussie est d’offrir au menu des plats que les invités apprécient et surtout d’éviter de leur servir des plats qu’ils n’aiment pas.

Représenter par un diagramme entité-association le schéma de la base de donnée modélisant la situation précédente.

LA SOLUTION SERA SCANNEE ET AJOUTEE ULTERIEUREMENT.

Exercice 2 : (5 pts)

On souhaite construire une base de données gérant des revues et les articles de ces revues. Une revue est caractérisée par un nom et une périodicité. Chaque revue parait sous la forme de numéros, chaque numéro étant identité par un nombre relatif à la revue et à l'année en cours (ex. le numéro 12 de Linux Magazine en 2003 est différent du numéro 12 de Linux Magazine en 2004). Un numéro est également caractérisé par un nombre de pages. Chaque numéro contient des articles écrits par un ou plusieurs auteurs. Un auteur est caractérisé par un nom, un prénom, ainsi qu'un email. Chaque article possède un titre et un contenu. Un même article peut apparaître dans plusieurs numéros d'une même revue ou de différentes revues. Lorsqu'un article apparaît dans un numéro d'une revue, il a une page de début et une page de fin. Un article peut faire référence à d'autres articles, en précisant le numéro et la revue dans lesquels l'article référencé a été publié.

La base de données doit permettre de répondre à des requêtes telles que "Combien de numéros de Linux Magazine sont parus en 2004 ?", "Quels sont les titres des articles parus dans au moins deux revues différentes ?", "Quels sont les auteurs ayant publiés dans le numéro 3 de la revue L'Histoire en 2004 ?" etc.

Proposez un schéma relationnel, en le construisant de façon intuitive, qui modélise la base de données désirée.


Solution :

Revue (Nom, Préiodicité)
Articles(N°Art, titre, contenu)
NumérosRevues(NomR*, année, numéro, NbrePages)
Auteurs(nom, prénom, email)
AuteurArticle(emailAuteur*, N°art*)
ArticleRevue(N°Art*, nomR*, année*, numéro*, pageDébut, pageFin)
RéférencesArticles(N°ArtRéférençant*, N°ArtRéférencé*, nomR*, année*, numéro*)

L'étoile signifie que l'attribut est une clé étrangère, le soulignement désigne l'a clé.

Exercice 3 : (5 pts)

1 – Expliquez ce que sont les 1ère, 2e et 3e formes normales. (2 pts)

Une relation est en 1ère forme normale si tous les attributs sont atomique, c'est à dire : simple (pas d'attribut complexe) et mono-valués (un attribut a une valeur unique).
Une relation est en 2e FN si elle est en 1ère FN et si aucune partie de la clé ne détermine un attribut non clé.
Enfin la 3e FN consiste en ce que dans une relation déjà en 2e FN, aucun attribut non clé ne détermine un autre attribut non clé.

2 – Donnez un exemple de relation qui ne vérifie pas la 1ère forme normale ? Expliquez. (1 pt)

La relation personne(N°SS, nom, prénoms) n'est pas en 1ère FN car l'attribut prénoms peut avoir plus d'une valeur (plusieurs prénoms). L'attribut prénoms est multi valué donc non atomique.

3 - Donnez un exemple de relation qui ne vérifie pas la 2e forme normale ? Expliquez. (1 pt)

La relation Livre (Titre, Editeur, PaysEditeur, NbreEditions). Dans cette relation, l'Editeur (faisant partie de la clé) détermine le pays de l'Editeur (ne faisant pas partie de la clé).

4 - Donnez un exemple de relation qui ne vérifie pas la 3e forme normale ? Expliquez. (1 pt)

La relation AdressePersonne(N°Personne, N°rue, Rue, Ville, Wilaya) n'est pas en 3e FN car l'attribut Ville qui n'est pas un attribut clé détermine l'attribut Wilaya lui aussi non clé.


Remarque :

Compte tenu des circonstances qui ont entravé le bon avancement du cours de BD, le module sera reprogrammé l'an prochain pour les L3 GSI en S1.
Le présent examen a été exigé par l'administration pour pourvoir valider l'année.
La note de TD également nécessaire sera remplacée par la note des deux exercices pour lesquels l'étudiant récoltera le plus de points rapportée à 20.



1 Cet exercice et celui qui le suit sont emprunté à deux sources différentes sur le net.

Commentaires

Posts les plus consultés de ce blog

Sujet de l'examen d'algorithmique 2020-2021 de l'université de Blida avec corrigé et solutions sous Lazarus

 Cliquez sur le lien et téléchargez : 1 - Le sujet de l'examen 2 - La solution 3 - Les exos 1 et 2 ainsi que la 2e partie de l'exo 4 alternatif sous forme de projet Lazarus zippés. Les autres exercices sont assez simples et pourraient être ajoutés ultérieurement.

Cours sur les piles

La 1ère partie du cours sur les piles est disponible au format Word. La première vidéo expliquant le cours sera en ligne dans un moment. Je vous ai mis également un projet Calc (compressé) qui implémente une mini calculatrice utilisant le code post fixé expliqué en cours. Ce projet vous sert d'assiette pour faire votre partie qui ne consiste qu'à implémenter la transformation de l'expression arithmétique au format usuel en une expression arithmétique en forme post fixée puis à lancer l'évaluation. Je ferai d'ici demain soir une vidéo expliquant le projet pas à pas et je vous la posterai sur ma chaîne youtube aussitôt.   Lien du répertoire contenant tous les cours et projets