Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
OBJECTIFS
L'étude de l'existant au sein de l'entreprise a permis de dégager plusieurs éléments concernant les
données :
1) le dictionnaire décrivant la totalité des données manipulées,
2) l'ensemble des règles de gestion appliquées.
De ce dictionnaire, épuré des synonymes et des polysèmes, ne seront ici utilisées que les données de
niveau conceptuel.
Les règles de gestion, éventuellement enrichies de l'expression de nouveaux objectifs, mettent en
évidence d'une façon non formalisée les rapports instaurés entre les données. Négligeant pour
l'instant les tâches qu'elles expriment aussi, nous n'analyserons ici que la sémantique qu'elles
contiennent, liant indispensable à la vie de l'entreprise.
Le développement du modèle ORM (Object Role Modelling) a commencé avec les langages NIAM
et BRM. Cette présentation est faite d’après le manuel de Terry Halpin « Conceptual Schema &
Relational Database Design ».
7A.1
Systèmes d’information – 7A. Conception des données - ORM
« ‘France’ a six lettres »
Dans le premier cas le mot ‘France’ a été utilisé comme une étiquette d’une entité. Dans le
deuxième cas le mot fait mention de soi-même.
La description doit spécifier le type d’entité – c’est l’ensemble de toutes les instances possibles,
mode de référence, c’est à dire le moyen par lequel la valeur fait référence à l’entité. On va décrire
chaque entité par :
Exemples
Type d’entité Patient Température
Mode de référence Nom Degrés Celsius
Valeur ‘Dupont’ 37
Les rôles sont spécifiés à l’aide de prédicats logiques. Le prédicat est une phrase avec des places
libres pour les objets. Pour compléter la phrase ces places sont remplies par des objets-termes.
Chaque objet-terme réfère à un seul objet du monde réel. Les valeurs sont désignées par des
constantes (qui sont parfois précédées par le nom de type) et les entités sont désignées par des
descriptions qui établissent un lien entre valeurs et entités. Examinons la phrase suivante :
« La Personne dont le surnom est ‘Anne’ fume. »
Ici l’objet-terme est «La Personne dont le surnom est ‘Anne’» et le prédicat est en gras. Le dernier
peut être écrit comme :
....fume
C’est un prédicat unaire avec une place libre. On peut avoir des prédicats binaires, ternaires etc.
Voici des exemples des phrases :
« La Personne dont le surnom est 'Anne' emploie la personne dont surnom est ‘Jean’ »
« La Personne dont le surnom est ‘Cédric’ a travaillé dans le département nommé
‘Ventes’ pendant 10 années »
Les prédicats sont : « … emploie … » et «… a travaillé dans… pendant… »
7A.2
Systèmes d’information – 7A. Conception des données - ORM
Dans le schéma chaque rôle est connecté avec juste un type d’entités. Le schéma complet contient
et des différents contraintes qui seront expliquées plus tard.
Exemple : Il y a les faits élémentaires :
La Personne nommée ‘Gispert J.’ conduit l’Automobile immatriculée ‘2345 FG 13’
La Personne nommée ‘Aperghis C.’ conduit l’Automobile immatriculée ‘5896 SQ 13’
La Personne nommée ‘Margot N.’ conduit l’Automobile immatriculée ‘5896 SQ 13’
Le schéma correspondant est :
Personne Automobile
Conduit/est conduite
posseède
possède
Nom de N°d'immatriculat
personne ion
Dans cet exemple chaque personne possède exactement un nom et chaque voiture une
immatriculation. D’autre part chaque nom désigne au maximum une personne et chaque N°
d’immatriculation ne peut s’appliquer qu’au maximum à une voiture. Dans ces deux cas il y a une
simple relation 1 :1 ou mode de référence 1 :1 et nous pouvons dessiner un schéma concis. Les
modes de référence sont de trois classes : populaires, basés aux unités, et généraux. Les modes
populaires sont : Nom, Code, Titre, N° ou Nr ou #, et Id. Pour former le nom du type de valeurs
populaire on ajoute son nom au nom de l’entité. Par exemple : Personne(Nom)->PersonneNom. Les
modes de référence basés aux unités incluent une liste d’unités de mesure physiques (kg, m, s, t),
unités monétaires (FRF, BGL $, £) et autres (ap. J.C.). Tous les autres modes de référence sont
appelés modes généraux. Chaque schéma doit être illustré par une table des faits qui contient au
moins un fait pour vérifier que le schéma est correct.
2345 FG 13
Personne Automobile
(Nom) (N°d'immat)
Conduit/est conduite
Gispert J.
Aperghis C 5896 SQ 13
Margot N. 5896 SQ 13
On peut ajouter encore un type de faits élémentaires : La Personne possède un Permis de conduire
Gispert J. 2345 FG 13 Automobile
(N°d'immat)
Aperghis C 5896 SQ
Conduit/est13
conduite
Margot N. 5896 SQ 13
Personne
(Nom)
Gispert J. A3050
Aperghis C A4098 Permis
(N° de permis)
Margot N. A2345
Possède/est possédé par
7A.3
Systèmes d’information – 7A. Conception des données - ORM
Un moyen d’exprimer les faits dans la ligne 1 est : La Personne
Fumeurs Non-Fumeurs nommée Jacques fume ; La Personne nommée Jacques ne fume
Jacques Marie pas. Les deux faits sont de différents types de faits. Le schéma est
Jean Basile dessiné au-dessous.
Nicolas
Jean
Jacques fume
Nicolas
Personne
(Prénom)
Marie
Basile ne fume pas
Ici il y a deux rôles appartenant aux types de faits différents. On peut exprimer les mêmes faits en
définissant un nouveau type d’entités – Etat-fumeur codé par deux valeurs : ‘F’ pour fumeurs et ‘N’
pour non-fumeurs.
Jacques F
Marie N
Personne Etat-fumeur Jean F
a
(Prénom) (code) Basile N
Nicolas F
Chacun des exemples binaires qu’ont été examinés lie deux types d’entités
Personne
(Prénom)
différentes. Ces types de faits sont appelés types de faits hétérogènes. Quand le
fait lie deux entités du même type il est appelé fait homogène. Un exemple est
montré à gauche :
Adam Eva
époux de épouse de
Paul Marie
7A.4
Systèmes d’information – 7A. Conception des données - ORM
Sujet
(code)
Etudiant Note
est inscrit à
(N° étudiant) (nr)+
a comme résultat
inscription
1001 IN100 (1001,IN100) 15
1002 IN100 (1002,IN100) 12
1002 IN104 (1002,IN104) 16
Etape 3 : Vérifier s’il n'y a pas de types d’entités qui peuvent être combinés
et noter les calculs arithmétiques
Cette étape sera illustrée par des exemples :
Exemple 1 : Dans chaque modèle il y a toujours
Acteur
(Nom) des types d’entités primitifs, qui sont disjoints.
a pour vedette Par ailleurs les types de valeurs se chevauchent
Film souvent. Dans le schéma a gauche les types
(Nom) «Acteur» et «Réalisateur» sont dessinés comme
des types primitifs séparés. Ca veut dire que les
Réalisateur
deux types s’excluent l’un l’autre (aucun acteur
(Nom)
est réalisé par ne peut devenir un réalisateur). Mais on voit que
dans la vie ce n’est pas vrai et on doit corriger le
schéma en unissant les deux types d’entités.
a pour vedette Article Prix en gros(F) Prix en detail(F) Majoration(F)
Film Personne A1 200 280 80
(Nom) (Nom) A2 320 420 100
A3 200 250 50
A4 870 1020 150
est réalisé par Exemple 2 : Examinons le tableau au-dessus. On
Prix en gros peut dessiner le schéma à gauche, mais on voit
(FRF)+ que les trois types sont des montants d’argent et
possède
en plus on peut calculer la majoration comme la
différence des deux prix. Donc on obtient le
Article Prix en det. schéma au-dessous avec un texte qui explique le
(code)
possède
(FRF)+ calcul.
7A.5
Systèmes d’information – 7A. Conception des données - ORM
est longue
Bureau Dimension
(N°)+ (m)+
est large
Surface
(m²)+
a *
Bureau b a une surface de s(m²) ssi b est longue l
et b est large w
et s = l x w
7A.6