There seems to be a problem with generated code: it is still too inefficient and unreadable. Enter Executable UML. Developers can verify designs by executing an executable UML model and debugging the model’s behavior before any code is generated. They then apply an open translation phase uses a set of rules that builds a system in a strict and repeatable manner. The developer has full control over these rules to enable them to generate the most appropriate code for a particular architecture.