La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 Université de NANTES Les paradigmes Le modèle relationnel.

Présentations similaires


Présentation au sujet: "M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 Université de NANTES Les paradigmes Le modèle relationnel."— Transcription de la présentation:

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

2 Alain VAILLY Diapositive n° 2 Université de NANTES Lusage 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 quil soit conservé dans létat (et notamment quil 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 à laccord 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 lauteur et poursuivie comme telle devant les tribunaux. AVERTISSEMENT

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

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

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

6 Alain VAILLY Diapositive n° 6 Université de NANTES M.E.D.A.L. Cours magistral 2.1) Notions de domaine, dattribut 2.2) Notion de relation 2.3) Notions de clés 2.4) Notion de dépendance 2) Notions de base 4) Utilisation de relations 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 4.1) Mise en évidence 4.2) Implémentation 4.3) Algèbre relationnelle 1) Introduction 5) Conclusion PLAN 4FN maxi. fonctionnelle 3) Normalisation et décomposition Il y en a dautres. multi-valuée

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

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

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

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

11 4) Utilisation de relations 4.1) Mise en évidence Alain VAILLY Diapositive n° 11 Université de NANTES M.E.D.A.L. Pour définir une relation, il faut réunir des informations sur : - les contraintes qui pèsent sur eux. - ses attributs, - les domaines de valeur de ceux-ci, 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 ».

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

13 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Alain VAILLY Diapositive n° 13 Université de NANTES M.E.D.A.L. Il y a deux techniques principales, opposées … mais que lon 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 le but, par la solution Quest-ce quon a ? Que veut-on ? Pilotage par lexistant, par le problème Il faut les deux !

14 4) Utilisation de relations 4.1.1) Mise en évidence des attributs Alain VAILLY Diapositive n° 14 Université de NANTES M.E.D.A.L. Exemple Selon I. Novak et F. Severa, une collection de papillons na de valeur scientifique que si chaque exemplaire quelle contient est accompagné dune é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 lAlbula Haute Engadine (2312m) 20 VII 1979 Emmanuel de Bros leg. legit : a récolté, en latin Hypothèse : ce type de fiche correspond à un bon point de départ.

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

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

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

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

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

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

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

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

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

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

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

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

27 4) Utilisation de relations 4.1.3) Mise en évidence du prédicat Alain VAILLY Diapositive n° 27 Université de NANTES M.E.D.A.L. Une fois cet ensemble dattributs 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. Cest un élément indispensable de la relation. Avoir des difficultés à le définir doit attirer lattention de larchitecte sur une vraisemblable incohérence au niveau de lensemble (cest un signal dalerte fort, à ne pas négliger).

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

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

30 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Alain VAILLY Diapositive n° 30 Université de NANTES M.E.D.A.L. - Type : - Papillon : - Date : R1 (A1, A2, A3, A4, A5, A6, A7) C1 Exemple OBSERVATIONS (Endroit, Date, Nom, Prénom, Type, Adresse, Papillon) 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... {01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12} est référencé dans la relation PAPILLONS1. R1 (A1, A2, A3, A4, A5, A6, A7) C3 C2 C1 C2 C3

31 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Alain VAILLY Diapositive n° 31 Université de NANTES M.E.D.A.L. Exemple R1 (A1, A2, A3, A4, A5, A6, A7) C2 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

32 4) Utilisation de relations 4.1.4) Mise en évidence des contraintes Alain VAILLY Diapositive n° 32 Université de NANTES M.E.D.A.L. Exemple R1 (A1, A2, A3, A4, A5, A6, A7) C3 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. x OBSERVATIONS x.Papillon PAPILLONS1

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

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

35 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 35 Université de NANTES M.E.D.A.L. Les dépendances sont, nous lavons 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 lexistence de dépendances : Il est donc essentiel de bien constituer cet ensemble. Ceci va se faire en posant des questions à lutilisateur. - fonctionnelles - multi-valuées XY X Y X Y

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

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

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

39 XY X Y 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 39 Université de NANTES M.E.D.A.L. Vérifier lexistence dune 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 : En général, lutilisateur réfléchit. Très souvent, il répond « euh … » ! « Peut-on associer, à chaque valeur de X, un ensemble de valeurs de Y, et ce indépendamment des autres attributs ? » Question Q1 :

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

41 XY X Y 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 41 Université de NANTES M.E.D.A.L. « Tous les papillons dune 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. « Certains genres de la famille mangent donc des plantes qui ne sont pas mangées par dautres genres de la même famille ? » Réponse NON : Réponse OUI : Il n y a pas dépendance multi-valuée. Réponse NON :Il y a dépendance multi-valuée. Question Q1 : Question Q2 : R (Famille, Genre, Plante)

42 XY X Y 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 42 Université de NANTES M.E.D.A.L. « Tous les téléphones dun 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 : Question Q1 : R (Bureau, Téléphone, Employé) Il ny a pas dépendance multi-valuée entre le bureau et le téléphone.

43 XY X Y 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 43 Université de NANTES M.E.D.A.L. « Tous les élèves dune 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 nont pas les autres ? » Solution 1 : Il y a dépendance multi-valuée entre la classe et le livre. Solution 2 : Question Q1 : R (Classe, Livre, Elève) Il ny a pas dépendance multi-valuée entre la classe et le livre.

44 XY X Y 4) Utilisation de relations 4.1.5) Mise en évidence des dépendances Alain VAILLY Diapositive n° 44 Université de NANTES M.E.D.A.L. Cette règle de dérivation nous fournit un « truc » pour le cas où le premier essai de mise en évidence dune 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 na 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. Complémentation RD07 Si X Y, alors X U - (X, Y)

45 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 45 Université de NANTES M.E.D.A.L. Le modèle relationnel est assez peu souvent utilisé directement. Proche de la machine, il est souvent produit par un outil daide à 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 relationnel Traduction (semi-)automatique Architecte logiciel Possible, mais difficile 2a 2b 3a 3b 1 Modèle E-A-P Outil daide

46 Alain VAILLY Diapositive n° 46 Université de NANTES M.E.D.A.L. 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 dessais pertinents et, enfin, initialiser la base de données. Toutes ces taches accomplies, lexploitation peut commencer. 1) création des tables relationnelles 3) chargement de la base 2) écriture des requêtes 4) Utilisation de relations 4.2) Implémentation des relations NB : nous sommes aux limites de ce cours et ne ferons quesquisser 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.

47 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 47 Université de NANTES M.E.D.A.L. Lensemble des données recueillies durant tout cet exposé, et concernant ce que lon peut appeler notre base entomologico-philatélique, est le suivant : 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D)

48 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 48 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

49 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 49 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

50 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 50 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

51 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 51 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

52 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 52 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

53 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 53 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

54 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 54 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

55 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 55 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

56 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 56 Université de NANTES M.E.D.A.L. 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) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) OBSERVATEURS (Nom, Prénom, Adresse) ENTOMOS (Cod-D, Nom-D, Nat-D) Si lon y ajoute les contraintes dintégrité référentielle, cela donne ceci :

57 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 57 Université de NANTES M.E.D.A.L. 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 : 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) ) TIMBRES (Numéro, Nom-C, Pays, Année, Nom-Ver) domaines définis clés étrangères définies clé primaire choisie caractère (obligatoire, facultatif) déterminé contraintes précisées

58 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 58 Université de NANTES M.E.D.A.L. Cette écriture, toutefois, est fastidieuse. Elle requiert la connaissance approfondie du langage et impose à larchitecte une attention constante pendant la phase de codification. Ce travail nest 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 larchitecte sur la partie sur laquelle la machine nest pas bonne, celui de lanalyse et de la création. risque derreurs intérêt faible utilisation optimale des compétences

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

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

61 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 61 Université de NANTES M.E.D.A.L. Loutil va ensuite se charger, après vérification de la correction du modèle, de la traduction. Il produira, par exemple, lextrait de code suivant : NB : ce code a été produit par le logiciel WIN-DESIGN de la société CECIMA, dans sa version 3.1. 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); …………….

62 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 62 Université de NANTES M.E.D.A.L. modèle logique 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 PLANTE FAMILLE 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_VER COD_TYP NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT APPARTIENNENT

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

64 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 64 Université de NANTES M.E.D.A.L. Dans le cas qui nous « préoccupe », cette dé-normalisation va conduire à la suppression de deux tables, PLANTES et FAMILLES, que lon 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 lalgèbre relationnelle. PROJECTION (MANGENT, Plante) PROJECTION (MANGENT, Famille) PLANTES FAMILLES

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

66 Alain VAILLY Diapositive n° 66 Université de NANTES 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 FAMILLE 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_VER COD_TYP NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT APPARTIENNENT PLANTES PK_PLANTES PLANTE

67 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 67 Université de NANTES M.E.D.A.L. FAMILLES PK_FAMILLES FAMILLE MANGENT PK_MANGENT PLANTE FAMILLE 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_VER COD_TYP NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT APPARTIENNENT Etape n° 1 : disparition de la table PLANTES

68 4) Utilisation de relations 4.2) Implémentation des relations Alain VAILLY Diapositive n° 68 Université de NANTES M.E.D.A.L. MANGENT PK_MANGENT PLANTE FAMILLE 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_VER COD_TYP NOM PRENOM ENDROIT DATE_O PAPILLONS PK_PAPILLONS NOM_VER FAMILLE COD_D GENRE ESPECE MINI MAXI MALE FEMELLE TAILLE_MOYENNE TYPE_LIE DECRIVENT ILLUSTRENT CONCERNENT FONT Etape n° 2 : disparition de la table FAMILLES

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

70 4) Utilisation de relations 4.3) Algèbre relationnelle Alain VAILLY Diapositive n° 70 Université de NANTES M.E.D.A.L. 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 na 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-,...

71 4) Utilisation de relations 4.3) Algèbre relationnelle Alain VAILLY Diapositive n° 71 Université de NANTES M.E.D.A.L. 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 dabord 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) Exemple

72 4) Utilisation de relations 4.3) Algèbre relationnelle Alain VAILLY Diapositive n° 72 Université de NANTES M.E.D.A.L. 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)

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

74 Alain VAILLY Diapositive n° 74 Université de NANTES M.E.D.A.L. 5) Conclusion - 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 lutilisateur, - modèle ancien, mais encore très utilisé, qui repose sur des notions simples - à comprendre pour mieux maîtriser les enjeux dune structuration de données -...

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

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


Télécharger ppt "M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 Université de NANTES Les paradigmes Le modèle relationnel."

Présentations similaires


Annonces Google