Book a Demo

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

Prev Next


Developers can use Enterprise Architect to perform round trip code engineering, which includes reverse engineering of existing code and generation of code from Class elements.

Developer Tasks



See also

Round Trip Engineering

Enterprise Architect gives you unparalleled flexibility in 'round tripping' software from existing source code to UML 2.5 models and back again.

Round trip engineering involves both forward and reverse engineering of code, keeping the model and code synchronized.

Software Models Update Package Contents Use Case Estimation

Reverse Engineering

In Enterprise Architect, you can reverse engineer code from a number of supported languages and view the existing code as Class diagrams, which illustrate the static design view of the system.

Class diagrams show Classes and interfaces, and the relationships between them; the Classes defined in UML Class diagrams can have direct counterparts in the implementation of a programming language.

Importing Source Code Class Diagram Class

Forward Engineering

As well reverse engineering your code into your model, you can forward engineer elements of your model into code (code generation).

This way you can make changes to your model with Enterprise Architect and quickly implement the changes in the source code.

Software Models

Determine the System State

To visualize the state of the system you can use StateMachine diagrams to describe how elements move between States, classifying their behavior according to transition triggers and constraining guards.

StateMachine diagrams capture system changes over time, typically being associated with particular Classes; often a Class can have one or more StateMachine diagrams to fully describe its potential states.


Visualize Package Arrangement

Package diagrams help you design the architecture of the system; they are used to organize diagrams and elements into manageable groups, and to declare their dependencies.

Package Diagram

Follow the Flow of Code

Activity diagrams help you develop a better understanding of the flow of code.

Activity diagrams illustrate the dynamic nature of the system; you can model the flow of control between Activities and represent the changes in state of the system.

Activity Diagram

Simple Class Diagram

UML Class model example using Sparx Systems Enterprise Architect.


  • You can use StateMachine, Package and Activity diagrams to better understand the interaction between code elements and the arrangement of the code

Learn more