Pour produire les différents schémas nécessaires à la modélisation de vos données, vous utiliserez le vocabulaire suivant.
Une classe est une représentation de quelque chose de physique ou bien un concept abstrait. Peut-on être plus flou ? ;-) En fait, on cherche à regrouper dans une classe les choses ou les concepts qui possèdent des caractéristiques communes.
Rien de mieux que des exemples pour clarifier ce qu'est une classe.
Dans une base de données pour un système scolaire, on pourra avoir les classes suivantes :
Dans une base de données pour un site de rencontre, on pourra avoir les classes suivantes :
Attention : la classe est une représentation abstraite. Si Annie Gagnon étudie au cégep de Victoriaville, Annie n'est pas une classe. C'est une instance de la classe etudiants.
Dans un diagramme de classes, une classe est représentée par un rectangle compartimenté. Dans la zone du haut, on retrouve le nom de la classe. Dans celle du bas, on retrouve ses attributs.
Sur le marché du travail, il existe plusieurs règles de nomenclature pour les classes. Il est important de choisir des règles de nomenclature et de les suivre pour modéliser chacune de nos bases de données.
Voici celles que vous devez suivre dans le cadre de ce cours :
Les classes porteront un nom au pluriel, entièrement en lettres minuscules et sans espaces ni accents.
Si le nom d'une classe contient plus d'un mot, les mots seront simplement collés l'un à l'autre (ex : choixdereponses).
Un attribut est une information relative à une classe ou à une relation. C'est une caractéristique partagée par toutes les choses ou concepts d'une classe.
Par exemple, une classe etudiants pourra comporter les attributs suivants :
Un attribut portera un nom entièrement en lettres minuscules, sans espaces ni accents.
Si le nom d'un attribut contient plus d'un mot, les mots seront simplement collés l'un à l'autre (ex : codepostal).
On utliisera un mot plutôt qu'un verbe pour nommer les attributs. Dans le cas où l'attribut représente quelque chose de booléen (ex : l'étudiant est-il inscrit ?), on pourra utiliser un adjectif (ex : inscrit).
Une clé primaire est un attribut particulier qu'on ajoutera dans chacune des tables de la base de données. Son rôle est d'identifier de façon unique chacun des enregistrements de la table.
Voici comment mieux saisir ce concept : dans la base de données générée à partir de notre modélisation, si on a deux étudiants qui s'appellent Gaston Tremblay, chacun portera une clé primaire unique (disons 1 pour celui qui est né le 13 janvier 1998 et 2 pour celui qui est né le 30 juin 1999). On pourra assurer que la bonne personne soit admise dans un établissement scolaire en utilisant sa clé primaire plutôt que son nom.
Dans le schéma logique de données, la clé primaire est le premier champ de la liste et il est souligné.
Il est d'usage d'appeler la clé primaire id, entièrement en lettres minuscules.
La clé étrangère est un attribut spécial qui apparaîtra dans le modèle logique de données afin de matérialiser une relation entre deux classes.
Dans le diagramme de classe, elle n'apparaît pas encore mais une ligne entre deux classes permet d'illustrer la relation en question.
La clé étrangère permet d'enregistrer la valeur d'un enregistrement provenant d'une une autre table, ce qui matérialisera une relation entre deux tables.
Par exemple, pour permettre d'inscrire les étudiants dans des établissements, on ajoutera un champ etablissement_id dans la table des étudiants. Pour que l'étudiant dont l'identifiant est 36 soit inscrit dans l'établissement dont l'identifiant est 4, on ajoutera la valeur 4 dans le champ etablissement_id de l'enregistrement de l'étudiant 36.
Le nom d'une clé étrangère sera presque toujours composé du nom de la table liée, au singulier, suivi d'une barre en bas puis de id (ex : etablissement_id).
On pourra contourner légèrement cette règle lorsque le nom de la clé étrangère a besoin d'une plus grande précision. Par exemple, dans la base de données d'un blogue, la table articles pourra avoir un champ auteur_id et un champ reviseur_id qui contiennent tous deux l'indentifiant d'un usager.
Une relation est un lien entre deux classes.
Par exemple, dans une base de données pour un système scolaire, on pourra avoir les relations suivantes :
Dans une base de données pour un site de rencontre, on pourra avoir les relations suivantes :
Par exemple, dans une base de données pour un site de rencontre, on pourra avoir les associations suivantes :
Dans sa forme la plus simple, une relation est représentée par une ligne surplombée d'un verbe identifiant la relation. À chaque bout de la ligne, on retrouve un symbole identifiant la multiplicité de la relation.
On peut ajouter une flèche pour indiquer dans quel sens on doit faire la lecture, la classe située au bout non fléché étant le sujet et celle située au bout fléché étant le complément (ex : un étudiant étudie dans un établissement).
La multiplicité permet de préciser une relation entre deux classes. Elle indique, pour chacune des classes impliquées dans la relation, combien d'instances de cette classe pourront être utilisées dans la relation.
Il s'agit des petits chiffres ou symboles placés à chaque extrémité d'une relation.
Par exemple, dans une base de données pour un système scolaire, on pourra avoir une relation de plusieurs à plusieurs entre un étudiant et un cours. Ceci signifie qu'un étudiant peut être inscrit à plusieurs cours et qu'un cours peut être donné à plusieurs étudiants.
Les différentes multiplicités possibles et leur signification seront étudiées un peu plus tard.
▼Publicité