Get in Touch

How to Write Tests For Your Enterprise Architect Model

Introducing the Enterprise Architect Model checker
  • Robert Pagel
    Robert Pagel
    Tuesday, September 22, 2015
An illustration of how you can test your models using our Model Checker for Enterprise Architect

Introducing The Enterprise Architect Model Checker

In this post, I would like to show you one of our tools, the ModelChecker, and invite you to use it for free. It currently only supports Enterprise Architect models and you have to write a bit of Java code to use it but it is really fast and has an intuitive GUI.
In general, we like to create models to document, discuss or simulate systems. Often we use them as a baseline to generate specifications. We find them very useful to organize information in a structured manner.
Systems can be modeled using UML, the widely used “unified modeling language”. It covers both structural and behavioral aspects of a system and can be extended to cover specific domains.
SysML for example was created to model systems engineering applications, while BPMN covers business processes modeling. One of the many tools to create UML models is Enterprise Architect.
Depending on the scope and depth of your project, your model may become quite large. You may choose to parallelize the work, but this comes with its own set of problems. One is that everybody understands modeling a bit differently, so you might end up with inconsistencies. These inconsistencies not only make the model less understandable to a new reader but also impair the automated generation of documents from the model. To save a model from descending into chaos, we like to define a metamodel. Read more about metamodels System Dynamics Metamodel.
To validate your model against its metamodel you can apply automated tests. One of the tools we use for this is the Model Checker I above mentioned. It works like this:
  • You design the metamodel
  • You derive the rules you want automatically checked
  • You implement these rules
  • You end up with an executable, that checks your model and displays a list of all found violations
When you run the Model Checker it looks like this:
How to Write Tests For Your Enterprise Architect Model Screenshot