Partie4: modèle Entite-Association Préparé par Sanaa Faquir GINFO2 Plan du cour

Partie4: modèle Entite-Association Préparé par Sanaa Faquir GINFO2 Plan du cours • Introduction • Éléments du modèle E/A • Éléments constitutifs du modèle E/A • Cardinalite • Cas particulier d'un type association du type 1 vers 1 • Cas particulier d'un type entité sans attribut autre que sa clé • Passage du modèle entités-associations au modèle relationnel • Règles de passage Introduction • Il est difficile de modéliser un domaine sous une forme directement utilisable par un SGBD. • Pour construire une base de données, il faut: 1. Construire un schéma conceptuel, modélisé sous forme d’entités et d’associations 2. transformer le schéma E/A en schéma relationnel 3. Mettre en œuvre via un SGBD Concept de base • Une base de données est un ensemble de données modélisant les objets d’une partie du monde réel et se servant de support à une application informatique. • Un SGBD (système de gestion de base de données) peut-être perçu comme un ensemble de logiciels système permettant aux utilisateurs d’insérer, de modifier et de rechercher efficacement des données spécifiques dans une grande masse d’information partagée par de multiples utilisateurs. Traitement Traitement Résultat Résultat Présentation • Une ou plusieurs modélisations intermédiaires sont donc utiles, le modèle entités-associations constitue l'une des premières et des plus courantes. • Ce modèle, permet une description naturelle du monde réel à partir des concepts d'entité et d'association. • Basé sur la théorie des ensembles et des relations, ce modèle se veut universel et répond à l'objectif d'indépendance données-programmes. • Ce modèle, utilisé pour la phase de conception, s'inscrit notamment dans le cadre d'une méthode plus générale et très répandue : Merise. Éléments constitutifs du modèle E/A • La représentation du modèle entités-associations s'appuie sur trois concepts de base : • l'objet ou entité ; • l'association ; • la propriété. • L'objet est une entité ayant une existence propre. • L'association est un lien ou relation entre objets sans existence propre. • La propriété (attribut) est la plus petite donnée d'information décrivant un objet ou une association. Entités Entité: Définition • Une entité est un objet, une chose concrète ou abstraite qui peut être reconnue distinctement et qui est caractérisée par son unicité. • Une entité désigne un ensemble qui possède une sémantique et des propriétés communes. • Exemples: Les personnes, les livres et les animaux. • Une occurrence ou instance de l’entité est une ligne d’information. • Exemples d’instance : Amine Omari 29 ans, le livre emprunté la semaine dernière, le chat noire trouvé devant ma maison... Attribut ou propriété, valeur • Un attribut (ou une propriété) est une caractéristique associée à une entité ou une association. • Exemples d'attribut : le nom d'une personne, le titre d'une livre, la vitesse d'une voiture. • Une valeur d’un attribut: • chaque attribut possède un domaine qui définit l'ensemble des valeurs possibles qui peuvent être choisies pour lui (entier, chaîne de caractères, date…). • Au niveau de l'entité, chaque attribut possède une valeur compatible avec son domaine. • La figure montre la représentation graphique d'un exemple d’entité (Personne) avec trois attributs. • Règle a considérer: • Un attribut ne peut en aucun cas être partagé par plusieurs entités ou associations. • Un attribut est une donnée élémentaire, ce qui exclut des données calculées ou dérivées. • Une entité et ses attributs doivent être cohérents entre eux (i.e. ne traiter qu'un seul sujet). • Par exemple, si le modèle doit comporter des informations relatives à des articles et à leur fournisseur, ces informations ne doivent pas coexister au sein d’une même entité. Il est préférable de mettre les informations relatives aux articles dans une entité Article et les informations relatives aux fournisseurs dans une entité Fournisseur. • Ces deux entités seront probablement ensuite reliés par une association. Identifiant ou clé • Identifiant ou clé d’une entité ou d’une association est constitué par un ou plusieurs de ses attributs qui doivent avoir une valeur unique pour chaque entité ou association de ce type. • Il est donc impossible que les attributs constituant l'identifiant d’une entité (respectivement association) prennent la même valeur pour deux entités (respectivement deux associations) distinctes. • Exemples d'identifiant : le numéro de carte d’identité nationale (CIN) pour une personne, le numéro d'immatriculation pour une voiture, le code CNE pour un étudiant. • Règle: chaque entité possède au moins un attribut qui, s'il est seul, est donc forcément l'identifiant. • Dans la représentation graphique, les attributs qui constituent l'identifiant sont soulignés et placés en tête. CIN Une association • Association: Une association (ou une relation) est un lien entre deux ou plusieurs entités. • Exemples d'association : l'emprunt par l'étudiant Mohamed du livre « SQL serveur ». • Comme les entité, les association sont définis à l'aide d'attributs qui prennent leur valeur dans les associations. • Règles: • Un attribut peut être placé dans un type association uniquement lorsqu'il dépend de toutes les entités liées par le type association. • Un type association peut ne pas posséder d'attribut explicite et cela est relativement fréquent, mais on verra qu'il possède au moins des attributs implicites. Exemples d’ association : l'emprunt d'un livre à la bibliothèque. La figure montre la représentation graphique d'un exemple de type association La cardinalité • Définition: La cardinalité d’une patte reliant une association et une entité précise le nombre de fois minimal et maximal d'interventions d'une entité dans une association. • La cardinalité minimale doit être inférieure ou égale à la cardinalité maximale. • Exemple de cardinalité : • une personne peut être l'auteur de 0 à n livre, mais un livre ne peut être écrit que par une personne. • L'expression de la cardinalité est obligatoire pour chaque patte d’une association. • Une cardinalité minimale est toujours 0 ou 1 et une cardinalité maximale est toujours 1 ou n (cas ou elle est indéterminée). La Cardinalité • En effet, si nous connaissons n au moment de la conception, il se peut que cette valeur évolue au cours du temps. Il vaut donc mieux considérer n comme inconnue dès le départ. • De la même manière, on ne modélise pas des cardinalités minimales qui valent plus de 1, car ces valeurs sont également susceptibles d'évoluer. • Une cardinalité maximale de 0 n'a pas de sens, car elle rendrait le type association inutile. Cardinalité Types de cardinalités Les seules cardinalités admises sont donc : 0,1 : une occurrence d’une entité peut exister tout en n'étant impliquée dans aucune association et peut être impliquée dans au maximum une association. 0,n : c'est la cardinalité la plus ouverte ; une occurrence d’une entité peut exister tout en n'étant impliquée dans aucune association et peut être impliquée, sans limitation, dans plusieurs associations. 1,1 : une occurrence d’une entité ne peut exister que si elle est impliquée dans exactement (au moins et au plus) une association. 1,n : une occurrence d’une entité ne peut exister que si elle est impliquée dans au moins une association. Important sur la cardinalite Une cardinalité minimale de 1 doit se justifier par le fait que les entités du type entité en questions ont besoin de l'association pour exister. Dans tous les autres cas, la cardinalité minimale vaut 0. Ceci dit, la discussion autour d'une cardinalité minimale de 0 ou de 1 n'est intéressante que lorsque la cardinalité maximale est 1. Au passage du modèle entités-associations au modèle relationnel, lorsque la cardinalité maximale est n, il n’y a pas de différence entre une cardinalité minimale de 0 ou de 1. Conception de BD relationnelles • Difficultés de conception d'une BD : • conception non intuitive • mais points communs dans les cas à traiter (souvent similaires) • Objectifs : • éviter redondance de données • assurer cohérence des données • permettre des requêtes Le model relationnel Une base de données ? • Des données rangées dans des tables (ou tableau) • Cases monovaluées • Des contraintes sur les colonnes des tables. • On doit décrire la structure des tables et des contraintes. • Exemple de contraintes • Clé primaire • Clé etrangère – ... Probleme de conception Solution 1,1 0,N Solution par repartition en deux tables Types de relation • Il existe plusieurs types de relation: • Les relations (2-aires) ou binaires simples : ce sont des relations qui lient deux entités pas plus. • Les relations (3-aires) ou ternaires: ce sont des relations qui lient 3 entités pas plus. • Les relations n-aires: ce sont des relations qui lient plus de 3 entités • Les relations réflexives: c’est une relation sur la même entité Règles de bonne formation d'un modèle entités- associations • La bonne formation d'un modèle entités-associations permet d'éviter une grande partie des sources d'incohérences et de redondance. • Pour quel le model soit bien formé, il doit respecter certaines règles et les types entité et type association doivent être normalisés. • Un bon principe de conception peut être formulé ainsi : « une seule place pour chaque fait ». • L’objectif est d'aider le concepteur à obtenir un diagramme entités- associations bien formé en se uploads/s3/ partie4-entites-associations.pdf

  • 27
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager