2.3.8 Le modèle relationnel
Du modèle conceptuel au modèle relationnel
A partir de la description conceptuelle que nous avons
effectuée, on peut réaliser le modèle relationnel; vu que
le système d'information ne peut pas le manipulé directement; et
ça en utilisons des règles de passages de l'UML vers le
relationnel.
Quelques notions essentielles
· Domaine : c'est l'ensemble des valeurs d'un attribut.
[ETI09]
· Relation : c'est un sous ensemble du produit
cartésien d'une liste de domaines. C'est en fait un tableau à
deux dimensions dont les colonnes correspondent aux Domaines et dont les lignes
contiennent des tuples. On associe un nom à Chaque colonne. [ETI09]
· Attribut : c'est une colonne d'une relation,
caractérisé par un nom. [ETI09]
· Tuple : c'est la liste des valeurs d'une ligne d'une
relation. [ETI09]
· Cardinalité : elle permet de définir les
conditions de participation d'une entité à une relation.
Toutefois, une entité peut participer à plusieurs relations.
· L'arité : est le nombre d'attributs d'une
relation. [M.C04]
· Clé : On distingue deux types de clés:
Clé primaire : ensemble d'attributs dont les valeurs
permettent de distinguer les n-uplets les uns des autres (notion
d'identifiant).
Clé étrangère : Attribut qui est clé
primaire d'une autre entité.
NB : pour la notation, nous avons choisi de mettre en gras les
clés primaires et de mettre * à la fin de chaque clé
étrangère.
Les règles de passage
1. Transformation des classes : chaque classe du diagramme
UML devient une relation, il faut choisir un attribut de la classe pouvant
jouer le rôle de clé. [C.S02]
Transformation des associations : Nous distinguons trois
familles d'associations
2. Association 1.. : il faut ajouter un attribut de type
clé étrangère dans la relation fils de l'association.
L'attribut porte le nom de la clé primaire de la relation père de
l'association. [C.S02]
3. Association *..* et n-aire et classes-association : la
classe-association devient une relation. La clé primaire de cette
relation est la concatenation des identifiants des classes connectées
à l'association. [C.S02]
4. Association 1.. 1 : il faut ajouter un attribut de type
clé étrangère dans la relation dérivée de la
classe ayant la multiplicité minimale égale à un.
L'attribut porte le nom de la clé primaire de la relation
dérivée de la classe connectée à l'association. Si
les deux multiplicités minimales sont à un, il est
préférable de fusionner les deux classes en une seule. [C.S02]
En appliquant ces règles de transformation d'un diagramme
de classe vers un modèle relationnel, nous avons aboutit au
schéma relationnel suivant :
· Patient (N_pat, Nom_pat, Prn_pat, Sexe_pat, Dn_pat,
Ln_pat, Prn_per_pat, Nom_mer_pat, Prn_mer_pat, Nat_pat, Adr_pat, Sit_fam_pat,
Cont_pat, Tel_cont, Adr_cont, Nom_prn_acc, Sexe_acc, Age_acc, Lien_fam_acc,
Tel_acc, Nom_epou_pat, Dat_adm, Heure_adm, Dat_sortie, Heure_sortie, Cod_adm*,
N_salle*, Nom _sortie* )
· Personnel_m (Mat_per_m, Statut_per_m, Nom_per_m,
Prn_per_m, Cod_service*)
· Garde_patient (Mat_gp, Nom_gp, Prn_gp, Sexe_gp, Age_gp,
Lien_fam_gp, Typ_pid_gp, N_pid, Dat_pid, Lieu_pid, Dat_adm_gp, Heure_adm_gp,
Dat_sortie_gp, Heure_sortie_gp, N_pat*)
· Mod_adm (Cod _adm, Nom_adm)
· Mod_sartie (Cod _sortie, Nom_sortie)
· Traitement (Cod _tr, Nom_tr)
· Service (Cod_service, Nom_service)
· Unite (Cod_unite, Cod_service* )
· Salle (N_salle, N_lit, Cod_unité*)
· Naissance (N _naiss, Dat_naiss, Heure_naiss, Etat_naiss,
Sexe_naiss, Poid_naiss, Prn_naiss, N_pat*)
· Suivre (Mat _per _m,N _pat)
· Subir (Cod _tr, N_pat)
|