Précédent Remonter Suivant

Chapitre 2  Modélisation des données avec Power Designer

2.1  Introduction

PowerDesigner 9.0 est un outil de modélisation d'applications informatiques. Il succède à AMC, devenu AMC/Designor après son rachat par l'éditeur de bases de données Sybase.
Il fonctionne sous Windows. Pour le faire fonctionner sur une machine Linux, il faut utiliser une émulation telle que VMware1.
La version 9.0 permet de générer des scripts SQL compatibles avec PostgreSQL.
Une version de démonstration est téléchargeable sur le site Web de Sybase2.
Cette version de démonstration, disponible pendant 45 jours, est utilisée pour la formation.
Le CNRS a un accord commercial avec Sybase offrant une réduction de 80 % sur les tarifs catalogue.

2.1.1  L'interface

La fenêtre Power Designer représente un environnement de conception de bases de données. Vous pouvez y effectuer les types de tâches suivants :


Figure 2.1 : Fenêtre Power Designer



2.1.2  Les modèles

Power Designer prend en charge quatre types de modèles :

Modèle Conceptuel de Données (MCD)

Un MCD représente la structure logique globale d'une base de données, indépendamment du logiciel ou de la structure de stockage des données. Un modèle conceptuel contient toujours des données qui ne sont pas encore mises en oeuvre dans la base de données physique. Il constitue une représentation formelle des données nécessaires au fonctionnement d'une entreprise

Modèle Physique de Données (MPD)

Le MPD définit la configuration physique de la base de données et permet d'en connaître les détails. Ce modèle prend en compte à la fois les structures de stockage du logiciel et celles des données. Vous pouvez modifier le MPD afin de l'adapter à vos besoins en matière de performances ou à vos contraintes physiques.

Modèle Orienté Objet (MOO)

Un MOO contient un ensemble de packages, de classes et d'interfaces ainsi que leurs relations. L'ensemble de ces objets forme une structure de classes qui est le schéma logique de tout ou partie d'un système logiciel. Un MOO est, pour l'essentiel, un modèle conceptuel d'un système logiciel.
Le Modèle Orienté Objet permet de créer des modèles orientés objet (MOO). Vous pouvez construire un MOO purement à des fins de modélisation orientée objet, pour générer des fichiers Java, ou bien pour pouvoir utiliser des objets d'un MOO dans un Modèle Physique de Données (MPD) afin d'analyser la conception d'une base de données relationnelle.

Modèle de Processus métiers (MPM)

Le MPM décrit les différentes tâches et processus internes d'un métier et la manière dont les partenaires commerciaux dialoguent avec ces tâches et processus.
Le MPM est un modèle conceptuel qui décrit précisément la logique et les règles métiers du point de vue du partenaire commercial. Un MPM utilise un diagramme qui fait apparaître les interactions entre les processus, les flux, les messages et les protocoles de collaboration depuis un ou plusieurs point de début jusqu'à plusieurs points de fin potentiels.

2.1.3  Environnement de modélisation de Power Designer

La hiérarchie standard des objets dans Power Designer est la suivante :

2.2  Créer un Modèle Conceptuel des Données (MCD)

2.2.1  Les objets du MCD

Le MCD représente les interactions entre les objets suivants :
Objet Outil Description
Domaine -- Ensemble de valeurs pour lesquelles une information est valide
Information -- Elément d'information de base
Entité Personne, lieu, chose ou concept dont les caractéristiques présentent un intérêt pour l'entreprise et au sujet duquel vous souhaitez conserver des informations
Attribut d'entité -- Elément d'information de base attaché à une entité
Association Connexion portant un nom ou association entre des entités (méthodologie de modélisation Merise)
Relation Connexion portant un nom ou relation entre entités (méthodologie de modélisation Entité Relation (ER))
Héritage Relation particulière qui définit une entité comme étant une instance particulière d'une entité plus générale
Pour créer un nouveau MCD :

Sélectionnez File-->New pour afficher une boîte de dialogue de sélection qui liste les modules Power Designer disponibles.

Sélectionnez Modèle Conceptuel de Données ('Conceptual Data Model'), puis cliquez sur OK.

Un nouveau MCD s'ouvre dans l'espace de travail courant. Une fenêtre de diagramme vide s'affiche, elle contient une palette d'outils de conception. Un nouveau noeud de MCD s'affiche sous le noeud Espace de travail (Workspace) dans l'Explorateur d'objets.

Sélectionnez Model-->Properties.

ou

Pointez sur un emplacement vide dans le diagramme, cliquez le bouton droit de la souris et sélectionnez Properties dans le menu contextuel. La feuille de propriétés du modèle s'affiche.


Figure 2.2 : Propriétés d'un modèle


2.2.2  Création d'un domaine

Définition d'un domaine

Les domaines servent à identifier les types d'information dans votre projet. En appliquant un domaine aux informations, vous facilitez la standardisation des données pour les attributs des différentes entités.

Dans un MCD, vous pouvez définir les informations suivantes en affectant un domaine :
Par exemple, si vous décidez que tous les numéros de téléphone doivent être enregistrés dans des données de type VarChar de longueur 20, vous pouvez créer un domaine 'Numéro Téléphone' qui décrira ces caractéristiques. Vous pourrez alors, à chaque fois que vous créerez un nouvel attribut contenant un numéro de téléphone, le rattacher au domaine 'Numéro Téléphone'. Il en prendra automatiquement les caractéristiques (type VarChar et longueur 20).

Création

Vous pouvez créer un domaine à partir de la liste des domaines.

Lorsque vous créez un domaine, celui-ci se voit attribuer un nom par défaut qui inclut un numéro. Ce numéro est affecté dans l'ordre de création des objets.
Pour créer un domaine dans un MCD :

Sélectionnez Model-->Domains pour afficher la liste des domaines disponibles.


Figure 2.3 : Liste des domaines


Cliquez sur une ligne vide dans la liste.

ou

Cliquez sur l'outil Ajouter une ligne ('Add a row').

Une flèche s'affiche au début de la ligne.

Saisissez un nom et un code de domaine.

Cliquez sur Appliquer ('Apply') pour valider la création du nouveau domaine.

Double-cliquez sur la flèche située au début de la ligne.

ou

Cliquez sur l'outil 'Properties'.

La feuille de propriétés du nouveau domaine s'affiche.

(Facultatif) Cliquez dans la colonne Type de données ('Data Types') sur la même ligne.

Sélectionnez un type de données dans la liste déroulante.

Spécifiez la longueur et la précision requises.

Cliquez sur OK dans chacune des boîtes de dialogue successives.

2.2.3  Définition d'une entité

Définition

Une entité représente un objet défini au sein du système d'information et au sujet duquel vous voulez conserver des informations. Par exemple, dans un modèle concernant les salariés et les divisions, les entités sont Salarié et Division.
Une occurrence d'une entité est un élément individuel qui appartient à l'entité. Par exemple, le salarié Martin est une occurrence de l'entité Salarié.
Vous pouvez afficher la feuille de propriétés d'une entité en double-cliquant sur le symbole de cette entité dans le diagramme.

La définition d'une entité comprend également les propriété suivantes, possédant chacune leur propre feuille de propriétés, que vous pouvez ouvrir indépendamment de l'entité :

Création

Pour créer une entité, vous pouvez procéder de l'une des façons suivantes : Lorsque vous créez une entité, celle-ci se voit attribuer un nom par défaut qui inclut un numéro. Ce numéro est affecté dans l'ordre de création des objets.
Pour créer une entité à partir d'un diagramme :

Cliquez sur l'outil 'Entity' dans la palette.

Cliquez sur un emplacement vide dans la fenêtre du diagramme pour afficher le symbole suivant à l'endroit où vous avez cliqué :


Cliquez sur l'outil 'Pointer'.

ou

Cliquez le bouton droit de la souris pour libérer l'outil Entity.

Double-cliquez sur le nouveau symbole d'entité dans le diagramme pour afficher sa feuille de propriétés.

Saisissez un nom et un code d'entité. Cliquez sur OK.

Pour créer une entité à partir de la liste des entités :

Sélectionnez Model-->Entity pour afficher la liste des entités disponibles.

Cliquez sur une ligne vide dans la liste.

ou

Cliquez sur l'outil Ajouter une ligne ('Add a row').

Une flèche apparaît au début de la ligne et un nom d'entité par défaut s'affiche.

Saisissez un nom et un code d'entité.

Cliquez sur OK.

Le symbole de cette entité est inséré dans le diagramme courant.

2.2.4  Définition d'un attribut

Les attributs d'entité sont les éléments d'information de base attachés à une entité. Lorsque vous générez un Modèle Physique de Données (MPD) à partir d'un Modèle Conceptuel de Données (MCD), les attributs d'entité deviennent des colonnes de tables dans le MPD.

Création

Vous pouvez créer un attribut d'entité directement dans la liste des attributs d'entités. Lorsque vous créez un attribut d'entité, il est automatiquement ajouté à la liste des informations. Si vous sélectionnez l'option de modèle Réutilisation admise (Tools-->Model Options-->Data items/Allow reuse), vous pouvez utiliser la nouvelle information comme attribut d'entité pour les autres entités.
Pour créer un attribut d'entité dans la liste des attributs d'entité :

Cliquez sur l'onglet 'Attributes' dans la feuille de propriétés d'une entité.

La page 'Attributes' comportant la liste de tous les attributs associés à l'entité s'affiche.


Figure 2.4 : Liste des attributs


Cliquez sur une ligne vide dans la liste.

ou

Cliquez sur l'outil Ajouter une ligne ('Add a row').

Une flèche s'affiche au début de la ligne.

Saisissez un nom et un code d'entité.

Réutilisation automatique d'une information

Si vous sélectionnez les options d'information Réutilisation admise et Code unique et que vous saisissez le nom d'une information déjà utilisée, vous réutilisez automatiquement cette information.

Cliquez sur OK.

Définition d'un identifiant

Dans la fenêtre "liste des attributs" (cf. figure section 2.4, page ??), cocher la case "P" (comme "Primary Key") sur la ou les lignes des attributs constituant la clé primaire de l'entité.

Réorganisation d'une liste d'attribut d'entité

Chaque entité dispose de sa propre liste d'attributs d'entité.

Dans cette liste, vous pouvez réorganiser les éléments dans l'ordre de votre choix. Lorsque vous générez un MPD, c'est l'ordre des attributs d'entité qui détermine l'ordre de génération des colonnes.
Pour réorganiser une liste d'attributs d'entités :

Double-cliquez sur une entité dans le diagramme pour afficher sa feuille de propriétés.

Cliquez sur l'onglet 'Attributes'.

La page 'Attributes' comportant tous les attributs associés à l'entité s'affiche.

Sélectionnez un ou plusieurs attributs d'entité dans la liste.

Utilisez les boutons de flèche situés dans le coin inférieur gauche de la liste pour déplacer les éléments dans la liste.

Cliquez sur OK.

2.2.5  Définition d'une association dans un MCD

Définition

Une association est une connexion entre des entités.

Dans la méthodologie de modélisation Merise, l'association permet de lier des entités représentant chacune des objets clairement définis mais qui sont liés par un évènement qui peut ne pas être très clairement représenté par une autre entité. Une occurrence d'association correspond à une occurrence de chacune des occurrences d'entité utilisées par l'association.
Exemple : Soient trois entités K7 vidéo, Client, et Vidéo Club contenant respectivement des informations sur les cassettes vidéo, sur les clients et sur le magasin. Ces trois entités sont liées par une association représentant la location de cassettes vidéo (Location K7). L'association Location K7 contient des attributs Date et Nom employé qui renseignent sur la date de la location et sur l'employé qui a loué la cassette au client.


L'association Location K7 génère une table dans le MPD contenant cinq colonnes : Nom client, Titre cassette, Nom du magasin, Date, Nom employé.


Dans Power Designer, vous pouvez choisir d'utiliser dans votre MCD les associations uniquement ou bien à la fois les associations et les relations.
Liens d'association

Une association est reliée à une entité par un lien d'association qui symbolise le rôle et la cardinalité entre une association et une entité.

Création

Pour créer une association, vous pouvez procéder de l'une des façons suivantes : Lorsque vous créez une association, celle-ci se voit attribuer un nom par défaut qui inclut un numéro. Ce numéro est affecté dans l'ordre de création des objets. Création d'une association à partir d'un diagramme dans un MCD
Pour créer une association à partir d'un diagramme dans un MCD :

Cliquez sur l'outil Lien d'association ('Association Link') dans la palette d'outils.

Cliquez sur la première entité, puis maintenez le bouton gauche de la souris enfoncé et faites glisser le curseur sur la seconde entité. Relâchez le bouton de la souris.

Le symbole d'association est créé entre les deux entités.


Double-cliquez sur le symbole de la nouvelle association dans le diagramme pour afficher sa feuille de propriétés.

Saisissez un nom et code d'association.


Figure 2.5 : Propriétés d'un association


Cliquez sur OK.

Pour créer une association à partir de la liste des associations :

Sélectionnez Model-->Associations pour afficher la liste des associations.

Cliquez sur une ligne vide dans la liste.

ou

Cliquez sur l'outil Ajouter une ligne ('Add a row').

Une flèche apparaît au début de la ligne et un nom d'association par défaut s'affiche.

Saisissez un nom et un code d'association.

Cliquez sur OK.

Le symbole de cette association est inséré dans le diagramme courant.

Faites glisser le symbole d'association entre deux ou plusieurs entités.

Cliquez sur l'outil Lien d'association dans la palette d'outils.

Cliquez à l'intérieur de la première entité, puis maintenez le bouton gauche de la souris enfoncé et faites glisser le curseur sur l'association. Relâchez le bouton de la souris.

Le premier lien s'affiche.

Cliquez à l'intérieur de l'association, puis maintenez le bouton gauche de la souris enfoncé et faites glisser le curseur sur la seconde entité. Relâchez le bouton de la souris.

Le second lien s'affiche et l'association est créée entre les deux entités.

Création d'un lien d'association

Pour créer un lien d'association entre une association et une entité, vous pouvez procéder de l'une des façons suivantes : Pour créer un lien d'association à partir d'un diagramme :

Cliquez sur l'outil Lien d'association ('Association Link') dans la palette d'outils.

Cliquez sur la première entité, puis maintenez le bouton gauche de la souris enfoncé et faites glisser le curseur sur la seconde entité. Relâchez le bouton de la souris.

Le symbole d'association est créé entre les deux entités.


Double-cliquez sur l'un des deux symboles de lien d'association dans le diagramme pour afficher sa feuille de propriétés.

Saisissez ou sélectionnez les propriétés de lien d'association requis.


Figure 2.6 : Propriétés d'un lien d'association


Cliquez sur OK.

Définition d'une cardinalité pour les liens d'association

La cardinalité indique le nombre d'occurrences (aucune, une ou plusieurs) d'une entité par rapport à une autre entité. Vous définissez la cardinalité pour chaque lien d'association existant entre l'association et l'entité.

La cardinalité d'un lien d'association peut avoir les valeurs suivantes :
Cardinalité Description
0,1 Il peut y avoir zéro ou une occurrence de l'entité par rapport à l'autre entité. L'association n'est pas obligatoire
0,n Il peut y avoir zéro ou plusieurs occurrences de l'entité par rapport à l'autre entité. L'association n'est pas obligatoire
1,1 Une occurrence de l'entité peut correspondre à une et une seule occurrence de l'autre entité. L'association est obligatoire
1,n Une occurrence de l'entité peut correspondre à plusieurs occurrences de l'autre entité. L'association est obligatoire

2.2.6  Définition d'un héritage

Définition

L'héritage permet de définir une entité spécialisée par rapport à une entité générale. Dans un héritage, les entités ont beaucoup de caractéristiques communes mais sont toutefois différentes. L'entité générale est appelée entité surtype ou père, elle est dotée de toutes les caractéristiques communes aux entités spécialisées qui elles, sont appelées sous-type, fils ou enfant. Les entités sous-types ne disposent que des caractéristiques qui leur sont propres.

Vous pouvez établir un lien d'héritage entre une entité générale et des entités spécialisées. Dans un lien d'héritage, une ou plusieurs entités enfant héritent, au niveau physique, de tout ou partie des attributs d'une entité père.

Soit le cas d'une entreprise gérant sa comptabilité où tous les partenaires avec lesquels elle commerce sont considérés comme des tiers. Parmi ces tiers, on souhaite distinguer deux sous-types : les clients et les fournisseurs. En tant que tiers, clients et fournisseurs ont des caractéristiques communes, mais ils ont aussi des caractéristiques spécifiques telles que les conditions de règlement ou les taux de remises. Dans un héritage, les entités Clients et Fournisseurs constituent des types spécialisés de l'entité père Compte.

Graphiquement, vous obtiendrez le résultat suivant :

Création

Pour créer un lien d'héritage :

Cliquez sur l'outil Héritage ('Inheritance') dans la palette d'outils.

Cliquez sur l'entité père, puis maintenez le bouton gauche de la souris enfoncé et faites glisser le curseur sur l'entité enfant. Relâchez le bouton de la souris.

Le lien s'affiche entre les deux entités, un demi cercle s'affiche sur ce lien et une flèche est orientée vers l'entité père.


Si vous voulez créer une nouvelle entité enfant à partir du même lien d'héritage, cliquez sur le demi cercle et tracez le lien jusqu'à la nouvelle entité enfant.

Le lien d'héritage relie toutes les entités enfant à l'entité père.

2.2.7  Vérification dun MCD

Vous pouvez vérifier la validité d'un MCD à tout moment.

Un MCD doit respecter les règles générales suivantes :

Vérification d'un MCD global

Pour vérifier un MCD global :

Sélectionnez Tools-->Check Model.

ou

Pointez sur un emplacement vide dans le diagramme, cliquez le bouton droit de la souris, puis sélectionnez Vérifier le modèle dans le menu contextuel.

La boîte de dialogue Paramètres de vérification ('Check Model Parameters') du modèle s'affiche à la page Options.

Développez un noeud d'objet.

Les paramètres d'objet contrôlés lors de la vérification s'affichent avec des symboles indiquant un degré de sévérité du problème.


Figure 2.7 : Paramètres de vérification du modèle


Si vous souhaitez changer le degré de sévérité d'un problème, sélectionnez le paramètre approprié, puis cliquez sur l'outil Erreur ('Error') ou Avertissement ('Warning').

Le symbole change pour afficher le nouveau degré de sévérité.

Cliquez sur le bouton OK.

La fenêtre Liste de résultats affiche les messages d'erreur et les avertissements générés en fonction des options de vérification que vous avez définies.


Figure 2.8 : Résultat de la vérification du modèle


Correction du MCD en fonction des résultats de la vérification

Vous pouvez utiliser la procédure de vérification pour localiser d'éventuels problèmes dans le MCD afin de les corriger ensuite.

Vous pouvez sélectionner l'un des outils suivants dans la barre d'outils de vérification :
Outil Option Description
Corriger Affiche la feuille de propriétés permettant de résoudre le problème
Aide Affiche la description de l'erreur ainsi que les suggestions de correction
Revérifier Vérifie le paramètre d'objet sélectionné, normalement après avoir effectué la correction
Corriger automatiquement Corrige automatiquement certaines erreurs

2.3  Générer un Modèle Physique des Données (MPD) à partir d'un MCD

2.3.1  Génération d'objets de MPD

Lorsque vous générez un Modèle Physique de Données (MPD) à partir d'un Modèle Conceptuel de Données (MCD), Power Designer convertit les objets et types de données de MCD en objets et types de données de MPD. Conversion d'objets de MCD en objets de MPD

La génération d'un MPD convertit des objets conceptuels en objets physiques comme suit :
Objet de MCD Objet généré dans un MPD
Entité Table
Attribut d'entité Colonne de table
Identifiant primaire Clé primaire ou étrangère, selon la relation de dépendance ou d'indépendance existante
Identifiant Clé alternative
Relation Référence

Génération de clés à partir d'identifiants

Les identifiants génèrent des clés primaires et des clés étrangères dans le MPD. Les identifiants non primaires génère des clés alternatives.

Le type d'une clé dépend de la cardinalité et du type de dépendance définis pour une relation dans le MCD.

Une clé primaire représente une ou plusieurs colonnes dont les valeurs identifient de façon unique une ligne contenue dans une table.

Une clé étrangère représente une ou plusieurs colonnes qui dépendent d'une colonne de clé primaire contenue dans une autre table et migrée à partir de cette table.

Une clé alternative représente une ou plusieurs colonnes dont les valeurs identifient de façon unique une ligne contenue dans une table et qui n'est pas une clé primaire.
Relations 1.n indépendantes

Dans les relations de type 1.n indépendantes, l'identifiant de l'entité située à une extrémité de la relation devient :
Le MCD ci-dessous représente une relation indépendante. Chaque division contient un ou plusieurs salariés.


Le MCD ci-dessus génère deux tables :
Table Clé primaire Clé étrangère
Division Numéro de la division --
Salarié Numéro du salarié Numéro de la division

Le MPD suivant est généré :


Relations 1.n dépendantes

Dans le cas des relations dépendantes, l'identifiant de l'entité non-dépendante devient une clé primaire/étrangère dans la table générée par l'entité dépendante.

La colonne migrée est intégrée dans l'index de clé primaire si ce dernier existe déjà.

Le MCD ci-dessous représente une relation dépendante. Chaque salarié travaille pour une et une seule division mais sa rémunération dépend directement de la division dans laquelle il travaille. Pour rendre une relation dépendante, il suffit de modifier les propriétés du lien portant la cardinalité 1,1 en cochant la case Identifier. La cardinalité est alors entourée de parenthèses signifiant que la relation interviendra dans la constitution de la clé primaire du modèle physique.


Le MCD ci-dessus génère deux tables :
Table Clé primaire Clé étrangère
Division Numéro de la division --
Salarié Numéro du salarié / Numéro de la division Numéro de la division

Le MPD suivant est généré.


Relations n.n indépendantes

Dans le cas de relations de type n.n indépendantes, les identifiants des deux entités sont migrés dans des tables de jointure sous la forme de clés primaire/étrangère.

Le MCD ci-dessous représente une relation indépendante. Chaque salarié peut appartenir à une ou à plusieurs division et chaque division peut comporter zéro ou plusieurs salariés.


Le MCD ci-dessus génère trois tables :
Table Clé primaire Clé étrangère
Division Numéro de la division --
Salarié Numéro du salarié --
Appartenance Numéro de la division/Numéro du salarié Numéro de la division/Numéro du salarié

Le MPD suivant est généré :


Relations 1.1 indépendantes

Dans le cas de relations de type 1.1 indépendantes, l'identifiant d'une entité est migré sous la forme d'une clé étrangère dans la table générée par l'autre entité.

Génération de tables à partir d'entités à l'aide d'héritages

Deux propriétés influent sur la génération de tables à partir d'entités à l'aide d'héritages.
Objet Propriété Génère (lorsqu'elle est sélectionnée)
Entité Générer table Table correspondant à l'entité (père ou enfant)
Héritage Mode de génération Père et/ou enfant (selon la case cochée)

2.3.2  Conversion de types de données de MCD en types de données de MPD

Propriétés du SGBD

Power Designer prend en charge à la fois les types de données physiques et les types de données conceptuels. Les types de données que vous sélectionnez dans un MCD ne sont pas toujours pris en charge par le SGBD courant. Dans ce cas, lors de la génération du MPD, le type de données est converti en type de données pris en charge par le SGBD courant.

Chaque SGBD contient les règles relatives à la conversion des types de données. Les correspondances exactes entre chaque type de données Power Designer et le type de données physique équivalent dans le SGBD cible sont répertoriées dans la sous-catégorie Data Type, lui même situé dans la catégorie Script dans l'explorateur SGBD, comme le montre l'exemple ci-dessous (voir page ??).


Figure 2.9 : Propriétés du SGBD


La colonne Modèle physique répertorie les types de données pour le SGBD courant et la colonne Interne répertorie les équivalents dans Power Designer. Vous pouvez modifier la définition d'un type de données physique existant en effectuant la modification directement dans l'une ou l'autre des colonnes.

Modifier le SGBD

Une fois les modifications validées dans le SGBD, vous ne pouvez pas retrouver la valeur par défaut des types de données. C'est pourquoi, vous devez toujours modifier une copie du SGBD et non l'original fourni avec Power Designer.
Pour ouvrir un SGBD :

Sélectionnez Tools-->Resources-->DBMS pour afficher la liste des SGBD.

Sélectionnez un SGBD dans la liste.

Cliquez sur l'outil Propriétés ('Properties').

ou

Double-cliquez sur le nom d'un SGBD dans la liste.

La feuille de propriétés du SGBD s'affiche à la page 'General'.

Développez la catégorie Script, puis la sous-catégorie Data Type.

Sélectionnez l'élément PhysDataType.

Les valeurs des types de données du SGBD et leurs correspondances dans Power Designer s'affichent dans le volet Valeur situé à droite de l'explorateur.

Cliquez sur OK.

2.3.3  Génération d'un MPD

Génération d'un nouveau MPD

Vous pouvez générer un MPD à partir d'un MCD ou d'un package contenu dans un MCD.

Power Designer crée un nouveau MPD contenant tous les objets du MCD sélectionnés pour la génération. Le MPD ainsi créé s'affiche dans l'Explorateur d'objets et le diagramme correspondant est ouvert.

Vous ne pouvez générer un MPD qu'à partir d'un diagramme de MCD actif.
Pour générer un nouveau MPD à partir d'un MCD :

Sélectionnez Tools-->Generate Physical Data Model pour afficher la boîte de dialogue Options de génération de MPD.

Sélectionnez le bouton radio Générer ('Generate') un nouveau Modèle Physique de Données.

Saisissez un nom et un code pour le nouveau MPD. Si vous ne saisissez pas de valeur, le nouveau MPD portera le même nom et le même code que le MCD d'origine.


Figure 2.10 : Génération d'un MPD


Mise à jour d'un MPD existant

Vous pouvez mettre à jour un MPD existant de deux façons différentes, en fonction de l'état de l'option Conserver les modifications ('Preserve modifications') :
Conserver les modifications Résultat
Sélectionné Vous pouvez manuellement comparer et fusionner le MPD existant (volet droit) et le MPD généré (volet gauche)
Non sélectionné Le MPD existant est automatiquement remplacé pour le MPD que vous générez

Lorsque vous cochez la case Conserver les modifications, la fenêtre Fusion de modèles s'affiche une fois que le nouveau MPD est généré. Vous pouvez utiliser cette fenêtre pour choisir les objets à modifier, supprimer ou ajouter dans le modèle à fusionner. Le modèle à fusionner doit être ouvert dans l'espace de travail pour pouvoir être fusionné avec un modèle source.

Si vous ne cochez pas la case Conserver les modifications, le modèle existant est remplacé.

Vous ne pouvez générer un MPD qu'à partir de la fenêtre de diagramme de MCD active.

Le MPD que vous souhaitez mettre à jour en générant des objets provenant du MCD, doit avoir été généré au préalable.
Pour mettre à jour un MPD existant en générant à partir d'un MCD :

Sélectionnez Tools-->Generate Physical Data Model pour afficher la boîte de dialogue Options de génération d'un MPD.

L'option Mettre à jour le Modèle Physique de Données existant n'est disponible que pour un MPD déjà généré à partir d'un MCD.

Sélectionnez le bouton radio Mettre à jour le Modèle Physique de Données existant ('Update Physical Data Model').

Sélectionnez un modèle dans la liste déroulante Modèle ('Model'). Il s'agit du modèle existant que vous souhaitez mettre à jour.


Figure 2.11 : Mise à jour d'un MPD


2.4  Créer un Modèle Physique des Données (MPD)

2.4.1  Les objets d'un MPD

Un MPD peut inclure plusieurs types de diagrammes qui contiennent des types d'objet spécifiques :

Objet Outil Description
Table Série de lignes (enregistrements) auxquelles sont associées des colonnes (champs)
Colonne -- Structure de données qui contient une information individuelle figurant sur une ligne (enregistrement). Cet objet du modèle équivaut à un champ de base de données
Clé -- Colonne ou colonnes dont les valeurs identifient de façon unique une ligne dans une table. Une clé peut être définie comme clé primaire ou clé alternative
Clé primaire -- Colonne ou colonnes dont les valeurs identifient de façon unique une ligne dans une table et qui sont désignées comme identifiant primaire de chaque ligne d'une table
Clé alternative -- Colonne ou colonnes dont les valeurs identifient de façon unique une ligne dans une table et qui ne sont pas des colonnes de clé primaire
Clé étrangère -- Colonne ou colonnes dont les valeurs dépendent d'une colonne de clé primaire ou alternative contenue dans une autre table et sont migrées à partir de cette table
Index -- Structure de données associée à une ou plusieurs colonnes d'une table et dans laquelle les valeurs de colonne sont ordonnées de façon à accélérer l'accès au données
Référence Liaison entre la clé primaire ou alternative d'une table parent et la clé étrangère d'une table enfant. Selon les propriétés sélectionnées, une référence peut également lier des colonnes indépendamment des colonnes de clé primaire ou alternative
Vue Structure de données qui résulte d'une requête SQL et qui est créée à partir des données contenues dans une ou plusieurs tables

Figure 2.12 : Objets d'un MPD


2.4.2  Création d'un MPD

Pour créer un MPD, vous pouvez procéder de l'une des façons suivantes :
Pour créer un nouveau MPD :

Sélectionnez Fichier-->Nouveau pour afficher une boîte de dialogue de sélection qui liste les modules Power Designer disponibles.

Sélectionnez Modèle Physique de Données, puis cliquez sur OK.

La boîte de dialogue Choix du SGBD s'affiche.


Figure 2.13 : Choix du SGBD


Sélectionnez un SGBD dans la liste déroulante SGBD ('DBMS').

Sélectionnez le bouton radio Partage ('Share') ou Copie ('Copy').

Sélectionnez le type de diagramme dans la liste déroulante Premier diagramme (First Diagramme).

Cliquez sur OK.
Un nouveau MPD s'ouvre dans l'espace de travail courant. Une fenêtre de diagramme vide s'affiche, elle contient une palette d'outils de conception. Un nouveau noeud de MPD s'affiche sous le noeud Espace de travail dans l'Explorateur d'objets.

2.4.3  Reverse Engineering

Le reverse engineering est le processus qui consiste à générer un MPD, ou des objets de MPD, à partir d'une structure de base de données.

Vous pouvez générer un MPD depuis une structure de base de données de deux façons différentes :
Génération d'un MPD Description
A l'aide d'un fichier de script Vous effectuez le reverse engineering de fichiers de script SQL qui contiennent les instructions de création. Il s'agit généralement du script utilisé pour générer la base de données, mais cette opération peut impliquer d'autres scripts
Via une source de données ODBC Vous effectuez le reverse engineering de la structure d'une base de données existante, en spécifiant une source de données ODBC ainsi que des informations de connexion

Power Designer permet de procéder au reverse engineering de plusieurs fichiers de script simultanément pour créer un MPD.

Vous pouvez placer dans un nouveau MPD le contenu d'une base de données sur laquelle vous effectuez un reverse engineering. La source de données peut être constituée par un ou plusieurs fichiers script, ou bien par une source de données ODBC.
Pour effectuer le reverse engineering d'une base de données via ODBC :

Sélectionnez File-->Reverse engineer-->Database.

La boîte de dialogue Choix du SGBD s'affiche.

Cliquez sur le bouton radio Share.

Sélectionnez un SGBD dans la liste déroulante.


Figure 2.14 : Reverse Enfineering : Choix du SGBD


Cliquez sur OK.

La boîte de dialogue Reverse engineering d'une base de données s'affiche.

Cliquez sur le bouton radio Using an ODBC source et sélectionnez une source de données ODBC.


Figure 2.15 : Reverse Engineering : source ODBC


Cliquez sur OK.

La boîte de dialogue Reverse engineering via ODBC s'affiche.


Figure 2.16 : Reverse Engineering : sélection des objets


Sélectionnez un filtre pour le qualifiant et le propriétaire dans les listes déroulantes situées dans la parties supérieure gauche de la boîte de dialogue.

Cliquez sur un onglet de type d'objet.

Cochez la case des objets sur lesquels vous souhaitez faire porter le reverse engineering.

Décochez la case des objets que vous ne souhaitez pas inclure dans le reverse engineering.

Le cas échéant, cochez ou décochez l'option de reverse engineering proposée pour chaque type d'objet.

Cliquez sur OK.
La fenêtre Résultats signale la conversion des tables et indique que la base de données a subi le reverse engineering avec succès.

2.4.4  Génération d'un script de création de base de données

Power Designer permet de générer un script de création de base de données que vous pouvez ensuite exécuter dans votre environnement de SGBD.
Pour générer un script de création de base de données :

Sélectionnez Database-->Generate database.

La boîte de dialogue Génération d'une base de données s'affiche. Cette boîte de dialogue répertorie les options de création d'une base de données.


Figure 2.17 : Génération d'une base de données


Saisissez un répertoire de destination pour le fichier de script dans la zone Répertoire ('Directory').

Saisissez un nom de fichier de destination pour le fichier de script dans la zone Nom de fichier ('File name').

Sélectionnez le bouton radio Génération d'un script ('Script generation').

Spécifiez les paramètres de création pour les tables, les colonnes et les vues.

Cliquez sur l'onglet Clés & index (Keys & indexes').

La page Clés & index (Keys & indexes') s'affiche. Cette page affiche les paramètres de création relatifs aux clés, aux clés étrangères et aux index.

Sélectionnez les paramètres de création pour les clés et les index.

Cliquez sur l'onglet Base de données ('Database').

La page Base de données s'affiche. Elle affiche les paramètres de création relatifs aux bases de données, storages, tablespaces et types de données utilisateur.

Sélectionnez les options de création de base de données ('Database').

Cliquez sur l'onglet Options.

La page Options s'affiche. Elle affiche les options relatives au format, au contrôle et à l'archivage pour la génération de script.

Sélectionnez les options de script.

Cliquez sur l'onglet Sélection ('Selection').

La page Sélection s'affiche.

Etablissez votre sélection en cochant ou décochant les cases selon que vous souhaitez générer ou non les objets correspondants.

Cliquez sur OK.

La fenêtre Résultats affiche la progression de la génération, puis indique la syntaxe d'exécution du script. A l'issue de la génération du script, une boîte Résultat s'affiche. Elle indique le chemin d'accès complet du fichier de script généré.

Cliquez sur le bouton Fermer pour fermer la boîte Résultat.

ou

Si vous souhaitez modifier le script, cliquez sur son chemin d'accès dans la boîte Résultat, puis sur le bouton Editer.

Le script s'affiche dans un éditeur de texte.

2.5  Références

  1. La documentation de PowerDesigner en français :
    http://manuals.sybase.com/onlinebooks/group-pd/amc0900f/;
  2. DATE C.J. An Introductionto Database Systems, Éditions Addison Wesley, 2000. ISBN 0-201-38590-2.

1
http://www.vmware.com
2
http://www.sybase.com/products/designtools/powerdesigner

Précédent Remonter Suivant