Conception relationnelle

Se connecter pour s'inscrire

Votre progression

Continuez pour débloquer la suite !
0 / 0 étapes complétées 0
%

Syllabus

  1. Description

  2. Objectifs

  3. Validations de compétences

  4. Public cible

    Aucun public cible spécifié pour ce module.

  5. Besoins techniques

  6. Prérequis

    • Aucun prérequis
  7. Niveau

  8. Historique du module

    Aucune action enregistrée

Conception de bases de données relationnelles

Construire un modèle relationnel qui reflète le métier, respecte les contraintes et reste compréhensible par les développeurs et les utilisateurs.

À la fin du cours

  • Passer des règles métier à un MCD puis à un MLD.
  • Choisir des clés, relations et types adaptés.
  • Normaliser sans perdre les informations utiles.
  • Écrire des requêtes, contraintes et tests de cohérence.

Organisation

Le cours suit le modèle conceptuel, les contraintes, la normalisation et les requêtes.

Prérequis : Notions de tables, clés étrangères et requêtes SQL de base.

Du métier au modèle

Identifier les entités, leurs attributs, les règles et les relations avant de créer une table. Une relation many-to-many se matérialise généralement par une table associative avec ses propres règles.

Nommer les concepts métier plutôt que les détails techniques. Le modèle doit permettre de comprendre les règles sans connaître le nom d’une colonne.

client 1—N commande 1—N ligne_de_commande N—1 produit
Point de contrôle : Chaque entité et chaque relation possède une règle métier documentée.

Clés et contraintes

Choisir une clé primaire stable, indépendante de la clé naturelle quand elle peut changer. Les clés étrangères expriment les dépendances et les suppressions doivent être explicites.

Ajouter NOT NULL, CHECK, UNIQUE et(length) selon le sens métier. Une contrainte au bon endroit protège les données même lorsque plusieurs applications écrivent.

CREATE TABLE account (id BIGINT PRIMARY KEY, email VARCHAR(255) NOT NULL UNIQUE);
Point de contrôle : Les règles critiques sont garanties par la base et non seulement par un formulaire.

Normalisation et équilibre pragmatique

La normalisation élimine la duplication et les incohérences. Ne pas dénormaliser sans mesurer : la performance peut justifier une copie contrôlée, documentée et actualisée.

Distinguer la forme normale, les données historiques et les valeurs calculées. Une vue peut simplifier les lectures sans casser le modèle d’écriture.

Méthode

  1. Identifier les dépendances fonctionnelles.
  2. Décomposer les groupes répétitifs.
  3. Vérifier les lectures les plus fréquentes.
Point de contrôle : Une donnée saisie à un seul endroit ne crée pas de divergence silencieuse.

Requêtes et tests

Écrire des requêtes lisibles avec jointures explicites, agrégations et conditions de sécurité. Tester les résultats attendus, les doublons, les valeurs nulles et les suppressions.

Documenter le MCD, le MLD et les raisons des choix. Le modèle doit pouvoir évoluer sans que chaque développeur devine une intention cachée.

SELECT c.id, SUM(l.total) FROM customer c JOIN invoice l ON l.customer_id = c.id GROUP BY c.id;
Point de contrôle : Une requête de lecture est accompagnée d’un jeu de données et d’un résultat attendu.

Livrables et validation

Le livrable doit montrer une compréhension personnelle, des choix explicités et une vérification par un cas de test ou une procédure reproductible.

  • Un MCD et un MLD versionnés.
  • Un script de création avec contraintes et index.
  • Un dictionnaire de données et des choix justifiés.
  • Des requêtes métier et des tests de cohérence.
Critère de réussite : Le modèle est validé quand les règles métier sont garanties par des contraintes, les lectures sont testées et la duplication critique est supprimée.

Exercices, examens et projets

Exercice

Modélisation relationnelle

Concevoir un modèle normalisé et ses contraintes.

Obligatoire Consulter
Examen

Examen modèle relationnel

Évaluer normalisation, intégrité et requêtes.

Obligatoire Consulter
Projet

Projet modèle

Livrer un modèle de données et sa documentation.

Livrables :

  • MCD
  • MLD
  • Contraintes
Obligatoire Consulter