Professeur responsable

Wassim Bouachir

Objectifs

Se familiariser avec les notions de base des systèmes de gestion de bases de données (SGBD), plus particulièrement avec les composantes du modèle relationnel, la création de tables et la manipulation des données à l'aide du langage SQL et la conception d'un schéma de données à partir d'un modèle du domaine.

À la fin du cours, être capable de décrire les composantes et la fonctionnalité d'un système de gestion de bases de données (SGBD); d'identifier les différents éléments du modèle relationnel de bases de données; d'appliquer des opérations de manipulation des données et utiliser le langage SQL pour la définition et la manipulation d'une base de données relationnelle ainsi que pour la définition de vues et de contraintes d'intégrité; de participer à la définition d'un modèle de base de données relationnelle pour un domaine à partir de son diagramme de classes; de faire une description globale des différents types de bases de données existantes : relationnel, objet, objet-relationnel, déductif, etc.

Contenu

Le cours se découpe en six modules. Le premier module présente l'évolution de la gestion des données et décrit l'architecture des systèmes de gestion de bases de données (SGBD) modernes. Le deuxième module présente les différents éléments du modèle relationnel. Le troisième module explore le langage de description et de manipulation de données SQL2. Le quatrième module est consacré aux principes et aux techniques pour traduire un diagramme de classes en un modèle de base de données relationnelle et affiner le modèle ainsi obtenu. Le cinquième module propose un survol des autres types de bases de données.

Description

Les objectifs sont également les suivants :

  • distinguer les différents niveaux et les éléments de l'architecture ANSI/SPARC des SGBD;
  • élaborer un schéma de données relationnel pour répondre à un besoin particulier de stockage et de récupération d'informations;
  • utiliser l'algèbre relationnelle pour exploiter un schéma de données;
  • identifier et d'exprimer les contraintes référentielles, d'entité et de domaine sur un schéma de données;
  • créer et d'exécuter des requêtes sur une base de données en utilisant notamment des expressions de projection, de jointure, de sélection et d'union;
  • capturer les besoins des utilisateurs d'un domaine d'application et d'élaborer un schéma conceptuel d'une base de données pour supporter des applications informatiques répondant à ces besoins;
  • utiliser la méthode UML/R pour passer d'un schéma conceptuel exprimé en UML au schéma relationnel logique correspondant;
  • appliquer des techniques d'affinement du schéma logique, notamment par l'analyse des dépendances fonctionnelles;
  • énoncer quelques perspectives dans le domaine des bases de données.

Le cours se découpe en six modules. Les cinq premiers modules visent l'acquisition de connaissances alors que le sixième propose des activités de préparation à l'examen sous surveillance.

Module 1 : L'architecture des SGBD
Il présente l'évolution de la gestion de données et décrit l'architecture fonctionnelle et opérationnelle des systèmes de gestion de bases de données modernes, notamment les différents niveaux d'abstraction de cette architecture et les éléments correspondant à chaque niveau.

Module 2 : Le modèle relationnel
Il traite du sujet central du cours, soit le modèle relationnel d'un SGBD, qui reste le modèle le plus utilisé dans l'industrie. Le module aborde les divers éléments du modèle relationnel, la définition de tables, de contraintes, de vues et de règles d'intégrité dans le modèle ainsi que la manipulation des données à partir des notions de l'algèbre relationnelle et des opérations ensemblistes.

Module 3 : Le langage SQL
Le langage de définition et de manipulation de SGBD relationnel le plus utilisé à date est le langage SQL. Ce module présente ce langage et propose son appropriation par l'utilisation du logiciel MySQL.

Module 4 : La conception des bases de données
Dans les dernières décennies, l'industrie a adopté, pour la modélisation d'un domaine d'application, l'approche objet et plus précisément UML, le langage de modélisation unifiée standard proposé par l'OMG, l'Object Management Group. Le module 4 propose, d'une part, une méthode pour concevoir une base de données relationnelle à partir de diagrammes UML, et, d'autre part, des techniques de normalisation de tables et d'analyse de dépendances fonctionnelles pour affiner le schéma obtenu.

Module 5 : Au-delà des bases de données relationnelles
Si le modèle relationnel reste le plus utilisé pour les SGBD, il n'est pas le seul. Ce module s'intéresse à d'autres approches. Il traite du modèle objet, de l'objet relationnel et des bases de données déductives et il introduit des nouvelles perspectives telles que les entrepôts de données, les bases données multimédias ou encore la persistance des informations sur le Web.

Module 6 : La préparation à l'examen
Il propose des stratégies pour revoir la matière étudiée dans les cinq premiers modules pour vous préparer à l'examen sous surveillance.

Matériel didactique

Le matériel didactique comprend un manuel, Bases de données, de G. Gardarin, 2003, et un site Web.

Liste des documents expédiés

Renseignements technologiques

Le cours nécessite un accès à Internet ainsi que l'utilisation du logiciel Adobe Reader.

La configuration minimale d'un ordinateur personnel pour suivre le cours est la suivante : le système d'exploitation Windows (XP ou plus) ou Mac OS (10.4 ou plus), un fureteur (Safari 4 ou plus pour Mac, Firefox 2.0 ou plus pour Mac/PC ou Internet Explorer 7.0 ou plus pour PC), une adresse de courrier électronique.

Encadrement

L'encadrement est individualisé et assuré par une personne tutrice. Les communications se font par courrier électronique.

Évaluation

L'évaluation repose sur quatre travaux notés (15 %, 25 %, 15 % et 10 %) et un examen sous surveillance (35 %).

Description détaillée de l'évaluation

Travail pratique 1 : Créer un schéma de données relationnel et utiliser des opérations de l'algèbre relationnelle sur ce schéma pour répondre à différentes requêtes.

Travail pratique 2 : Avec le langage SQL, définir une base de données, insérer des données et réaliser des requêtes sur la base.

Travail pratique 3 : Concevoir et affiner un schéma d'une base relationnelle, à partir d'un modèle UML.

Travail pratique 4 : Faire une analyse et proposer un exemple sur un type particulier de bases de données.

Examen sous surveillance : Répondre aux questions conceptuelles et réaliser des exercices pratiques. L'examen couvre toute la matière du cours.