Sparx Sparx Enterprise Architect (EA) is a modeling tool used by Enterprise Architects in many organizations. Over the time this tool has evolved from an UML/SysML tool to a full featured Enterprise Architecture tool supporting different frameworks (NIEM, CCTS, Zachmann, TOGAF or UPDM) or modeling languages like BPMN. On the other side Microsoft Visio is "the" diagramming tool for business users or analysts. In the following blog posts we research the interchange of model data and diagrams between both tools.
What are the pros and cons of both tools in one sentence?
Sparx Enterprise Architect:
- Pro: Full featured modeling tool with an object repository and a bunch of add-on functionallity
- Con: Because of these functionalities it might be too complex to regular business users, usually trainings are required
Microsoft Visio:
- Pro: Easy to use with Microsoft Office look & feel, less training effort
- Con: No object repository and no add-on functionality based on the repository
Btw, to overcome those limitations of Visio, TransWare has developed a neutral object repository with add-ons like reporting based on SQL server. The repository is controlled by an open meta-model to define any modeling language or framework, a modeling rule engine is embedded in Visio.
Because both tools are widely used in organizations, we at TransWare get many inquires to interchange and translate model data and diagrams from Sparx EA to Visio and from Visio to Sparx EA. Those people are asking us questions like:
- Why I can not use XML or XMI to interchange the models?
- BPMN is a standard, but import in the tools does not work?
- Sparx EA has an importer facility for Visio, why are the results not better?
These requests and our experience with the variety of challenges that arise from that is the reason why TransWare offers the universal model interchange tool BPM-X. Because interchange of modeling data is a burden for all tool vendors: standards are differently implemented or the functionality is often rather a "tick the box" (or "yes we can too") than a full functional implementation.
Let us start with the translation of Sparx EA BPMN models to Visio BPMN diagrams. The processing has translated the colored Sparx BPMN diagrams to the Visio out-off-the-shelf BPMN 2.0 stencil. BPM-X is flexible to add other custom stencils with different appearance.
The first approach of translation is listed below in the table. The Sparx EA model as input in the left column. In the middle column the BPM-X translated Visio deliverable are placed. The right column describes the improvement spots that have been found after the first iteration. These will be taken into account for the next improvement iteration of the mapping from Sparx EA to Visio.
But not only the diagram graphics are translated. In addition to the graphics the data properties and tagged values of Sparx EA have been converted to Visio user data attributes. In one of the next blog posts we will write about improvements of the translation and also about the direction to translate Visio BPMN 2.0 to Sparx EA BPMN 2.0.
Because of the flexible mapping and open meta-model other modeling languages such as UML can be translated as well. It is also possible to map between different diagram types like process flows, e.g. such as UML::activity to BPMN::collaboration diagram-type. This makes it very convenient to re-use existing model and diagrams for new projects.