Modélisation UML & SysML

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

english versionTwitterUMLChannel SparxSystems EA YouTube videosLinkedIn
jeudi, 20 juin 2019 22:56

Aperçu Enterprise Architect 15 beta

Écrit par
Évaluer cet article
(0 Votes)

aperçu enterprise architect 15 beta

Mise à jour (04/09/2019) : Enterprise Architect 15 est disponible en téléchargement à partir du site de SparxSystems.

Sparx Systems a publié Enterprise Architect 15 en version beta.

Voici les principales évolutions et fonctionnalités disponibles :

  • Data Miner : création/synchronisation des modèles à partir d’une source de données (SQL, JSON, CSV, Excel…).
  • JavaScript Model Based Add-ins : création d’add-ins dans un projet EA (aucune installation nécessaire).
  • Ad-Hoc Tables : création de feuilles de calculs en tant qu’éléments (artefacts) à utiliser dans les diagrammes.
  • Browser : nouveaux onglets (diagram, element) et accès à la fonction « Find in… ».
  • Améliorations diagrammes
    • Custom diagram : option permettant d’afficher une version simplifiée des éléments UML, SysML, BPMN, ArchiMate ou autres.
    • Bookmark values.
    • Group elements.
    • Link to element feature
    • Google GCP, Amazon AWS web images.
    • Image Assets : options glisser/déposer.
  • Nouveaux raccourcis claviers.

Cet article présente ces nouvelles fonctionnalités et évolutions avec Enterprise Architect 15.

Data Miner

Data Miner est une nouvelle fonctionnalité qui permet d’importer ou de synchroniser des éléments ou relations sous Enterprise Architect à partir d’une source de données (base de données, fichier JSON ou XML, etc.).

Data Miner est accessible via un nouveau type de diagramme dont la toolbox est illustrée ci-dessous.

data miner toolbox sparxsystems enterprise architect 15

  • Classe DMConnection [1] : propriétés pour se connecter sur une base de données via ODBC, un fichier local, ou une url.
  • Classe DMSet [1..*] : requête sur la source de données.
  • Classe DMScripts [1] : scripts pour mettre à jour les modèles EA à partir des données disponibles au travers des éléments DMSet.
  • Classe Data Source et Harvester relationships: relie les éléments DMSet à la DMConnection, ou l’élément DMScripts aux DMSet.
  • Remarque : des patterns permettent de créer facilement un module avec l’ensemble des éléments Data Miner nécessaires.

Exemple d’import depuis un fichier Excel :

data miner import Excel sparxsystems enterprise architect 15

Procédure :

  • Utiliser le menu Edit Data Miner Connection sur l’élément DMConnection pour définir l’emplacement du fichier (local ou sur une url)..

data miner file connection properties sparxsystems enterprise architect 15

Le fichier Excel utilisé dans cet exemple contient une feuille de calcul pour chaque type d’information collectée : applications, interfaces, données, flux de données entre applications.

data miner import excel applications sparxsystems enterprise architect 15

data miner import excel interfaces sparxsystems enterprise architect 15

data miner import excel data objects sparxsystems enterprise architect 15

data miner import excel data flows sparxsystems enterprise architect 15

  • Le menu contextuel Open Data Miner Visualizer sur les éléments DMSet permet de définir la requête sur la source de données et de vérifier le résultat. Dans l’exemple suivant, la requête porte sur le contenu de l’onglet Excel APPS (un élément DMSet a été créé pour chaque feuille de calcul Excel).

data miner dmset query excel spreadsheet sparxsystems enterprise architect 15

  • La manipulation des modèles (éléments, attributs, opérations, relations, diagrammes, etc.) sous Enterprise Architect est définie dans le code JavaScript de l’élément DMScript, accessible via le menu contextuel Edit Data Miner Processor.
    • Il est recommandé d’utiliser le pattern proposé dans la boîte à outil Data Miner pour disposer d’un élément DMScript avec un code initial.
    • De nouvelles classes dans l’API Interop EA sont disponibles : EA.DataMiner, EA.DataMinerManager, EA.DataSet, EA.DMAction, EA.DMArray, EA.DMConnection, et EA.DMScript.
  • Une fois le script défini, l’étape finale consiste à l’exécuter via un clic droit > Run Data Miner Processor.

Resultat :

  • Les éléments ArchiMate Application Component, Interface et Data Object ont été générés dans une nouvelle arborescence (spécifique au code réalisé pour cet exemple) :

data miner import excel result browser sparxsystems enterprise architect 15

  • Les tagged values définies dans les stéréotypes ont été initialisées avec les valeurs mappées, comme pour l’application suivante :

data miner import excel result browser sparxsystems enterprise architect 15

data miner import excel result data flow sparxsystems enterprise architect 15

Le DataMiner est une fonction d’import ou de synchronisation avec EA à partir de sources externes. Il est important de préciser qu’il ne gère pas d’export vers la source externe de données. C’est une fonctionnalité très utile pour intégrer facilement de multiples sources de données dans les modèles sans passer par exemple par un fichier CSV ou Excel pivot. JavaScript  inclut des parsers adaptés aux formats XML et JSON.

Remarque : j’ai commencé à tester l’import du metadata ODATA en alternative à la procédure partagée ici. Le Data Miner va permettre de générer non seulement les classes et attributs, mais également les associations – à suivre !

JavaScript Model Based Add-ins

Les add-ins traditionnels dans Enterprise Architect sont des applications à installer sur chaque poste client pour disposer de ses fonctionnalités (eaUtils en est un exemple). Enterprise Architect 15 intègre un nouveau type d’add-in dit « Model-Based » à définir dans un projet tout comme les scripts (cf. présentation EA User Group Londres 2018).

Les model-based add-ins sont codés en JavaScript dans Enterprise Architect, alors que la plupart des add-ins traditionnels sont développés en C# ou Java. Comparés aux scripts, ces add-ins se différencient par la gestion des évènements EA (broadcast event) permettant notamment de créer un menu dédié (dans le ruban ou via les menus contextuels).

Des exemples de Model Based Add-ins sont disponibles dans le projet EA Example : 

model based addin javascript class sparxsystems enterprise architect 15

Cet add-in est automatiquement reconnu dans la liste suivante :

model_based_addin_manage_addins_sparxsystems_enterprise_architect_15

Dans l’exemple suivant, le menu de l’add-in permet de générer la liste des attributs d’une classe sélectionnée dans la vue System Output :

model_based_addin menu sparxsystems_enterprise_architect_15

Custom Tables

Enterprise Architect permet déjà d’utiliser des tableaux dans un diagramme au travers des artefacts Model View dont le contenu est défini selon une requête SQL.

Exemple avec une liste de tests automatiques eaTests pour l’add-in eaUtils :

adhoc tables model views sparxsystems_enterprise_architect_15

Custom table est un nouveau type d’artefact disponible avec Enterprise Architect 15 pour gérer des feuilles de calculs. L’exemple suivant a été défini pour présenter les flux de données entre applications :

adhoc custom table data flow example sparxsystems_enterprise_architect_15

Remarques : le mode édition s’utilise assez facilement, néanmoins un menu dédié, similaire au générateur RTF de documents, serait utile. Il n’est pas possible actuellement de copier/coller un contenu depuis Excel ; cela pourrait faciliter le transfert d’une mise en forme sous Excel vers des artefacts ‘custom table’.

La structure de la feuille de calcul est disponible au format XML via la tagged value data : 

adhoc custom table data content example sparxsystems_enterprise_architect_15

Les propriétés de mise en forme des cellules sont gérées sous l’onglet dataFormat :

adhoc custom table data format example sparxsystems_enterprise_architect_15

Enfin l’onglet script permet de réaliser les fonctions de mise à jour à partir des modèles.

Le menu contextuel Execute behavior script exécute le script pour mettre à jour les applications source et cible pour chaque échange de donnée :

adhoc custom table data script result sparxsystems_enterprise_architect_15

Evolutions Browser

L’explorateur ou Browser propose désormais 4 onglets :

  • 1- Project : contenu du référentiel (éléments, diagrammes)

project_browser_sparxsystems_enterprise_architect_15

  • 2- Context : vue filtrée sur le contenu du paquetage sélectionné (nouveauté EA 14)

context_browser_sparxsystems_enterprise_architect_15

  • 3- Diagram : nouvelle vue avec la liste des éléments (triés alphabétiquement) présents dans le diagramme actif, ainsi que les associations entrantes/sortantes. Cette vue est intéressante pour faciliter la gestion des éléments d’un diagramme.
    • Un simple clic sur un élément ou connecteur sélectionne celui-ci dans le diagramme.
    • Un double clic ouvre la fenêtre de propriétés.

diagramt_browser_sparxsystems_enterprise_architect_15

  • 4- Element : intégration de la vue element browser sur l’élément sélectionné..

element_browser_sparxsystems_enterprise_architect_15

Le Browser propose une nouvelle action : find in… illustrée ci-dessous.

browser find in shortcut_sparxsystems_enterprise_architect_15

Lorsque l’on travaille sur un diagramme, cette action affiche l’élément sélectionné ou le diagramme dans le Browser. C’est un raccourci à la fonction très utile du Find in Project Browser (disponible via un clic droit), et ainsi une alternative aux raccourcis clavier Alt+G ou Maj+Alt+G.

Nouveautés diagrammes

Custom Diagram Drawing Style

Custom style est une nouvelle option dans les propriétés du diagramme. Celle-ci permet de définir une représentation différente du formalisme lié au langage utilisé (UML, SysML, BPMN, ArchiMate…), ce afin de faciliter la compréhension et la partage avec des publics non techniques.

Représentation personnalisée d’applications :

diagram custom style application sparxsystems_enterprise_architect_15

Représentation standard BPMN :

diagram custom style bpmn example before_sparxsystems_enterprise_architect_15

Représentation personnalisée BPMN :

diagram custom style bpmn example after_sparxsystems_enterprise_architect_15

Cette fonction peut être utile afin d’éviter de créer une vue hors référentiel avec Visio, Powerpoint, etc. De plus le nom des éléments reste cohérent et à jour avec l’état du modèle.

Les options de mise en forme sont présentées dans le diagramme suivant :

diagram custom drawing styles_sparxsystems_enterprise_architect_15

Avec la version beta utilisée, j’ai néanmoins rencontré des difficultés à réaliser ce diagramme ; à tester à nouveau dans la release finale.

Bookmark value

La fonction bookmark value permet d’associer une valeur affichée au-dessus d’un élément. Cette information est spécifique au diagramme i.e. différentes valeurs peuvent être définies pour un élément sur chaque diagramme nécessaire.

Cela peut être utile pour indiquer un ordre logique de lecture comme illustré dans le diagramme BPMN suivant :

diagram bookmark value bpmn example sparxsystems_enterprise_architect_15

Pour définir une valeur de bookmark, utiliser le menu contextuel Set Bookmark Value, activer l’option et renseigner la valeur.

diagram bookmark value sparxsystems_enterprise_architect_15

Le menu contextuel du diagramme permet d’afficher ou masquer tous les marqueurs (Show/Hide All Bookmark Values).

Group Elements

Il est désormais possible de regrouper une sélection d’éléments dans un diagramme pour les déplacer, changer les couleurs, l’alignement, etc. via le menu contextuel : Group Elements.

diagram group elements sparxsystems_enterprise_architect_15

Link to Element Feature

Cette fonction permet de relier l’attribut ou l’opération d’une classe par exemple vers un autre élément. Avant la version 15, une fois l’association entre deux classes créée, il fallait réaliser un clic droit sur l’extrémité de l’attribut à mapper, sélectionner Link to Element Feature, puis choisir l’attribut. Cette procédure est rapidement fastidieuse pour mapper plusieurs attributs ou opérations.

Dans la nouvelle version, la sélection de l’attribut ou de l’opération sur la classe propose de créer directement ce type de lien.

diagram link element feature sparxsystems_enterprise_architect_15

diagram link element feature sparxsystems_enterprise_architect_15

diagram link element feature sparxsystems_enterprise_architect_15

Ressources : images, icônes pour les architectures Amazon et Google

Une librairie graphique d’icônes et de visuels pour les architectures AWS (Amazon Web Services) et GCP (Google Cloud Platform).

Quelques-uns des visuels sont illustrés ci-dessous : 

images librairie graphique Google GCP sparxsystems_enterprise_architect_15

Image assets

Les éléments image assets ont été introduits avec Enterprise Architect 13 pour permettre de gérer les images en tant qu’éléments du référentiel.

Ces éléments ne sont pas censés être affichés sur les diagrammes, mais plutôt associés en tant que visuel alternatif à des éléments existants. Enterprise Architect 15 facilite ce fonctionnement via de nouvelles options lors du glisser/déposer d’image asset sur un diagramme.

drag drop image asset sparxsystems_enterprise_architect_15

  • Set as Alternate Image : définir l’image asset comme image de l’élément cible (ex : classe Class1).
    Add as element with image :
    créer un nouvel élément (ex : classe, composant…) avec l’image asset comme image associée.
    Add as link :
    ajouter l’image asset dans le diagramme.

Remarque : cette évolution est très utile, néanmoins ce serait parfait si l’option Add as element with image pouvait permettre de créer un Boundary, couramment utilisé pour l’affichage d’images (cf. eaUtils Find in All Diagrams pour plus d'informations).

Nouveaux raccourcis claviers

Raccourci vers les notes : Ctrl+Espace ou touche "n"

L’accès aux notes d’un élément est très utile pour visualiser ou mettre à jour sa description. C’est pourquoi la vue Notes est souvent activée. Un accès rapide via le raccourci clavier Ctrl+Espace ou la touche "n" permet d’afficher temporairement les notes dans une popup. 

notes keyboard shortcut ctrl space sparxsystems_enterprise_architect_15

Raccourci vers les propriétés : Ctrl+Entrée

Le raccourci clavier Ctrl+Entrée sur un élément sélectionné dans le Browser ou un diagramme affiche ses propriétés.

A noter que la vue Tagged Values est désormais intégrée à la vue Properties dans un onglet dédié (Tags).

properties tag view sparx enterprise architect 15