Modélisation UML & SysML

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

english versionTwitterUMLChannel SparxSystems EA YouTube videosLinkedIn

import base de données apache derby sparx enterprise architect

Cet article est un partage d'expérience sur l'intégration de l'outil de modélisation Enterprise Architect avec la base de données Apache Derby.

  • DERBY est une base de données relationnelle Java (sous-projet Apache DB).
  • Avantages du moteur de base de données Apache Derby :
    • Open Source.
    • Empreinte de petite taille (2/3 Mo).
    • Multiplateforme.
    • Compatible JDBC et SQL.
    • Intégration dans une solution Java.

Enterprise Architect propose des fonctions de rétro-ingénierie compatible avec la plupart des moteurs de base de données (MySQL, Ms SQL Server, PostgreSQL, Oracle, etc.). EA requiert une connexion ODBC pour interroger la base de données et récupérer la définition du schéma relationnel de base de données.

Le projet sur lequel je suis intervenu avait besoin de générer sous EA les modèles de données pour une base Derby existante, ce en vue de l'analyse et de la conception de sa future version. En l'absence d'un support Derby sous EA, la solution s'est portée sur la réalisation d'un script pour importer le contenu d'un fichier DDL. Derby permet en effet de générer un fichier DDL (contenu SQL) via la commande dblook.

La solution d'intégration entre DERBY et EA s'est opérée en deux étapes :

  • Définition dans EA des data types DERBY.
  • Script d'import de fichiers DDL issus de DERBY.

sparx enterprise architect api automation interface

La fonction Sécurité de l'outil Sparx Enterprise Architect permet de définir des utilisateurs, groupes, et permissions pour contrôler les accès sur un référentiel de modèles partagé. Cette fonction est souvent activée sur une base de données centralisée (MySQL, Postgres, SQL Server...) dans laquelle l'intégralité de données d'un projet EA sont stockées. L'annuaire Windows Active Directory est supporté afin d'authentifier un utilisateur selon sa session Windows.

EA permet d'exporter la liste des utilisateurs, groupes et permissions configurés sur un projet au format XML. Le fichier généré peut alors être utilisé pour copier cette configuration vers d'autres référentiels Enterprise Architect. J'ai récemment été en charge de fournir un export Excel pour aider les administrateurs d'une équipe dans la gestion des droits d'accès par l'extraction régulière des informations suivantes : liste des comptes utilisateurs et groupes associés, liste des permissions activées pour chaque groupe puis chaque compte utilisateur.

sparx enterprise architect security groups interface

L'un des atouts majeurs de l'outil Enterprise Architect est d'être complètement ouvert via son interface (API). J'ai ainsi été en mesure de réaliser un script VB sous EA pour obtenir un export Excel personnalisé en interrogeant la base de données du projet. Malgré un bon niveau de documentation de l'API, je ne pouvais pas obtenir et générer simplement le nom des permissions à partir des identifiants obtenus.

Une vérification manuelle, permission par permission, m'a permis de produire un tableau de correspondance - mapping. Cet article présente le contenu de ce tableau car il peut servir pour des cas similaires.

  • Mise à jour (07/02/2017) ajout de nouvelles permissions disponibles sous Enterprise Architect 13 : Edit Scripts, Run Scripts, Configure Project Prerequisites