Displaying items by tag: enterprise architect
Sparx Systems Releases Enterprise Architect 13
Sparx Systems is proud to announce the full release of Enterprise Architect Version 13.
This groundbreaking build focuses on streamlining the user interface, agile teams, model management and parametric simulation.
In its 15 years of continuous development, Enterprise Architect has become the pre-eminent visual modeling platform, bringing together all aspects of the development cycle. Its feature-set has evolved to provide traceability, from the initial design phase through to deployment, maintenance, testing and change control. Version 13 delivers significant new capabilities in these areas and delivers them, in a streamlined and agile interface.
Enterprise Architect 13, represents many years of research, consultation and development - working with a broad community of customers, partners and industry observers. This has helped make this release what Sparx Systems has identified as truly defining.
Sparx Systems is confident, that the combination of distributed agile modeling and design, cloud based repository, Kanban project management, simulation, software development and database engineering capabilities of Version 13, will represent a powerful platform for realizing even the most ambitious projects.
A full list of updates and enhancements in Enterprise Architect 13 can be found at the Sparx Systems website.
Additional resources:
- Webinar Recording - Enterprise Architect 13 Release Highlights: Visit Webinars Section
- Enterprise Architect Product Brochure: Download Brochure Here
- Newsletter - Enterprise Architect 13 Released: View Newsletter Here
New EA workshops from Dunstan Thomas
NEW: Sparx Systems Enterprise Architect Workshops from Dunstan Thomas Consulting
As an alternative to our traditional classroom style training Dunstan Thomas Consulting now offer a series of Sparx Systems Enterprise Architect workshops.
These workshops provide all the fundamental practical skills that are necessary in order for you to use Enterprise Architect efficiently and effectively. The emphasis is on the practical rather than the theoretical and we will work with you so that exercises can be tailored to meet your specific modelling requirements.
Available Workshops
Our current offering of Sparx Systems Enterprise Architect Workshops include:
- Getting started with Sparx Systems Enterprise Architect workshop
- MDG workshop for Sparx Systems Enterprise Architect
- Reporting with Sparx Systems Enterprise Architect workshop
- Sparx Systems Enterprise Architect; Database Modelling workshop
- SysML 1.4 with Sparx Systems Enterprise Architect workshop
- BPMN 2.0 with Sparx Systems Enterprise Architect workshop
- Scripting with Sparx Systems Enterprise Architect workshop
All details are available on our website or call our sales team on +44 (0) 23 9282 2254.
Complimentary Digital Transformation Workshop: Seattle, August 30
Digital Transformation is inevitable, are you ready?
Join us in our complimentary workshop to learn what the experts are saying about digital business transformation, and get a personal view of how Next generation Business Architecture and Business Process Management (BPMN, CMMN & DMN) tools and techniques are enabling stakeholders across the organization to bridge gaps and collaborate on the business transformation process
Date: Tuesday August 30
Time: 12pm - 4pm
Venue: The Big Picture, Seattle, WA, USA
Register here: https://www.eventbrite.ca/e/dmn-bpmn-cmmn-how-to-make-the-most-of-next-generation-bpm-in-your-digital-enterprise-tickets-27011203236
Automated FMU Generation from UML Models
Automated FMU Generation from UML Models
Introduction
The simulation of cyber-physical systems plays an increasingly important role in the development process of such systems. It enables the engineers to get a better understanding of the system in the early phases of the development. These complex systems are composed of different subsystems, each subsystem model is designed with its own specialized tool sets. Because of this heterogeneity the coordination and integration of these subsystem models becomes a challenge.The Functional Mockup Interface (FMI) specification was developed by an industry consortium as a tool independent interface standard for integration and simulation of dynamic systems models. The models that conform to this standard are called Functional Mockup Units (FMU).
In this work we provide a method for automated FMU generation from UML models, making it possible to use model driven engineering techniques in the design and simulation of complex cyber-physical systems.
Functional Mockup Interface
The Functional Mockup Interface (FMI) specification is a standardized interface to be used in computer simulations for the creation of complex cyber-physical systems. The idea behind it being that if a real product is composed of many interconnected parts, it should be possible to create a virtual product which is itself assembled by combining a set of models. For example a car can be seen as a combination of many different subsystems, like engine, gearbox or thermal system. These subsystems can be modeled as Functional Mockup Units (FMU) which conform to the FMI standard.The Functional Mockup Unit (FMU) represents a (runnable) model of a (sub)system and can be seen as the implementation of an Functional Mockup Interface (FMI). It is distributed as one ZIP file archive, with a ".fmu" file extension, containing:
- FMI model description file in XML format. It contains static information about the FMU instance. Most importantly the FMU variables and their attributes such as name, unit, default initial value etc. are stored in this file. A simulation tool importing the FMU will parse the model description file and initialize its environment accordingly.
- FMI application programming interface provided as a set of standardized C functions. C is used because of its portability and because it can be utilized in all embedded control systems. The C API can be provided either in source code and/or in binary form for one or several target machines, for example Windows dynamic link libraries (".dll") or Linux shared libraries (".so").
- Additional FMU data (tables, maps) in FMU specific file formats
The inclusion of the FMI model description file and the FMI API is mandatory according to the FMI standard.
Tools
Enterprise Architect is a visual modeling and design tool supporting various industry standards including UML. It is extensible via plugins written in C# or Visual Basic. The UML models from which we generate our FMU are defined with Enterprise Architect.Embedded Engineer is a plugin for Enterprise Architect that features automated C/C++ code generation from UML models.
We further used the FMU SDK from QTronic for creating the FMI API. It also comes with a simple solver which we used to test our solution.
Running Example
Our basic example to test our solution is called Inc. It is a simple FMU with an internal counter which is initialized at the beginning and it increments this counter by a specified step value, each time it gets triggered, until a final to value is reached or exceeded.State Machine
The state machine contains just an initial pseudo state which initializes the state machine and a state called Step. The Step state has two transitions, one transition to itself, in case the counter is still lower then the to value, if this is the case, the inc() operation will be called and we are again in the Step state. If the value is equal or greater to the to value, it reaches the final state and no further process will be done.Class diagram
The class diagram consists of two parts. The left part with the Inc class is project specific. It holds three attributes: counter, step and to. All attributes are of type int. The initial value for the counter is 0, for the step it's 5 and for the to value it's 50. The FSM classes on the right are the mandatory classes for the Embedded Engineer to be able to generate the state machine code.Some specific implementation code also exists in various places. In the state machine you can see, that we have some guards on the transitions. These guards are actually code that will be used to generate the code for the state machine:
me->counter < me->to
and
me->counter >= me->to
The property me represents a pointer to an instance of the Inc class.
And finally the implementation of the inc() operation is also provided:
me->counter = me->counter + me->step;
Manual Code Generation
First we manually created our reference Inc FMU, the following steps where taken:- UML models were defined in Enterprise Architect (class diagram and state machine diagram)
- C code was generated from the previously created models (with the Embedded Engineer plugin)
- The FMI model description xml file and the FMI API were created by hand
- The (compiled) FMI API was packaged together with the model description file into a FMU file. This was done with a batch script.
Automatic Code Generation
Now we want to automate the creation of the FMI model description file and the FMI API. For this purpose we wrote our own Enterprise Architect plugin. To be able to generate semantically correct FMI model description and FMI API artifacts, we attached additional information to the UML models. This was achived through the definition of various UML stereotypes for UML class attributes and methods. Since the FMI defines its own data types we also had to map the data types used in the UML models to the corresponding FMI data types. With these challenges addressed we were able to implement our FMU generation plugin.Future Work
Our work comprises a fundamental prototype that is only a start and could be improved in various ways. The following list describes some issues that could be tackled.- One limitation of the current implementation is that we are not able to provide initial values for the FMU. Consequently, to test different configurations of our FMU, we always have to set the default values in the UML models and regenerate the FMU for the simulator again. Hence, future work includes creating new stereo types for initialization of FMU settings/variables and testing these bindings.
- We used the FMU SDK simulator for this project. Other (more powerful) simulators should be tested too. Furthermore, co-simulation with other FMUs needs to be tested.
- In our project we restricted ourselves to just look at discrete functions by using the event system of the FMU. To continue the journey we also have to consider continuous functions.
- More complex examples should be considered to test the capabilities of the automatically generated code. By creating more complex examples the practical limitations of modeling a FMU with a class diagram and a finite state machine need to be discovered. Questions like "What can be implemented?" and "What can not be implemented?" need to be answered.
- The automated code generation process could be reduced to a one-click functionality to directly generate the ".fmu" file without any additional compilation and packaging step necessary.
Acknowledgement
Screencast
User Group Attendee Profile: Rasheed Amzart
Following the recent EA user group meeting in London, we took a moment to interview attendee Rasheed Amzart, an Enterprise Data Architect with the Association of Train Operating Companies (ATOC). Here he details his recent work and his impressions on EA and user group meetings.
The ATOC also recently published a case study with Sparx Systems partner Dunstan Thomas.
Full Name: Rasheed Amzart
Job Title: Enterprise Data Architect
Organization: Association of Train Operating Companies
Attended the London user group meeting in May 2016 (have you attended any others?): Yes. I attended the User Group Meeting in 2015
How long have you been using Enterprise Architect (EA)?
Approximately two years.
How is EA deployed where you are? (EA versions, floating licenses, repositories, cloud, etc.):
- Version: 12.1
- Floating licences
- Central repository
- Cloud based
What are you working on at the moment?
Developing a number of logical ‘as is’ and ‘to be’ data models and a number of supporting documents, such as business process maps and models.
What have the challenges been?
Knowledge Acquisition has been shortcoming due to poor documentation
How has Enterprise Architect helped you and your team?
Yes in a number of key areas, requirements, system modelling, business modelling and data modelling. This has enabled the various project teams to work on a single platform and share areas of expertise and data and so help reduce the number of silos within the organisation.
What do you like about your job?
Being the Enterprise Data Architect has given me the opportunity to engage with a number of departments within my organisation and to help a more holistic view of the complex architecture systems using various types of system and data models.
What functionality would you like to see Enterprise Architect support in the future?
- A quick browser based web client would be extremely helpful.
- The ability to undo any action carried out within EA.
- Ability to generate reports ie attributes, elements etc.
Is this your first User Group Meeting? No
Did you enjoy your time at the User Group meeting in London? Yes very much.
What have you gained from it? I have been able to liaise with other users and share idea and also gain new knowledge and tips which I feel will improve my productivity.
Would you recommend user groups to other people in your role? Yes.
Sparx Senior Analyst presenting at ESRI Conference 2016
Each year over 16,000 students and professionals from the GIS community attend the conference.
This year Sparx Systems staff are looking forward to demonstrating its solutions for geodatabase design with UML (Booth #2440).
Sparx Systems Senior Analyst, Ben Constable will be presenting at a session titled "Model and Generate your Geodatabase Schema with UML," which will focus on:
- Modeling geodatabases in UML for export to ArcCatalog.
- Reverse engineering existing databases.
- Achieving tracability to other analysis and design tools.
- Communicating geodatabase designs.
Since joining the company in 2003, Ben has been actively involved in developing domain-based profiles for Enterprise Architect. In this capacity, he continues to contribute to the development of Enterprise Architect's UML profile for designing ArcGIS geodatabases.
Session details:
Model and Generate your Geodatabase Schema with UML
Tuesday, June 28, 3:00 PM – 3:30 PM
Tech Theater 15 Exhibit Hall A
San Diego Convention Center
Visit the ERSI User Conference 2016 website: Click Here
Excel Requirement bridge
Enterprise Architect provides many features for requirements management. It allows team to create and update requirements, trace their solution, maintain whole requirement life cycle.
We need sometimes work with requirements “outside” the Enterprise Architect. Especially when we discuss them with customers. We can of course generate documents from RTF templates as basis for meeting, which is suitable for most cases. At the level of project management, when it comes to project scope and overall state of requirements, is better to have requirement list in form of an Excel spreadsheet. Project manager can clear report requirement status to the customer and quickly change the list according to the results of the meeting. Next step is to save changed list back to Enterprise Architect.
We tried package CSV Import/Export utility but it was not suitable for us. CSV format is prone to data errors and we needed to split some data cells into more requirement properties.
So we decided to write our own bridge for requirement data interchange between Excel spreadsheet and Enterprise architect repository.
Solution
Our Excel requirements template has several columns. Mapping to requirement attributes is as follows:
Column |
Requirement attribute |
ID |
Requirement code – first part of requirement name before “-“ |
Hierarchy |
Package path to requirement in repository |
Source |
Tagged value “REQ: Source” |
Description |
Notes |
Discovered |
Tagged value “REQ: Date discovered” |
Type |
Type |
Responsibility |
Author |
Priority |
Priority |
Status |
Status |
The bridge is implemented as Excel addin. It is written in Visual Basic and stored in Requirements.xlam file. When you add it to Excel, new tab CCA appears in ribbon. It has two commands “to Excel” for importing requirements from Enterprise architect repository to Excel spreadsheet and “to EA” for saving requirements from Excel back to EAP.
Importing requirements to Excel
Bridge is written for requirements template MyProjectREQ.xlsm. Copy it into new file and open this file. Press “to Excel”.
File open dialog appears, choose your project EAP file. Program then show “Enter prefix” dialog to filter imported attributes. Enter the prefix (for example “REQ”) or leave the value empty for all requirements. Program uses standard Enterprise Architect search “Requirements”.
Sheet is filled with requirements. Notice the cell D3 – it contains EAP filename. When you run command “to Excel” again, you will be not asked for EAP file name, the file in cell will be used. The same applies for saving cells back to Enterprise Architect.
Column “J” is hidden – it contains requirement GUIDs for subsequent updates.
Saving requirements to Enterprise Architect
After you made changes in requirement list in your spreadsheet, you can save them directly to project EAP file. Press “to EA”.
Program shows dialog with EAP package structure. Choose your requirements root package. New requirements (requirements without GIUD) will be inserted into this package.
Saving starts immediately after your select the package.
Data transformations
In our Excel template we use ID and Description for requirement code and description. In Enterprise architect we use Requirement name and notes. Enterprise architect has an alias attribute, which can store requirement code, but it is not useful, because we have to see this code in Project browser. So we have to transform
ID |
Description |
REQ113 |
Must be recoverable quickly. In the event of software or hardware failure the system must be able to be recovered to full operating mode within the tolerances listed below. In the event of parts of the system failing the system must be able to be run in a safe mode. |
to
Name |
Notes |
REQ113 - Must be recoverable quickly. |
Must be recoverable quickly. In the event of software or hardware failure the system must be able to be recovered to full operating mode within the tolerances listed below. In the event of parts of the system failing the system must be able to be run in a safe mode. |
This is done using simple VBA functions. Code is delimited by “-“ character. Requirement name is derived from first sentence in description.
Conclusion
This article is mentioned as other example of extending Enterprise architect. It is a real life example, we use it in our company for many projects.
If it is suitable for you, use it! 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.
Download APG ModelFlow Trial for Enterprise Architect
APG ModelFlow™ EA Trial Available for Download
APG ModelFlow EA v1.6.2 is now available for download! Access the trial version right now and immediately evaluate how APG ModelFlow can:
- Effectively exploit enterprise content for architecture-based decision making
- Seamlessly exchange architecture model content among multiple EA toolsets
- Reliably synchronize EA content with federated enterprise data repositories
- Confidently embrace holistic enterprise-wide perspective of business and IT data
Tutorials
The trial download includes two introductory tutorials to walk you through importing Enterprise Architecture content into EA:
- TOGAF®-based tutorial with Capabilities, Business Functions, and Applications
- DoDAF/UPDM™-based tutorial with Capabilities, Performers, Activities, and Systems (exported from IBM® Rational®/Unicom® System Architect®)
Features
- Import element and connector content from any ODBC, SQL, and CSV data source
- Align with existing and custom MDG Technologies and UML Profiles
- Synchronize with existing elements and connectors using any property or tagged value
- Map columns to any EA element or connector property or tagged value
- Map columns to other element types to create related elements and explicit relationships
- Map columns to parent elements to create nested element hierarchies
- Map columns to packages to create nested package hierarchies
- Map columns to create element linked document or set element fill color
- Automatically synchronize with systems of record via command line utility using scheduling agent
- Baseline packages prior to import using EA command line utility
» Download APG ModelFlow EA Trial
Coming soon: Diagram importing and new XML data source!
Exploring Enterprise Architect through video...part 7
Re-Using Elements
In this latest instalment in the series Phil Chudley will be looking at how to re-use Elements from your repository in Enterprise Architect.
https://www.youtube.com/watch?v=_DIs2ROV8fM
As always all of our videos are available right now via our YouTube channel ... and don't forget to subscribe!
EA User Group Scotland June 8: Full Schedule Announced
Hippo Software has announced the Event Schedule for the first Enterprise Architect User Group being held in Scotland, the long standing Sparx Systems Global Partner will be hosting the event on the 8th of June.
Time: | Subject |
9:30am - 9:50am | Registration, tea and coffee |
9.50am– 10am | Welcome and introductions |
10am– 10.45am |
User presentation: 'Journey to a More Collaborative Future?' Darren Campbell, Senior Solution Designer, ACCA Q&A session |
10.45am– 11am | Morning break for refreshments |
11am– 11.45am |
User presentation: Transforming Scottish Local Government Services |
11.45am– 12.30pm |
Interactive ‘Grumbles’ Session facilitated by Hippo Software |
12.30pm– 1.30pm | Lunch |
1.30pm– 2.15pm |
User presentation: Effective Collaboration with Use Cases and BPMN |
2.15pm– 3pm |
Presentation: An Overview of Features Planned for the Next Version of Enterprise Architect |
3pm– 3.15pm | Afternoon break for refreshments |
3.15pm– 4pm | Interactive ‘Highlights’ Session facilitated by Hippo Software |
When: Wednesday 8th June 2016 9.30am - 4pm
Location: Mercure Livingston, Almondview, Livingston, West Lothian, EH54 6QB
Details and Registration: Visit the Hippo Software website