Module d’Enseignement à Distance pour l’Architecture Logicielle

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Access Frédéric Gava (MCF)
Distance inter-locuteur
Story-board version 1.1 Statut : à valider Rédacteur : Nicole Djuissi
Les numéros
Introduction Pour concrétiser l’enseignement assisté par ordinateur
JXDVDTEK – Une DVDthèque en Java et XML
Module d’Enseignement à Distance pour l’Architecture Logicielle
Le Modèle Logique de Données
Introduction à la logique
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Programme Introduction aux BD et aux SGBD Le modèle relationnel
La législation formation, les aides des pouvoirs publics
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Initiation aux bases de données et à la programmation événementielle
LE LANGAGE SQL : LDD La création de tables L’ordre CREATE CREATE TABLE nom_de_table (Nom_colonne Type_colonne, Nom_colonne Type_colonne,
Initiation au système d’information et aux bases de données
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Les contraintes d’integrité
Initiation au système d’information et aux bases de données
Développement d’applications web
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
le profil UML en temps réel MARTE
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Algorithmique et Programmation
Initiation à la conception de systèmes d'information
Présentation générale
Initiation aux bases de données et à la programmation événementielle
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Introduction à la conception de Bases de Données Relationnelles
Le drapeau canadien comme symbole de fierté nationale : une question de valeurs partagées Jack Jedwab Association détudes canadiennes 28 novembre 2012.
Chap 4 Les bases de données et le modèle relationnel
Si le Diaporama ne s'ouvre pas en plein écran Faites F5 sur votre clavier.
Recherche Documentaire et traitement de l’information
L’utilisation des bases de données
Cas pratique : Interim.
Logiciel gratuit à télécharger à cette adresse :
MODELE RELATIONNEL concept mathématique de relation
1.Un rang de données multicolores 2. Deux permutations des n premiers entiers 3. b permutations des k premiers entiers 4. Choix de n points dans [0,1]
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
1.1 LES VECTEURS GÉOMÉTRIQUES
1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Cours de Base de Données & Langage SQL
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Module d’Enseignement à Distance pour l’Architecture Logicielle
Excel (Partie 2).
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1 INETOP
Initiation aux bases de données et à la programmation événementielle
Initiation à la conception des systèmes d'informations
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Les fondements constitutionnels
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Nom:____________ Prénom: ___________
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Algorithmique et programmation (1)‏
DOSSIER G10 – La base de données Relationnelle
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
1 Initiation aux bases de données et à la programmation événementielle Cours N°8 : Gestion de la cohérence avec des zones de liste déroulantes. Souheib.
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Introduction Module 1.
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
Transcription de la présentation:

Module d’Enseignement à Distance pour l’Architecture Logicielle M.E.D.A.L. Les paradigmes Le modèle relationnel (3) Module d’Enseignement à Distance pour l’Architecture Logicielle Diapositive n° 1 Université de NANTES Alain VAILLY

AVERTISSEMENT L’usage de ce document, sous quelque forme que ce soit (électronique, papier…), à titre personnel ou devant des étudiants, est autorisé et libre de droits, à la condition expresse qu’il soit conservé dans l’état (et notamment qu’il comporte la page de garde et cet avertissement). Tout autre usage, notamment commercial, toute diffusion via un serveur informatique, une liste de diffusion… est soumis à l’accord PRÉALABLE de son auteur. Ce document constitue un TOUT. Toute coupe, toute modification non autorisée par son auteur sera assimilée à une atteinte aux droits de l’auteur et poursuivie comme telle devant les tribunaux. Diapositive n° 2 Université de NANTES Alain VAILLY

Projet ENRC DVD MIAGE Projet soutenu par le Conseil Régional des Pays de La Loire dans le cadre des projets ENRC 2007-2008 Thématique : Passerelles vers et dans l’enseignement supérieur Diapositive n° 3 Université de NANTES Alain VAILLY

Corrigés des exercices M.E.D.A.L. Cours magistral Evaluation Références MEDAL Contexte Exercices Corrigés des exercices Etudes de cas Auto-évaluation Diapositive n° 4 Université de NANTES Alain VAILLY

- le modèle relationnel M.E.D.A.L. informations fonctions PLAN comportements 1) Introduction 2) Notions de base Cours magistral 3) Normalisation et décomposition 4) Utilisation de relations - le modèle E-A-P 5) Conclusion - le modèle relationnel - les réseaux de PETRI - les modèles de traitement de Merise Diapositive n° 5 Université de NANTES Alain VAILLY

Cours magistral PLAN M.E.D.A.L. 1) Introduction 2) Notions de base 4) Utilisation de relations 2.1) Notions de domaine, d’attribut 2.2) Notion de relation 2.3) Notions de clés 2.4) Notion de dépendance 4.1) Mise en évidence 4.2) Implémentation 4.3) Algèbre relationnelle 3) Normalisation et décomposition 3.1) Normalisation 3.1.1) Intérêt de la normalisation 3.1.2) Formes normales 3.2) Décomposition 3.2.1) Notions complémentaires 3.2.2) Autres dépendances 3.2.3) Algorithmes de décomposition fonctionnelle PLAN 4FN maxi. 5) Conclusion multi-valuée Il y en a d’autres. Diapositive n° 6 Université de NANTES Alain VAILLY

0) Rappels Déjà vu : Encore à découvrir : M.E.D.A.L. - définition des relations, - mise en évidence des dépendances, - relation, attribut, domaine, - choix des attributs, - dépendance fonctionnelle, - algèbre relationnelle, - dépendance multi-valuée, - SGBD vs tableur style Excel, - couverture/fermeture, - introduction aux modèles conceptuels, - normalisation, décomposition, - ... - ... Encore à découvrir : Diapositive n° 7 Université de NANTES Alain VAILLY

M.E.D.A.L. 0) Rappels Tous les exemples de cette présentation sont tirés du même contexte, celui de la création d’une base de données entomologiques et philatéliques. 3 volets sont développés : - volet « animaux », - volet « observations », Contexte - volet « timbres ». Diapositive n° 8 Université de NANTES Alain VAILLY

L’entomologie n’est, ici, qu’un moyen, aucunement un but. M.E.D.A.L. Contexte (2) 0) Rappels AVERTISSEMENT : Les informations contenues dans la base de données que nous évoquons ont été choisies sur des critères pédagogiques. L’entomologie est passée au second plan. Nous savons, par exemple, parfaitement que le nom vernaculaire d’un papillon ne peut, en général, pas servir de clé, tant les appellations locales sont nombreuses. Notre objectif n’est pas de faire de nos étudiants informaticiens de futurs Jean Henri Fabre, mais de les sensibiliser aux problèmes que l’on doit surmonter lorsque l’on conçoit une base de données. L’entomologie n’est, ici, qu’un moyen, aucunement un but. Jean Henri Fabre, entomologiste français, né en 1823 à Saint Leons, dans l’Aveyron. Célèbre comme écrivain vulgarisateur, il est l’auteur des Souvenirs entomologistes. Diapositive n° 9 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. dans cette partie du cours Il y a d’autres choses que les attributs à récupérer. 4) Utilisation de relations La représentation d’un problème, quel qu’il soit, directement sous forme de relations est possible. On distingue généralement plusieurs étapes : - recueil des attributs, enquête - recueil des dépendances entre attributs, - structuration en relations, - normalisation et décomposition. Si les deux premières taches se font surtout en discutant avec l’utilisateur, les deux dernières sont purement mécaniques, algorithmiques. déjà vu synthèse Diapositive n° 10 Université de NANTES Alain VAILLY

Pour définir une relation, il faut réunir des informations sur : M.E.D.A.L. 4) Utilisation de relations 4.1) Mise en évidence Pour définir une relation, il faut réunir des informations sur : - ses attributs, - les domaines de valeur de ceux-ci, - les contraintes qui pèsent sur eux. Il faut également définir (ie. rédiger) le prédicat associé à la relation, puis définir la clé. Il faut, enfin, normaliser cette relation et, le cas échéant, la décomposer en relations plus petites, plus « normales » et donc plus « propres ». Diapositive n° 11 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Je veux tout ! Choisir l’ensemble des attributs est LA tache difficile par excellence. Cette activité oblige à des compromis entre : Il faut saisir tout ça ? - les demandes des utilisateurs « prescripteurs », - les demandes des utilisateurs « utilisateurs », - le temps imparti pour la définition du logiciel, - la place mémoire, - ... Y-a plus de place sur le disque ... Vite, on est en retard ! Il faut juste le nécessaire ! Diapositive n° 12 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Que veut-on ? Pilotage par le but, par la solution Il y a deux techniques principales, opposées … mais que l’on a intérêt à associer. La première consiste à partir des objectifs, à recenser les informations souhaitées et à en faire des attributs. La seconde consiste à rassembler toutes les informations disponibles sur le sujet, à enlever celles qui sont inutiles et à en faire des attributs. Pilotage par l’existant, par le problème Qu’est-ce qu’on a ? Il faut les deux ! Diapositive n° 13 Université de NANTES Alain VAILLY

Hypothèse : ce type de fiche correspond à un bon point de départ. M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple Selon I. Novak et F. Severa, une collection de papillons n’a de valeur scientifique que si chaque exemplaire qu’elle contient est accompagné d’une étiquette correctement rédigée. Voici deux exemples d’étiquettes correctes : France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. Suisse : Grisons Col de l’Albula Haute Engadine (2312m) 20 VII 1979 Emmanuel de Bros leg. Hypothèse : ce type de fiche correspond à un bon point de départ. legit : a récolté, en latin Diapositive n° 14 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, endroit France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. Diapositive n° 15 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, date endroit France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. Diapositive n° 16 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, date endroit France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. nom, prénom Diapositive n° 17 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, date endroit France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. nom, prénom type Diapositive n° 18 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. adresse 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, date endroit France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. nom, prénom type Diapositive n° 19 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. adresse 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) date endroit Ce fameux « faux » papillon date de 1702 ! Après avoir peint des taches sur les ailes d’un Souffré, le collectionneur déclara avoir affaire à une nouvelle espèce, décrite sous le nom de Papilio ecliptis. France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. nom, prénom type Diapositive n° 20 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) Cette liste des attributs définie, il faut passer en revue chaque élément pour vérifier s’il est vraiment utile. Il faut aussi définir précisément chaque attribut. France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. Diapositive n° 21 Université de NANTES Alain VAILLY

En dernier ressort, c’est toujours l’utilisateur qui décide. M.E.D.A.L. 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) Cette liste des attributs définie, il faut passer en revue chaque élément pour vérifier s’il est vraiment utile. Il faut aussi définir précisément chaque attribut. France : Vaucluse Mont Ventoux Jas du Mourre (1040m) 4 VI 1975 Gérard Chr. Luquet leg. Cet attribut « endroit » est composé sur l’étiquette de 5 éléments. Faut-il le garder comme un élément unique ou bien faut-il le transformer en 5 attributs élémentaires ? En dernier ressort, c’est toujours l’utilisateur qui décide. Diapositive n° 22 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. Type : attribut présentant la nature de l’endroit où s’est effectuée l’observation. 4) Utilisation de relations 4.1.2) Mise en évidence des domaines Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) Quelles valeurs pour l’attribut ? Quel sens ? Quel type ? ça dépend ! Diapositive n° 23 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.2) Mise en évidence des domaines Exemple Le type de cet attribut va dépendre de ce que l’on veut faire. pas pratique ; « gourmand » en ressources pictogramme code libellé choix significatif ; pas pratique pratique ; non significatif Diapositive n° 24 Université de NANTES Alain VAILLY

Cet attribut peut même transformé en une relation ! M.E.D.A.L. 4) Utilisation de relations 4.1.2) Mise en évidence des domaines Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) SYMBOLES (Cod-Typ, Libellé, Pictogramme) LIBELLE PICTOGRAMME COD-TYP Bois de conifères 01 Bois de feuillus 02 Cet attribut peut même transformé en une relation ! Prairies sans arbres (humides ou sèches) 03 Parcs, prairies avec arbres 04 Montagnes 05 Diapositive n° 25 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.2) Mise en évidence des domaines Exemple SYMBOLES (Cod-Typ, Libellé, Pictogramme) LIBELLE PICTOGRAMME COD-TYP image, format jpg chaîne (50) de caractère {n  N+, n < 13} intension {01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12} extension Diapositive n° 26 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.3) Mise en évidence du prédicat Une fois cet ensemble d’attributs constitué, il va falloir le normaliser (on appliquera pour cela les techniques vues précédemment). Auparavant, il faut vérifier sa cohérence sémantique en REDIGEANT le prédicat. C’est un élément indispensable de la relation. Avoir des difficultés à le définir doit attirer l’attention de l’architecte sur une vraisemblable incohérence au niveau de l’ensemble (c’est un signal d’alerte fort, à ne pas négliger). Diapositive n° 27 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. e 4) Utilisation de relations 4.1.3) Mise en évidence du prédicat c Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) OBSERVATIONS (A1, A2, A3, A4, A5, A6, A7) f d g a b Le papillon <g> a été vu à l’endroit <a>, le <b>, par <c d>, qui réside à l’adresse <f> ; cet endroit <a> est de type <e>. Le papillon <g> a été décrit par <c d>, habitant à <f>, le <b>. Il vit le plus souvent en <a>, habitat de type <e>. Le papillon <g> a disparu de tout habitat de type <e> le <b>. Il a été vu pour la dernière fois à <a>, par <c d>. Celui-ci habite à <f>. Diapositive n° 28 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. C1 R1 (A1, A2, A3, A4, A5, A6, A7) 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Le domaine de valeur des attributs ne sera complètement défini que lorsque l’on aura détaillé les diverses contraintes d’intégrité que doivent respecter ces attributs, qu’il s’agisse de : - contraintes intra-attributs, - contraintes inter-attributs, intra-relations, - contraintes inter-relations. C3 R1 (A1, A2, A3, A4, A5, A6, A7) R1 (A1, A2, A3, A4, A5, A6, A7) R1 (A1, A2, A3, A4, A5, A6, A7) C2 Diapositive n° 29 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. C1 R1 (A1, A2, A3, A4, A5, A6, A7) 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) C2 - Date : constituée de 3 champs JJMMAAAA JJ compris entre 01 et 28, 29, 30 ou 31, selon les valeurs de MM et AAAA. MM compris entre 01 et 12. AAAA compris entre 0001 et la date du jour (1400 et la date du jour ; 1800 et ... C3 C1 - Type :  {01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12} C3 - Papillon : est référencé dans la relation PAPILLONS1. R1 (A1, A2, A3, A4, A5, A6, A7) R1 (A1, A2, A3, A4, A5, A6, A7) R1 (A1, A2, A3, A4, A5, A6, A7) C2 Diapositive n° 30 Université de NANTES Alain VAILLY

 x  PAPILLONS1 x.Maxi ≥ x.Mini M.E.D.A.L. 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Exemple PAPILLONS1 (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle) Tous les papillons dans la base respectent la contrainte suivante : leur taille maximum est plus grande que (ou égale à) leur taille minimum.  x  PAPILLONS1 x.Maxi ≥ x.Mini R1 (A1, A2, A3, A4, A5, A6, A7) C2 Diapositive n° 31 Université de NANTES Alain VAILLY

 x.Papillon  PAPILLONS1 M.E.D.A.L. 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) PAPILLONS1 (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle) Toutes les observations dans la base respectent la contrainte suivante : les papillons observés sont décrits. C3  x  OBSERVATIONS  x.Papillon  PAPILLONS1 R1 (A1, A2, A3, A4, A5, A6, A7) R1 (A1, A2, A3, A4, A5, A6, A7) Diapositive n° 32 Université de NANTES Alain VAILLY

formule fausse 4) Utilisation de relations M.E.D.A.L. 4.1.4) Mise en évidence des contraintes Exemple La formule précédente est fausse. Si x est une observation, x.Papillon est la référence d’un papillon. Pas un papillon. La formule correcte est :  x  OBSERVATIONS  ! y  PAPILLONS1  x.Papillon = y.Nom-Ver formule fausse On ne peut pas réduire un homme à son numéro d’INSEE ! On ne réduit pas un papillon à son nom vernaculaire !  x  OBSERVATIONS  x.Papillon  PAPILLONS1 Diapositive n° 33 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Les contraintes d’intégrité sont vérifiées à chaque tentative de mise à jour de la base. L’ordre n’est pas garanti. DOUANE ZOLL 2 L’ordre règne ! 1 1- Les données respectent les contraintes. 2- Les données ne respectent pas les contraintes. Diapositive n° 34 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Les dépendances sont, nous l’avons montré, un élément important de la structuration des attributs en relations normalisées. La normalisation est basée sur un algorithme, dont la mécanique repose sur l’existence de dépendances : - fonctionnelles X Y - multi-valuées X Y Il est donc essentiel de bien constituer cet ensemble. Ceci va se faire en posant des questions à l’utilisateur. Diapositive n° 35 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Pour vérifier l’existence d’une dépendance fonctionnelle entre X et Y, il faut demander : Question Q1 : « Peut-on associer à une valeur de X plusieurs valeurs de Y ? » x relation Réponse OUI : Il n’y a pas de dépendance fonctionnelle. Il y a « suspicion » de dépendance fonctionnelle, que l’on va confirmer. Réponse NON : Diapositive n° 36 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y La confirmation va se faire en posant une deuxième question : Question Q2 : « Toutes les valeurs de X sont donc associées, chacune, à une seule valeur de Y ? » Réponse OUI : Il y a dépendance fonctionnelle. Réponse NON : Y-a comme un défaut ! On recommence à questionner l’utilisateur en se servant du schéma précédent. Diapositive n° 37 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Question Q3 : « Peut-on avoir la situation illustrée par le schéma suivant, qui décrit les associations existant entre les valeurs de X (l’ensemble de gauche) et celles de Y (l’ensemble de droite) ? » x relation Réponse OUI : Il n’y a pas dépendance fonctionnelle. Réponse NON : « Jamais ? » Question Q4 : Réponse OUI : Il y a dépendance fonctionnelle. Réponse NON : (Y-en-a marre !) … On recommence ... Diapositive n° 38 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Vérifier l’existence d’une dépendance multi-valuée est beaucoup plus délicat. Ce travail (qui concerne les attributs X et Y) va impliquer plus de deux attributs. La première question à poser est la suivante : Question Q1 : « Peut-on associer, à chaque valeur de X, un ensemble de valeurs de Y, et ce indépendamment des autres attributs ? » En général, l’utilisateur réfléchit. Très souvent, il répond « euh … » ! Diapositive n° 39 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Pour éclairer sa lanterne, on peut (on doit, souvent) recourir à une explication en forme d’exemple : - papillons, chenilles et nourriture, - bureaux, téléphones et employés, - classes, livres et élèves, 3 attributs au moins à chaque fois - ... Des exemples simples et concrets sont nécessaires ! Diapositive n° 40 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. R (Famille, Genre, Plante) 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Question Q1 : « Tous les papillons d’une même famille mangent-ils, tous, la même série de plantes, indépendamment de leur genre ? » Réponse OUI : Il y a dépendance multi-valuée. Réponse NON : Question Q2 : « Certains genres de la famille mangent donc des plantes qui ne sont pas mangées par d’autres genres de la même famille ? » Réponse OUI : Il n ’y a pas dépendance multi-valuée. Réponse NON : Il y a dépendance multi-valuée. Diapositive n° 41 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. R (Bureau, Téléphone, Employé) 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Question Q1 : « Tous les téléphones d’un même bureau sont-ils, tous, utilisables par tous les employés du bureau, ou bien y-a-t-il affectation de certains téléphones à certains employés seulement ? » Solution 1 : Il y a dépendance multi-valuée entre le bureau et le téléphone. Solution 2 : Il n’y a pas dépendance multi-valuée entre le bureau et le téléphone. Diapositive n° 42 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. R (Classe, Livre, Elève) 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Question Q1 : « Tous les élèves d’une même classe utilisent-ils, tous, la même série de livres préconisée pour la classe, ou bien certains élèves utilisent-ils des livres que n’ont pas les autres ? » Solution 1 : Il y a dépendance multi-valuée entre la classe et le livre. Solution 2 : Il n’y a pas dépendance multi-valuée entre la classe et le livre. Diapositive n° 43 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances X Y Complémentation RD07 Si X Y, alors X U - (X, Y) Cette règle de dérivation nous fournit un « truc » pour le cas où le premier essai de mise en évidence d’une dépendance multi-valuée a échoué. Si, avec une relation R (X, Y, Z), la dépendance multi-valuée entre X et Y n’a pu être révélée, alors il faut tenter de mettre en évidence une dépendance multi-valuée sur le complément (entre X et Z). Si la tentative réussit, par complémentation, on aura aussi la première. Diapositive n° 44 Université de NANTES Alain VAILLY

objectif 4) Utilisation de relations M.E.D.A.L. 4.2) Implémentation des relations Le modèle relationnel est assez peu souvent utilisé directement. Proche de la machine, il est souvent produit par un outil d’aide à la spécification qui permet à un architecte logiciel de définir la structure de données nécessaire dans un langage de plus haut niveau. Modèle E-A-P 2b Traduction (semi-)automatique Outil d’aide Modèle relationnel Architecte logiciel objectif 2a 3b 3a 1 Possible, mais difficile Diapositive n° 45 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Une fois la structure de données définie, il faut mettre en place physiquement ces données. Puis, il faut écrire les fonctions de manipulation de ces données, les tester avec des jeux d’essais pertinents et, enfin, initialiser la base de données. 1) création des tables relationnelles 2) écriture des requêtes 3) chargement de la base Toutes ces taches accomplies, l’exploitation peut commencer. NB : nous sommes aux limites de ce cours et ne ferons qu’esquisser le travail à faire pour implémenter la base, en renvoyant le lecteur intéressé aux cours de Bases de Données et/ou de Langage relationnel qui peuvent exister par ailleurs. Diapositive n° 46 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations L’ensemble des données recueillies durant tout cet exposé, et concernant ce que l’on peut appeler notre base entomologico-philatélique, est le suivant : TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 47 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 48 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 49 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 50 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 51 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 52 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 53 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 54 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 55 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations Si l’on y ajoute les contraintes d’intégrité référentielle, cela donne ceci : OBSERVATEURS (Nom, Prénom, Adresse) OBSERVATIONS (Numéro, Nom, Prénom, Endroit, Type, Date, Nom-Ver) SYMBOLES (Cod-Typ, Libellé, Pictogramme) PAPILLONS (Famille, Genre, Espèce, Nom-Ver, Cod-D, Mini, Maxi, Mâle, Femelle, Taille-moyenne) MANGENT (Famille, Plante) ENTOMOS (Cod-D, Nom-D, Nat-D) Diapositive n° 56 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) 4) Utilisation de relations 4.2) Implémentation des relations domaines définis La création « directe » des tables, à partir de la description en relations, va se faire dans un langage de manipulation, très vraisemblablement issu de SQL. Pour créer, par exemple, la table TIMBRES, il faudra exécuter le code : caractère (obligatoire, facultatif) déterminé CREATE TABLE Timbres ( numéro NUMBER (5) NOT NULL, nom_c CHARACTER (20) NOT NULL, pays CHARACTER (40) NOT NULL, année DATE, nom_ver CHARACTER (20) NOT NULL, CONSTRAINT timbre_pk PRIMARY KEY (numéro, nom_c, pays), CONSTRAINT verif_date CHECK (année >= 1847), CONSTRAINT papillon_fk FOREIGN KEY (nom_ver) REFERENCES Papillons (nom_ver) ) contraintes précisées clé primaire choisie clés étrangères définies Diapositive n° 57 Université de NANTES Alain VAILLY

utilisation optimale des compétences M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations risque d’erreurs Cette écriture, toutefois, est fastidieuse. Elle requiert la connaissance approfondie du langage et impose à l’architecte une attention constante pendant la phase de codification. Ce travail n’est pas le plus intéressant. La partie « création », en effet, est terminée. Les plans sont faits, il ne reste plus qu’à … Pour toutes ces raisons, la tendance est de laisser « la machine » se charger de cette tâche et de focaliser le travail de l’architecte sur la partie sur laquelle la machine n’est pas bonne, celui de l’analyse et de la création. utilisation optimale des compétences intérêt faible Diapositive n° 58 Université de NANTES Alain VAILLY

Assistant-dessinateur M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations MACHINE On a donc de plus en plus recours à l’assistance d’un outil d’aide (souvent appelé outil d’aide à la conception de logiciels ou CASE -Computer Aided Software Engineering). Outil CASE (partie 1) Maître-traducteur Outil CASE (partie 2) Assistant-dessinateur REL1 ( ….) REL2 (….) REL3 ... HOMME Diapositive n° 59 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations La structure de notre base de données peut être modélisée dans le formalisme entités-associations-propriétés comme suit : PLANTES Plante Année TIMBRES Numéro_T Nom_C Pays Libellé Pictogramme SYMBOLES Cod_Typ illustrent 1, n 1, n 1, 1 type_lieu mangent 0, n 1, 1 Genre Espèce Mini Maxi Mâle Femelle Taille_moyenne PAPILLONS Nom_Ver Endroit Date OBSERVATIONS Numéro_O 1, n concernent FAMILLES Famille appartiennent 0, n 1, 1 0, n 1, 1 1, 1 Adresse OBSERVATEURS Nom_O Prénom Nom_D Nat_D ENTOMOS Cod_D décrivent font 0, n 1, 1 1, n Diapositive n° 60 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations L’outil va ensuite se charger, après vérification de la correction du modèle, de la traduction. Il produira, par exemple, l’extrait de code suivant : DROP TABLE OBSERVATIONS CASCADE CONSTRAINTS; ……………. CREATE DATABASE ENTOM; CREATE TABLE OBSERVATIONS ( NUMERO_O CHAR (5), NOM_VER CHAR (20), COD_TYP NUMBER (2), NOM CHAR (20) NULL, PRENOM CHAR (20) NULL, ENDROIT CHAR (30) NULL, DATE_O DATE NULL, CONSTRAINT PK_OBSERVATIONS PRIMARY KEY (NUMERO_O) ); CREATE INDEX I_FK_PAPILLONS_CONCERNENT ON OBSERVATIONS (NOM_VER ASC); NB : ce code a été produit par le logiciel WIN-DESIGN de la société CECIMA, dans sa version 3.1. Diapositive n° 61 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations La traduction du schéma entités-associations-propriétés en relations, ie. en code SQL, passe souvent par un modèle intermédiaire, appelé modèle logique : PLANTES PK_PLANTES PLANTE FAMILLES PK_FAMILLES FAMILLE MANGENT PK_MANGENT TIMBRES PK_TIMBRES NUMERO NOM_C PAYS NOM_VER ANNEE ENTOMOS PK_ENTOMOS COD_D NOM_D NAT_D SYMBOLES PK_SYMBOLES COD_TYP LIBELLE PICTOGRAMME OBSERVATEURS PK_OBSERVATEURS NOM_O PRENOM_O ADRESSE OBSERVATIONS PK_OBSERVATIONS NUMERO_O NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT APPARTIENNENT Diapositive n° 62 Université de NANTES Alain VAILLY

+ = 4) Utilisation de relations M.E.D.A.L. 4.2) Implémentation des relations Ce modèle correspond le plus souvent à une représentation graphique des relations. Il permet d’effectuer un travail de dé-normalisation, bien utile pour obtenir des structures de données efficaces. Structure de données « sale », ne respectant plus toutes les normes, mais plus efficace Structure de données propre, respectant des normes Critères d’efficacité + = Diapositive n° 63 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Dans le cas qui nous « préoccupe », cette dé-normalisation va conduire à la suppression de deux tables, PLANTES et FAMILLES, que l’on peut retrouver dans la table MANGENT (toutes les plantes sont mangées au moins une fois -cardinalités 1, n- ; toutes les familles mangent au moins une plante -cardinalité 1, n-) en utilisant un opérateur de projection de l’algèbre relationnelle. PROJECTION (MANGENT, Plante) PLANTES PROJECTION (MANGENT, Famille) FAMILLES Diapositive n° 64 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Une seconde dé-normalisation va avoir lieu, concernant le lien entre la table PAPILLONS et l’ex-table FAMILLES. La clé étrangère Famille, qui pointait sur la table FAMILLE, va maintenant devenir un attribut « normal » de la table PAPILLONS, l’appartenance de la famille du papillon à l’ensemble des familles qui mangent étant testée à chaque insertion d’un nouveau papillon par un trigger, un bout de code. Diapositive n° 65 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Structure de départ FAMILLES PK_FAMILLES FAMILLE MANGENT PK_MANGENT PLANTE TIMBRES PK_TIMBRES NUMERO NOM_C PAYS NOM_VER ANNEE ENTOMOS PK_ENTOMOS COD_D NOM_D NAT_D SYMBOLES PK_SYMBOLES COD_TYP LIBELLE PICTOGRAMME OBSERVATEURS PK_OBSERVATEURS NOM_O PRENOM_O ADRESSE OBSERVATIONS PK_OBSERVATIONS NUMERO_O NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT APPARTIENNENT PLANTES PK_PLANTES Diapositive n° 66 Université de NANTES Alain VAILLY

Etape n° 1 : disparition de la table PLANTES M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Etape n° 1 : disparition de la table PLANTES TIMBRES PK_TIMBRES NUMERO NOM_C PAYS NOM_VER ANNEE ILLUSTRENT SYMBOLES PK_SYMBOLES COD_TYP LIBELLE PICTOGRAMME PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE OBSERVATIONS PK_OBSERVATIONS NUMERO_O NOM_VER COD_TYP NOM PRENOM ENDROIT DATE_O MANGENT PK_MANGENT PLANTE FAMILLE APPARTIENNENT TYPE_LIE DECRIVENT CONCERNENT FAMILLES PK_FAMILLES FAMILLE OBSERVATEURS PK_OBSERVATEURS NOM_O PRENOM_O ADRESSE ENTOMOS PK_ENTOMOS COD_D NOM_D NAT_D FONT Diapositive n° 67 Université de NANTES Alain VAILLY

Etape n° 2 : disparition de la table FAMILLES M.E.D.A.L. 4) Utilisation de relations 4.2) Implémentation des relations Etape n° 2 : disparition de la table FAMILLES TIMBRES PK_TIMBRES NUMERO NOM_C PAYS NOM_VER ANNEE ILLUSTRENT SYMBOLES PK_SYMBOLES COD_TYP LIBELLE PICTOGRAMME PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE OBSERVATIONS PK_OBSERVATIONS NUMERO_O NOM_VER COD_TYP NOM PRENOM ENDROIT DATE_O MANGENT PK_MANGENT PLANTE FAMILLE TYPE_LIE DECRIVENT CONCERNENT OBSERVATEURS PK_OBSERVATEURS NOM_O PRENOM_O ADRESSE ENTOMOS PK_ENTOMOS COD_D NOM_D NAT_D FONT Diapositive n° 68 Université de NANTES Alain VAILLY

vus en cours de bases de données M.E.D.A.L. 4) Utilisation de relations 4.3) Algèbre relationnelle La manipulation proprement dite des relations (l’ajout, la modification, la suppression de nuplets, la recherche d’éléments particuliers, leur combinaison, …) s’effectue à l’aide d’opérateurs qui ont été formellement définis il y a près de trente années par CODD et qui constituent ce que l’on appelle l’algèbre relationnelle. union jointure produit vus en cours de bases de données différence sélection intersection projection Diapositive n° 69 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.3) Algèbre relationnelle Ces opérateurs sont mis en œuvre dans des langages de programmation, tels SQL ou bien encore VB, sous forme de requêtes ou de formulaires. Les requêtes seront « immergées » dans des programmes rédigés dans un langage de programmation comme COBOL ou JAVA. Cette partie, opérationnelle, de la base de données n’a pas d’équivalent dans le modèle entités-associations-propriétés. Son homologue est à rechercher dans la description fonctionnelle des traitements, dans les méthodes associées aux classes -monde objet-, ... Diapositive n° 70 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.3) Algèbre relationnelle Exemple Trouver les papillons mâles ayant entre 30 et 50 mm de taille et dont la chenille mange des orties. Analyse de la requête : 1) il faut les tables PAPILLONS et MANGENT. 2) il faut sélectionner d’abord tous les papillons mâles ayant la taille requise, puis, parmi ceux-ci, ceux correspondant à une famille qui mange des orties. 3) il faut préciser le résultat souhaité (ici, par exemple, image, nom vernaculaire, taille mini, taille maxi, genre et espèce) Diapositive n° 71 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.3) Algèbre relationnelle Exemple SELECT PAPILLONS.NOM_VER, PAPILLONS.MALE, PAPILLONS.MINI, PAPILLONS.MAXI, PAPILLONS.GENRE, PAPILLONS.ESPECE FROM PAPILLONS WHERE PAPILLONS.MINI >= 30 AND PAPILLONS.MAXI <= 50 AND PAPILLONS.FAMILLE IN (SELECT MANGENT.FAMILLE FROM MANGENT WHERE MANGENT.PLANTE = ‘ Ortie ’) Aglais urticae (Chenille) Diapositive n° 72 Université de NANTES Alain VAILLY

4) Utilisation de relations M.E.D.A.L. 4) Utilisation de relations 4.3) Algèbre relationnelle Exemple Gamma 44-48 mm Polygonia c-album Petite tortue 40-50 mm Aglais urticae Carte géographique 32-38 mm Araschnia levana Diapositive n° 73 Université de NANTES Alain VAILLY

M.E.D.A.L. 5) Conclusion - modèle ancien, mais encore très utilisé, qui repose sur des notions simples - plusieurs perceptions du modèle existent, ce qui peut contribuer à quelque peu « noyer » le message, - modèle très proche de la machine, qui « impose » le recours à des modèles plus abstraits, plus proches de l’utilisateur, - à comprendre pour mieux maîtriser les enjeux d’une structuration de données - ... Diapositive n° 74 Université de NANTES Alain VAILLY

Pour compléter la formation ... M.E.D.A.L. Bibliographie (sommaire) la référence :-) P. ANDRE, A. VAILLY, « Conception des systèmes d’information ; Panorama des méthodes et des techniques », Editions Ellipses, janvier 2001, ISBN 2-7298-0479-X M. ADIBA, C. DELOBEL, « Bases de données et systèmes relationnels », Editions Dunod, Collection Informatique, 1982, ISBN 2-04-011628-1 Pour compléter la formation ... Diapositive n° 75 Université de NANTES Alain VAILLY

M.E.D.A.L. Fin Diapositive n° 76 Université de NANTES Alain VAILLY