Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Model Transformation

Model Driven Architecture (MDA) Transformations provide a fully configurable method of converting model elements and model fragments from one domain to another. This typically involves converting Platform-Independent Model (PIM) elements to Platform-Specific Model (PSM) elements. You can transform a single element from the PIM into multiple PSM elements across multiple domains.

Transformations are a huge productivity boost, and reduce the necessity of manually implementing stock Classes and elements for a particular implementation domain; for example, database tables generated from persistent PIM Classes. For a further productivity boost, Enterprise Architect can automatically generate code for your transformed Classes that target code languages.

Ready-built Transformations

The Enterprise Architect installer includes a number of basic built-in transformations, including:

PIM to:
C#
C++
DDL table elements
EJB Entity Bean
EJB Session Bean
Java
PHP
VB.Net
XSD
 
Data Model to Entity Relationship Diagram (ERD)
Entity Relationship Diagram (ERD) to Data Model
Sequence diagram to Communication diagram
Communication diagram to Sequence diagram
Java Model to JUnit test model
.NET  model to NUnit test model
WSDL interface model to WSDL
 

Further transformations will become available over time, either built in or as downloadable modules from the Sparx Systems website.

Customized Transformations

You can modify the built-in transformations or define your own, using Enterprise Architect's simple code generation template language. This involves little more than writing templates to create a simple intermediary source file; the system reads the source file and binds that to the new PSM.

Transformation Dependencies

When you execute a transformation, the system creates internal bindings (Transformation Dependencies) between each PSM created and the original PIM. This is essential, providing the ability to forward synchronize from the PIM to the PSM many times, adding or deleting features as you go; for example, adding a new attribute to a PIM Class can be forward synchronized to a new column in the Data Model.

You can observe the Transformation Dependencies for a package using the Traceability window, to check the impact of changes to a PIM element on the corresponding elements in each generated PSM, or to verify where a change required in a PSM should be initiated in the PIM (and also to reflect back in other PSMs). The Transformation Dependencies are a valuable tool in managing the traceability of your models.

Enterprise Architect does not delete or overwrite any element features that were not originally generated by the transform; therefore, you can add new methods to your elements, and Enterprise Architect does not act on them during the forward generation process.

Example of a Transformation

This diagram highlights how transformations work and how they can significantly boost your productivity.

TransformOverview

Notes

If you are using the Corporate, Business and Software Engineering, System Engineering or Ultimate edition, if security is enabled you must have Transform Package access permission to perform an MDA Transformation on the elements of a package

Learn more

Learning Center topics

(Alt+F1) | Enterprise Architect | Enterprise Architect | Model Transformations