Abbreviations

  • UML Unified Modeling Language
  • GUI Graphical User Interface
  • CE Code Engineering
  • CES Code Engineering Set
  • AST Abstract Syntax Tree
  • JLS Java Language Specification
  • JVM Java Virtual Machine
  • RT Round-Trip forward and backward code engineering without code loss CLR Common Language Runtime
  • DSL Domain Specific Language

Functionality Availability

Code Engineering is available in Professional Enterprise editions only. 

Code engineering provides a simple and intuitive graphical interface for merging code and UML models, as well as preparing both code skeletons out of UML models and models from code.

There are several cases where code engineering may be very useful:

  • You already have code that needs to be reversed to a model.
  • You wish to implement the created model.
  • You need to merge your models and code.

The tool may generate code from models or create models out of code. Changes in the existing code can be reflected in the model, and you can see model changes in your code. You can also merge independent changes to a model and code without destroying data in the code or model.

Code engineering supports Java, C++, CORBA IDL, DDL, XML Schema, WSDL, and C# languages. Your models can be converted to any of those languages, or you can create UML models from the source code written in those languages. Additionally, the tool supports reversing from Java Bytecode and CIL.