Displaying items by tag: addin

Wednesday, 17 May 2023 07:05

SysML Requirements in Enterprise Architect

"SysML Requirements on Excel" is a new MDG Office Integration feature that allows users to author SysML requirements using Excel. Users can seamlessly integrate SysML requirements between MS Excel and Enterprise Architect.

Key features

  • Import and export SysML requirements data from Excel into Enterprise Architect.
  • Ability to create SysML Compliant requirements with inter-dependencies

SysML Requirements in Enterprise Architect

Using the “SysML Requirements on Excel” menu, users can connect an Enterprise Architect Model with an Excel spreadsheet.

This will create an Excel Document with required templates to let users create SysML requirements. This will also copy any existing Enterprise Architect requirements and the derived relationships to the Excel spreadsheet, to let users update or modify these contents.

EA_Ribbion.png

Working with Excel to author Requirements

The Excel template for SysML requirements authoring will have two spreadsheets,

  1. Requirements – The requirements sheet is used to create and update SysML compliant requirements, including Id and text, the sheet also displays any derived requirements (interconnected requirement)

Excel_Requirement_page.png

The Requirement Sheet has two parts: "SysML Requirements" and "Derived SysML Requirements".

SysML Requirements – It contains Name, Notes, Status, Version and Id, Text (Mandatory tags for SysML)

Derived SysML Requirements – It also contains Name, Notes, Status, Version of Derived Requirement for each SysML requirement. This part is completely non-editable.

  1. Requirement Matrix – This worksheet will present all requirements in a matrix format to let users easily create derivation inter-dependencies between them.
  • This sheet will be automatically updated when new requirements are added in the ‘Requirements’ worksheet
  • New relationships created in this spreadsheet will also be automatically updated in the ‘Requirements’ worksheet

Excel_Requirement_Matrix_image.png

Insert Elements and Connectors

Insert the element in the Name Column of the Requirement Sheet (with Notes, Status, Version, ID, and text, but the Name column is mandatory). And create a connector between the newly created element and the existing element in the ‘Requirement Matrix’ sheet.

Excel_connector_creation_page.png

Newly created connector details are updated in the ‘Requirement’ sheet.

Excel_Connector_details_are_updated.png

Excel_to_EA_icon.png To sync or update the modifications to the Enterprise Architect Model, use the Excel to EA icon. The changes reflected in the Enterprise Architect Model will be shown in the preview form. To update into an Enterprise Architect Model, select Export.

Preview_Form_Image.png

New elements are created under the chosen package.

Element_created_in_project_browser.png

EA_to_Excel_icon.png The EA to Excel icon is used to restore the produced items to their original state as in the Enterprise Architect Model.

Prior to ‘EA to Excel’

Prior_EA_to_Excel_Image.png

Post ‘EA to Excel’

Post_EA_to_Excel_Image.png

SysML Requirements on Excel (from Excel)

MDG Integration for Microsoft Office offers integration within Microsoft Excel (Office 2007 and above), and a new feature called SysML Requirement Manager is added to the feature dropdown of the Enterprise Architect ribbon. Using this, users can easily push the contents of SysML requirements from an Excel document to an Enterprise Architect or vice versa.

To import SysML requirement data into Enterprise Architect from Excel

 Feature_Icon_in_Excel.png  

Dropdown list to choose the Export to Enterprise Architect Model or the SysML Requirement Manager for the document.

‘Export to EA’: Export the elements to Enterprise Architect using Profiles

‘SysML Requirement Manager’: Import SysML Requirements from Enterprise Architect

and Export SysML Requirements and their connections to Enterprise Architect.

 Open_project_icon_in_Excel.png  

Allows one to select a *.eap or *.eapx or *.feap or *.qea or *.qeax or *.eadb through Local project, server Connection, or cloud connection.

Local Project - To Connect Local Enterprise Architect model.

Server Connection - To Connect to an Enterprise Architect repository through a database

Cloud Connection - To Connect to an Enterprise Architect repository through Pro Cloud Server

Select a package

  • This screen will be displayed when the Package button is clicked.
  • It displays all the models and packages from the selected Enterprise Architect model, with SysML Requirement items being imported specifically.

Select_a_package_image_in_Excel.png

After selecting the package and clicking ‘OK, ‘Enterprise Architect will begin exporting information to an Excel sheet and proceed with Refer "Working with Excel to author Requirements"

Check out the SysML Requirements in the Enterprise Architect video here

To know more or to request a demo, please reach out to This email address is being protected from spambots. You need JavaScript enabled to view it.

 

 

 

 

 

Published in White Papers

One of the latest features of Sparx Enterprise Architect 15 is the model based add-ins which can be created using JavaScript.  These model based add-ins are defined by a combination of Receptions, Attributes and Operations which can be easily added in a model by just creating with a valid stereotyped classes.

Assuming having basic knowledge with Sparx Traditional add-ins, broadcast events and JavaScript.

Why model based add-ins

    • Accessed by all the users within a model
    • Purely Model specific 
    • No installation, registry entries , distribution or license worries
    • Self-Documenting as everything is modelled and created directly in EA

Prerequisites

    • Signal Reference Library ( Broadcast Events ) -  Defines the entry points to the add-In similar to the com class in the traditional add-ins
    • Referencing relevant signals in the receptions

What is Signal Reference Library

These are Signal elements which contain definitions of all the Enterprise architect broadcast events. Signals that are added to the add-in will receive an event when triggered similar to traditional add-ins. EAExample model contains all the broadcast event signals under the package Example Model.EA 15 Examples.Dynamic Model Based Add-Ins.Broadcast Types

Mandatory Signals or Events for Add-in

    • EA_Connect
    • EA_GetMenuItems
    • EA_MenuClick

All the available events references can be found here https://www.sparxsystems.com/enterprise_architect_user_guide/15.0/automation/broadcastevents.html

To Create an JavaScript Add-In

  1. Create a Signal Reference Library referring EAExample model. (Simple way would be just do an XMI export of the Broadcast Types package from EA model and import into your working model).
  2. Create a package in the root node for modelling the add-in
    1

    1. Create a class object with stereotype JavascriptAddin ( this stereotyped element can be found in Model Add-Ins tool box as shown below
      2
    1. The name of the above defined will be used in the JavaScript code. In our case it will be “Javascript Addin”
    2. Add the signal reference in the created class using the reception.
      • To Access Reception Right-click on the Class element and select the 'Features | Receptions' option. The Features window displays, at the 'Receptions' page.
        2.1
      • Add the required events by clicking the button to the right of the New Receptiontext in the 'Name' column , the dialog will show the available Signals ( it will automatically fetch the parameters details from the object )
        3
    • Once selected all the added signals will be displayed in the class object.
      4
    1. After adding these events, its time to play with some JavaScript codes.
    2. Please open the behavior window (Develop > Source Code > Behavior) make sure the created class object “Javascript Addin” has been selected. It will show all the added events to which we need to add the code
      5
    1. Codes for these events are similar to the traditional add-ins ( please refer the attached model for more details )
    1. Finally make sure the add-in is enabled. To enable the add-in Specialize -> Manage-Addin and please click Load on startup
      6
    1. Once the add-in is loaded you can find it in the ribbon
      7

    Note:

    For more details or customization please contact This email address is being protected from spambots. You need JavaScript enabled to view it.

Published in White Papers
If you want to analyze your EA model with SQL, you should consider using LINQ to SQL. Write the query once for all your EA database types. Use the combination of SQL like syntax, modern .net languages like C#, VB, F# and the compiler to find your typos.
 
The main benefits are:
 
  • Combine SQL like query language with the power of C#, VB, or F#
  • Database independent
  • IntelliSense, AutoComplete
  • Let the compiler find your typos
Approaches
 
AddInSimple shows you:
  • How to leverage LINQ to SQL in your Add-In (Example SimpleAddIn of open source hoTools)
  • LINQPad, the off-the-shelf interactive Scratchpad
In both cases: Before you reap the power of LINQ to SQL, you have to invest some time learning.
 
 
 
Example with LINQPad:
 
The following example shows the result of a little query against the EAExample model to see the types of Requirements.

You find standard SQL somehow old, limited, difficult to learn and has a lot of dialects? You think a Compiler can find a lot of your typos, Then give LINQ to SQL a try. You have two possibilities:

  • LINQPad  as an interactive query and debugging tool, database independent, C#, F#, VB
  • Develop your Add-In with LINQ to SQL

The main advantages of LINQ for SQL are:

  • Database independent
  • Combines the benefits of SQL like and Code (C#, F#, VB)
  • IntelliSense, Autocomplete, let the Compiler find your typos
  • Powerful Debug as you know from C# & Co.
  • LINQ provides a rich Eco-System (SQL, XML to name a few)

The LINQPad:

Ready to use Scratchpad to run, debug and visualize your Find and Debug for all your EA Databases. Show the code for the above grid:



IntelliSense, Autocomplete:

Let the Compiler find your typos.



Export to Excel:

 

Steps with LINQPad:

  • Create a new connection to your EA Database
  • Assign the connection to the query at hand

 

Look inside:

  • Combine queries and Code
  • EA Databases supported
  • Arbitrary complex queries without the limitations of SQL
  • Edit, Debug, Visualize
  • C#, F#, VB, LINQ (XML, SQL,..)

Add-In with LINQ to SQL:

You find two examples to tinker with in AddInSimple (part of hoTools). In essence:

  • Determine Database and connection string
  • Run LINQ query to DataTable
  • Output DataTable to EA Model Search
  • Enjoy

The results:

Start with AddinSimple and EAExample.eap.

 

 

Control Code:

The Query:

Summary:

LINQ to SQL is the solution for complex queries:

  • Interactive query tool LINPad
  • In your Add-In to easily handle complex queries database independent
  • Database independent
  • IntelliSense and AutoComplete
  • Compiler verifies against EA Database (no typos, type safe)
  • Comprehensive debug features

From viewpoint EA user:

  • Find in EA - everything without SQL limitations
  • Verify your EA models
  • Make metrics of your EA models

Write it once and use it for all your EA databases - regardless of location or type. Just connect your query with the new Database.

References:

 

This and more you can see at https://github.com/Helmut-Ortmann/EnterpriseArchitect_hoTools/wiki/LinqToSql.

 

I appreciate your experiences and feedback!

 

Kind regards,

 

Helmut

 

 

Published in Community Resources
Tagged under

 

Preparing my presentation at the upcoming EA User Group in London (19/05/2017), I uploaded a video about this subject on Youtube.

It provides a first glimpse on the automated test module for Sparx Enterprise Architect addins that I will discuss in detail at the EA User Group London 2017.

Click on the following url to open the Youtube video: Automated tests with eaUtils addin for Sparx Enterprise Architect video.

 

There is still time to register at the EA User Group London 2017 from www.eausergroup.com.

Please feel free to contact me on guillaume[at]umlchannel.com if you have any question or comment.

Published in News
The Bellekens EA toolpack, the free set of add-ins for Enterprise Architect has expanded with a new add-in: the EA TFS Connector.EATFSConnectorLogo

This new add-in for Sparx Systems Enterprise Architect synchronizes workitems 2-ways between EA and TFS (Microsoft Team Foundation Server), so both from TFS to EA as from EA to TFS.

The EA TFS Connector uses the REST API web-service of TFS to synchronize items, so no local TFS (Visual Studio) installation is required, and it also works with TFS version 2015, which isn’t the case with the standard Visual Studio MDG integration.

      Special thanks goes to 
RealDolmen 
      for sponsoring the development of this add-in.

Have you tried the add-in and feel like it’s missing something? Don’t hesitate to contact me. There are always possibilities to enhance the add-in and make it better for the whole community.

For more information see EA TFS Connector.

Published in News
Tagged under
Monday, 29 August 2016 12:57

Generic element Auto counter

Motivation

An Enterprise Architect project contains hundreds or thousands of elements. Name of these elements alone are often not enough to uniquely identify them. It is important to mark every element with its own unique code.

Enterprise Architect provides the Auto Naming and Auto Counters feature which efficiently generates code elements. The element number is determined by its type, each element type has its own sequence of numbers.

 

Unfortunately, the numbering according to the types of elements is not always sufficient. We often need sequences derived from first level components. For example, we have other sequence for 'Accounting' component use cases (UC-ACC001, UC-ACC002, ...) and other sequence for the "Billing" component use cases (UC-INV001, ...).

Idea

We implemented an extension for generating element codes based on existing element names.

The basic idea is to use the first specified code as a mask for the others. User has to name first element, for example:

UC-ACC001: Create an account

If user creates another use case, he does not need to know the final number. He uses a placeholder

UC-ACC*: Modify an Account

 

Finally, user runs extension "CCA Numbering", which replaces the placeholder with a new number.

Such a solution is much more general. You can have multiple sequences within a single element type. You can have a number sequences across different types of elements. This can be applied for example in Activity diagrams, if you want a uniform numbering for Activities and Actions together.

Solution

 

Solution code is attached. The program looks for the next element number directly in the project repository. The query syntax corresponds repository stored in the EAP file.

Any comments are welcome.

 

Petr Přibyl

CCA Group a.s.

This email address is being protected from spambots. You need JavaScript enabled to view it.

 

Published in Community Resources
Friday, 26 August 2016 09:47

EA Mapping tool => Who wants it?

I’m thinking about developing a mapping tool add-in for EA.
The idea is that you can manage a mapping between two types of (data) models. For example between your logical data model and your message model, or between your logical data model and your database model etc…

I already have a number of add-ins and scripts that somehow create traceability between models on element, attribute and association level, but I don’t have a tool yet to visualize and manage those traces.

To give you an idea the GUI of the thing could look similar to this:

mapping tool
Functions could include
– ability to add notes to each mapping
– ability to export the mapping to excel
– drag-n-drop to create mappings
– …
Now it seems to me like there could be many parties interested in such a tool.
I would like to develop this as a free and open source add-in (as I do for all my add-ins) but I’m still looking for sponsors.
My initial rough estimate for the development of such a tool is 15 man days.

I already have two parties that might be interested, but the more sponsors I can find the lower the price would get for each individual party.

So if you are interested in such a tool please let me know: This email address is being protected from spambots. You need JavaScript enabled to view it. and we might be able to work something out.

Published in News
Thursday, 24 March 2016 11:07

New: Dunstan Thomas Consulting MDG Workshop

MDG Workshop

Dunstan Thomas Consulting is proud to announce the new one day MDG Workshop!

Overview


Sparx Systems Enterprise Architect provides modelling extensions to supplement UML through a technology known as Model Driven Generator or MDG. Tools are provided in Enterprise Architect for experienced users to develop their own MDGs either from scratch or based upon an existing MDG such as ArchiMate, or BPMN. This one day workshop will provide attendees with a practical experience of the tasks required to build a typical MDG.

User Story Screenshot


Agenda

The following topics will be covered:

  • What is an MDG, what it can contain and the benefits an MDG can provided to an organization.
  • Using the Model Wizard to create an MDG model repository.
  • The steps in planning an MDG.
  • Tagged values, their typed, use and creation.
  • Using the MDG Helpers to create a Profile.
  • Using the MDG Helpers to create a customized Toolbox.
  • Using the MDG Helpers to create a customized Diagram.
  • Generating the MDG.
  • Testing the MDG.
  • Deploying the MDG.
  • Making changes to the MDG and applying those changes to an existing model repository.
  • Shapescripts, their use, structure and applicability to an MDG.
  • The concept of Quicklink and its application to a customized Diagram.

Full details are available on our website.

Published in News

eautils addin for sparx systems enterprise architect

I started last year a personal addin project for Sparx Enterprise Architect; eaUtils was intended to gather features that have addressed situations I came across over the past years. Initial eaUtils features come from scripts that were shared with the community (see Enterprise Architect project browser scripts: sort elements by alias or by tagged value).

Following an initial version launched in December 2015, enhancements were released in February 2016 with eaUtils 1.11. Current features include:

  • Sort elements from a package tree, a package, or composite element by Alias, Tagged Value, Stereotype or Name
  • Sort a package elements according to their layout order in a diagram (top to bottom or left to right)
  • Generate elements alias values according to their order in a diagram
  • Generate the breadcrumb trail in a diagram

Elements sorting

eaUtils sorting features update the elements tree position from a package or element. Enterprise Architect applies a default sorting order based on the name of the elements. In order to achieve a better management and more efficient use of the elements from within the project browser, it can be useful to have alternative and enhanced sorting options e.g. based on the alias, stereotype, tagged value, or according to the layout in a diagram.

eaUtils latest version provides a way to sort elements within a package tree, which is illustrated below. Further information on eaUtils sorting features is available from eaUtils Help.

Sort elements by alias in a package tree

Having enabled the package tree option, this feature can be used via a right click on the main package > Extensions > eaUtils > Project Browser : Sort elements by alias. eaUtils addin opens the following dialog window, prompting to select the packages to process within the current tree:

sparx systems enterprise architect addin eaUtils package tree sorting window

Below is a summary of the available actions or information:

  • Status: set to Ready unless the elements sorting is running (Busy).
  • eaUtils settings: a summary of the sorting settings values is displayed. A button is available to open eaUtils Settings.
  • Select all/none: enable or disable all packages within the displayed tree.
  • Tree: packages within the tree are displayed and can be individually enabled or disabled. Any locked package is greyed out and followed by (Locked).
    • Note: Root nodes are always disabled and marked as locked as they cannot have any element to sort.
  • Sort elements in the selected packages by...: run the elements sorting within each selected package.
  • Cancel: close this window.

Whilst eaUtils sorting by feature is running, progress is updated as packages are processed.

eautils addin sparxsystems enterprise architect sort by package tree progress busy

Once completed, all selected packages are marked as DONE, and a confirmation dialog is displayed.

eautils package tree sorting addin enterprise architect completed

Generate aliases

eaUtils provides a feature that generates elements aliases according to their order in a diagram, from top to bottom or left to right. I often use this feature to generate use case aliases according to their order in a diagram e.g. UC_001, UC_002.... It also can be applied to other diagrams such as UML activity, BPMN process, Archimate, etc.

Consider the following use case diagram:

exemple sparx ea eautils addin to generate elements alias values

Note: use cases on the above diagram are stored in the same package whereas actors are located in a dedicated one. eaUtils provides an option to deal with this situation so that external elements (actors) are ignored when generating the alias.

eaUtils provides a range of settings to define the prefix, suffix and numbering format to generate in each alias. Below is an example for the current example:

  • the prefix is set with the element's name followed by an underscore e.g. UseCase_
  • the numbering will be generated with 2 leading zeros e.g. 001, 002...
  • the suffix is set to "_BookStore"
  • only Use Case elements are processed

 

eautils sparx ea addin generate alias settings prefix suffix

Running eaUtils "Generate Alias" leads to the result below:

sparx eautils addin model diagram generate alias results

Breadcrumb trail for diagram navigation

Navigating between a large number of opened diagrams within a Sparx Enterprise Architect modelling project can be cumbersome. Having opened successive composite elements such as an activity, use case, or BPMN2 subprocess, going back to the previous diagram is often not easily achievable. This issue is not only valid when one uses Sparx tool, but also when a published HTML version is opened in a web browser (e.g. Firefox, Chrome, IE).

A workaround involves creating a diagram hyperlink back to each calling/linking diagram; eaUtils addin provides a Breadcrumb Trail feature that generates such hyperlinks within an active diagram. In the example below, a BPMN2 process is detailed via an associated composite BPMN diagram:

eautils sparx enterprise architect addin breadcrumb

Running eaUtils breadcrumb feature on BusinessProcess1 diagram leads to the following result i.e. a hyperlink back to the Business diagram has been created:

eautils sparx systems enterprise architect addin breadcrumb trail result

eaUtils addin for Sparx Systems Enterprise Architect

eaUtils is listed as a Sparx Systems 3rd Party Add-In in the Model Management Category.

eaUtils addin can be downloaded for free from www.eautils.com website, where an online help content is also available.

 

Published in Community Resources
Tagged under
Friday, 19 February 2016 13:38

BPMN Generator from Dunstan Thomas Consulting

BPMN GeneratorBPMN Generator

An add-in for Enterprise Architect from Dunstan Thomas Consulting

We have had our very own Phil Chudley busy beavering away at a new project which is now commercially available & already in use with DT's customer base.

Overview

Sparx Systems Enterprise Architect has the functionality to create diagrams directly from Use Case textual scenarios, the most common of which is termed an Activity Graph. This Activity Graph is a simplified form of UML Activity Diagram. This works well, but many organisations have, or are in the process of, standardising the modelling of process flows using BPMN 2.0, and this form of diagram is not supported by Enterprise Architect. The BPMN Generator extension for Enterprise Architect has been developed by Dunstan Thomas Consulting Ltd to provide the functionality to generate a BPMN 2.0 process flow diagram from Use Case textual scenarios. A typical example is shown below:

Textual Scenario for the Basic Path

BPMN Generator - basic path  

Textual Scenario for the Alternate Path

BPMN Generator - alternate path  

Generated BPMN 2.0 Diagram

BPMN Generator - generated diagram


The BPMN Generator also provides the modeller with options to set:

  • The top margin of the generated diagram.
  • The left margin of the generated diagram.
  • The default height of each task.
  • The adjustment height of each task (used to ensure that text fits in a task).
  • Whether or not a new diagram and elements will be generated rather than overwrite any existing diagram and elements.

Watch the video below to see the BPMN Generator in action:

https://youtu.be/WhL9vEdvHF0 


The BPMN Generator is available from Dunstan Thomas Consulting at £85.00 +Vat per licence. If you would like additional information or to purchase licences for the BPMN Generator then please contact us.

Published in News
Page 1 of 2