Modélisation UML & SysML

Expertise et articles Blog sur UML, SysML, et Enterprise Architect de Sparx Systems

english versionTwitterUMLChannel SparxSystems EA YouTube videosLinkedIn
mardi, 02 juin 2020 15:01

Personnalisation des modèles de données dans Prolaborate avec la fonction Modelling Language

Écrit par
Évaluer cet article
(1 Vote)

Prolaborate Data Model Modelling Language profile

La solution web Prolaborate permet de fournir un accès dynamique aux modèles physiques de base de données générés par rétro-ingénierie et centralisés dans un référentiel Enterprise Architect. Cette solution peut se révéler essentielle pour ouvrir l'accès au modèle de données d'une base existante, ou sur des vues partagées lors d'ateliers de conception impactant le schéma de la base de données (évolutions tables, colonnes, etc.). Les fonctions collaboratives de Prolaborate permettent à chacun de communiquer et partager leurs remarques et commentaires via des fils de discussion, facilitant les tâches de mise à jour dans EA.

Enterprise Architect (EA) intègre un support "data modelling" compatible avec la définition de tables, colonnes, vues, procédures stockées, et fonctions pour l'ensemble des SGBD/DBMS (SQL server, MySQL, Postgres, etc.). Pour cela, EA intègre des stéréotypes sur les classes, attributs et opérations UML.

enterprise architect data model table sparx

Lorsque ces informations doivent être partagées via Prolaborate, il est important de pouvoir personnaliser leur affichage afin de produire une vue adaptée à la cible.

La fonction Modeling Language de Prolaborate permet d'adresser ce besoin au travers de profiles et d'un éditeur de formulaires. Prolaborate intègre plusieurs langages et notations d'EA par défaut tels que UML, BPMN, et Archimate (SysML est disponible sur demande). Lorsqu'un projet utilise ses propres stéréotypes, le fichier XML d'installation du MDG peut être importé directement dans Prolaborate. Le Data Model n'étant pas géré, j'ai défini un MDG spécifique et conforme aux définitions EA afin de pouvoir l'importer sous Prolaborate. 

Cet article présente un exemple d'utilisation avec le projet EA Example de Sparx.

Remarque : ce MDG a été proposé auprès de l'éditeur Prolaborate ; il sera prochainement disponible en téléchargement depuis leur site, en attendant d'être intégré dans une future release de Prolaborate. Vous pouvez me contacter pour obtenir une copie de ce fichier XML MDG (guillaume[at]umlchannel.com).

Contexte initial

Afin d'illustrer les avantages à utiliser la fonction Modelling Languages, la capture d'écran suivante présente le détail d'une table de BD définie sous EA et restituée dans Prolaborate :

prolaborate table database view

Toutes les propriétés affichées ne sont pas forcément utiles. Par exemple le champ Type = Class indique que l'élément est une classe (car c'est bien une classe UML stéréotypée "table"), hors cela peut prêté à confusion!

L'objectif d'installer et de configurer le profil Data Model Modelling Language est de pouvoir choisir les informations visibles (sélection des champs ou tagged values, ordre, nom du champ...).

Installer le profil Data Model Modelling Language

  • Une fois authentifié avec les permissions suffisantes sous Prolaborate, ouvrir la configuration, et sélectionner Modelling Languages.

Prolaborate Modelling Languages New

  • Remplir le formulaire, sélectionner le fichier MDG Prolaborate EAUML.xml, et valider (Add Modeling Language).

Prolaborate Modelling Languages DB MDG datamodel

  • Le profil Data Model est installé.

Prolaborate Modelling Languages DB MDG datamodel

Personnaliser la vue avec les profiles

Voici un exemple de procédure pour personnaliser les champs visibles d'une table de BD.

  • Cliquer sur Manage Profiles
  • Créer un nouveau profil ou sélectionner celui par défaut

Prolaborate Modelling Languages datamodel edit profile

  • Les stéréotypes du profil data model sont affichés : table, column, view, trigger, etc.
    • Remarque : l'icône "oeil" sur cette page permet de masquer tous les éléments d'un stéréotype, par exemple toutes les vues, procédures stockées, etc.

Prolaborate Modelling Languages datamodel hide stereotypes

  • Ouvrir l'éditeur (form designer) pour personnaliser les champs sur le stéréotype sélectionné.

Prolaborate Modelling Languages datamodel form designer

  • La configuration initiale est affichée ci-dessous.
    • Le nom, notes, auteur et type (Class) des tables sont affichés sous le groupe Basic Attributes.
    • Les trois tagged values sont présentées sous le groupe EAUML::table Attributes

Prolaborate Modelling Languages datamodel form designer edit

  • Ces champs peuvent être supprimés, masqués, affichés en lecture-seule, et leur titre renommé. D'autres champs peuvent être ajoutés à partir de la liste à droite.
    • Remarques : 
      • Les champs par défaut des éléments EA peuvent être ré-organisés librement avec les tagged values, sous n'importe quel groupe.
      • L'ordre peut être modifié.
  • L'exemple ci-dessous correspond à la configuration suivante :
    • Les groupes ont été renommés Main Properties et Additional Properties .
    • Le nom des tables est en lecture seule, et disponible via le champ "Table name".
    • Le contenu des notes est disponible dans le champ "Description" (accès lecture/écriture selon les permissions des utilisateurs).
    • Le champ Type a été supprimé.
    • Le champ Author a été masqué.
    • Seules les tagged values Tablespace et DBVersion sont visibles en lecture seule.

Prolaborate Modelling Languages datamodel form designer database

  • Important - sur le principe, les contraintes et colonnes d'une table (gérées respectivement comme opérations et attributs de classe sous EA) peuvent être configurées comme illustré ci-dessous. Néanmoins les attributs et opérations ne sont pas actuellement gérés par la fonction Modelling Language (la configuration n'est pas prise en compte par Prolaborate). Ce point pourra faire office d'une future évolution pour l'éditeur.

Prolaborate Modelling Languages datamodel form designer index

  • Le profile doit être enregistré.

Remarque : pour plus d'informations, consulter l'aide en ligne Prolaborate.

Expérience utilisateur

Un nouvel accès au modèle de données permet de vérifier que les informations visibles correspondent au profil configuré :

Prolaborate Modelling Languages data model table attributes sparx enterprise architect