• Aucun résultat trouvé

Modélisation des données

N/A
N/A
Protected

Academic year: 2022

Partager "Modélisation des données"

Copied!
50
0
0

Texte intégral

(1)

Modélisation des données

UML & VP

(2)

Plan

1. Démarche

2. Langage de modélisation UML

3. MCD

4. Règles transformation MCD MLD

5. Visual Paradigm

6. Plugin Visual Paradigm MCD  MLD

7. Travaux d’étudiants

5 novembre 2012 Modélisation des données 2

(3)

Démarche

(4)

Pourquoi UML ?

Unification

Diagrammes de classes

(Paquetages)

Mécanismes d’enrichissement

Stéréotypes

Valeurs marquées

Langage de modélisation

5 novembre 2012 Modélisation des données 4

(5)

MCD

1. Entité

2. Association

3. Association identifiante

4. Association réflexive

5. Entité associative

6. Généralisation – spécialisation

7. Synthèse des stéréotypes

(6)

Entité

Ensemble d’éléments concrets ou abstraits de même nature.

Nom de l’entité

Attributs

Clé primaire

Identifiant(s) naturel(s)

5 novembre 2012 Modélisation des données

MCD

6

(7)

Association

Ensemble de relations (binaires) de même nature entre éléments d’entités.

Nom d’association

Nom des rôles de chacune des 2 entités

Multiplicités (cardinalités)

MCD

(8)

Association identifiante

5 novembre 2012 Modélisation des données

«UID» Association identifiante naturelle

«PK» Association identifiante de composition

MCD

8

(9)

Association réflexive

Association entre 2 occurrences de la même entité

Liste - degré 1:1

Arbre - degré 1:n

Graphe - degré n:n

Orienté

Non orienté

MCD

(10)

Association réflexive identifiante

5 novembre 2012 Modélisation des données

Association réflexive identifiante de composition

Pas possible, les nœuds doivent pouvoir exister sans parent (nœuds isolés, nœuds racines, enregistrement transitoire de nœuds)

Association réflexive identifiante naturelle

Pas possible pour les graphes; tout nœud peut être père ou enfant d’une association.

Evidente pour les arbres (relation de parenté); possible avec les listes.

MCD

10

(11)

Entité associative

MCD Entité associative sur association de degré n:n

Pseudo entité associative sur association de degré 1:1 ou 1:n

(12)

Entité dépendante

5 novembre 2012 Modélisation des données

MCD

12

(13)

Généralisation – spécialisation (sous-ensembles) MCD

X X

X X X

X

X X X

(14)

Généralisation – spécialisation (partitions)

5 novembre 2012 Modélisation des données

MCD

14

X X

X X X

X

X X X

(15)

Synthèse des stéréotypes

MCD

Stéréotype Signification

«PK» • Attribut de clé primaire

• Association identifiante de composition

«PKS» • Association identifiante de composition avec application stricte de l’intégrité réf.

«PKC» • Association identifiante de composition avec suppression en cascade

«UID» • Attribut d’identifiant naturel unique

• Association identifiante naturelle

«UID-i»

i in {1..n} • Attribut d’identifiant naturel i

(16)

Règles de transformations MCD  MLD

1. Les 3 règles de base

2. Entité dépendante

3. Généralisation – spécialisation

4. Pseudo entité associative

5 novembre 2012 Modélisation des données 16

(17)

Les 3 règles de base - N° 1

Toute entité devient une table

MCD  MLD

(18)

Les 3 règles de base - N° 2

Chaque association binaire dont au moins une de ses cardinalités maximales vaut 1 est transformée en une relation (dépendance fonctionnelle).

5 novembre 2012 Modélisation des données

MCD  MLD

18

(19)

Les 3 règles de base - N° 3

Chaque association dont les deux cardinalités maximales valent n est transformée en une table associative.

MCD  MLD

(20)

Entité dépendante

Toute entité dépendante devient une table dépendante

5 novembre 2012 Modélisation des données

MCD  MLD

20

(21)

Spécialisation - généralisation

L’association Est une sorte de devient un lien 1..1 / 0..1

MCD  MLD

(22)

Pseudo entité associative

Les attributs de la pseudo entité associative et les associations auxquelles elle participe sont transformées comme autant de caractéristiques de l’entité enfant de l’association qu’elle

qualifie.

5 novembre 2012 Modélisation des données

MCD  MLD

22

(23)

Visual Paradigm

1. Modèles supportés

2. Référentiel

3. Modélisation des données

4. MCD – ORM (object/relational mapping)

5. Transformation ORM  ER

6. MLD relationnel – Entity Relationship (ER)

7. Génération de code SQL depuis ER

(24)

Modèles supportés

5 novembre 2012 Modélisation des données

VP

24

(25)

Référentiel

VP

(26)

Modélisation des données

5 novembre 2012 Modélisation des données

VP

26

(27)

ORM-Persistable

VP

(28)

Transformation ORM  ER (1)

5 novembre 2012 Modélisation des données

VP

28

(29)

Transformation ORM  ER (2)

VP

(30)

Entity Relationship (ER) - Symbolisme

5 novembre 2012 Modélisation des données

VP

30

(31)

Entity Relationship (ER) - Cardinalités

VP

(32)

Génération de code SQL-DDL (1)

5 novembre 2012 Modélisation des données

VP

32

(33)

Transformation ORM  ER

VP

(34)

Plugin Visual Paradigm MCD  MLD

1. Justification

2. Méta-modèle conceptuel sous-jacent

3. Principe général

4. Les règles de transformations

5 novembre 2012 Modélisation des données 34

(35)

Traitement correct des:

entités associatives

entités dépendantes

pseudo entités associatives

Choix d’implanter des règles de nommage appropriées

Description et transformation des identifiants naturels

«UID» (clés secondaires uniques et non nulles)

Enrichissement du modèle conceptuel avec des contraintes déclaratives et codées (OCL)

Justification

Plugin

(36)

Méta-modèle conceptuel sous-jacent (1)

5 novembre 2012 Modélisation des données 36

Plugin Marquage des classes

Pilotage du nommage

(37)

Attribut obligatoire

Méta-modèle conceptuel sous-jacent (2)

Plugin

(38)

Principe général

5 novembre 2012 Modélisation des données 38

Plugin

(39)

Les règles de transformation (1)

Plugin Type des attributs et colonnes

(40)

Les règles de transformation (2)

5 novembre 2012 Modélisation des données 40

Plugin Entité associative

(41)

Les règles de transformation (3)

Plugin Identifiants naturels

(42)

Synthèse (1)

5 novembre 2012 Modélisation des données 42

Plugin

(43)

Travaux d’étudiants

1. Transformation MCD  MLD incrémentale

2. Contraintes inter associations

3. APIs de tables à l’image de Designer

(44)

Transformation MCD MLD incrémentale (1)

5 novembre 2012 Modélisation des données 44

Travaux étudiants

Utilisation de valeurs marquées pour lier les objets entre MCD et MLD

Id : 98708989

pluralName = Clients

shortName = cli

entityId = 98708989

(45)

Gestion des modèles «existants», «idéaux» et «réels»

Gestion des sous-systèmes

Transformation MCD MLD incrémentale (1)

Travaux étudiants

(46)

Contraintes inter associations (1)

5 novembre 2012 Modélisation des données 46

Travaux

étudiants Structure entité/association insuffisante pour modéliser toute la logique métier.

Expression des contraintes:

Contraintes

Dépendances

« OCL » Object Language Constraint

(47)

Résultat dans le MLD pour une contrainte XOR :

Transformée en contrainte de « CHECK » par le plug-in sur la table à vérifier.

Contraintes inter associations (2)

Travaux étudiants

(48)

APIs de tables (1)

5 novembre 2012 Modélisation des données 48

Travaux étudiants

Script PL-SQL

Triggers

-BIR -BIS -AIR -AIS -BUR -BUS -AUR -AUS -BDR -BDS -ADR -ADS

APIs de table

Table 4

2

ins

pre-ins

upd

pre-upd

del

pre-del post-ins post-upd post-del

1

5 6

MLD

Script SQL Plugin « APIs de tables » Visual Paradigm

Insert/Update/Delete

Commit

Rollback

Erreurs

8

3 (action API) 7 (action API)

Légende

Avant insert/update/delete Après insert/update/delete Génération à implémenter Génération existante

Erreur durant l’opération

Erreurs?

non

oui

Erreurs

(49)

APIs de tables (2) - Journalisation

Travaux étudiants

(50)

Plus de détails

1. Réalisation de MCD

http://lgl.isnetne.ch/modelisation-2005/index.htm

2. Transformation d’un MCD  MLD

http://lgl.isnetne.ch/modelisation-2005/chapitre_170/trsf_mcd_mld.pdf

3. Visual Paradigm

http://lgl.isnetne.ch/Visual-Paradigm-8/index.htm

4. Plugin Visual Paradigm

http://lgl.isnetne.ch/Visual-Paradigm-8/chapitre30/index.htm

5 novembre 2012 Modélisation des données 50

Références

Documents relatifs

Pour que vous soyez les meilleurs amis l’un pour l’autre, pour que vous soyez capables de vous entraider, de vous réconforter, de vous protéger mutuellement, vous aurez besoin de

Certaines questions en milieu d'exercices peuvent être diciles ; on pourra utiliser les résultats de ces questions pour répondre aux questions suivantes. Enn, comme d'habitude,

De manière plus générale, les cardinalités d’une entité dans une association expriment le nombre de fois qu’une occurrence de cette entité peut être impliquée dans une

Peut-il y avoir plusieurs articles sur le même sujet dans le même numéro?. Connaissant un article, est-ce que je connais le journal où il

On ne peut pas le placer dans l’entité Plage, puisqu’il peut y avoir plusieurs instruments joués par différents interprètes sur une même plage?. On ne peut pas non plus, le

La quantité correspond à la quantité de produit stocké pour un numéro de produit et un numéro de dépôt. Dans un dépôt, il peut y avoir plusieurs produits. Un dépôt peut

— Etape 1 : Toute classe d’entités du diagramme entité/association est représentée par une relation dans le schéma

Une étude de série trigonométrique simple qui aboutit à un joli calcul