4. Translating Designs

One can translate a design model in steps or all at once. It is recommended to translate a model in steps the first time, so that any errors can better be traced. These steps are described below. To translate a model in its entirety, select "Translate -> Apply all" from the main menu.

4.1. Flattening the Model

Before flattening a design model, check whether the model properties are set.

Select "Translate -> Flatten depth-first" from the main menu to flatten the design model using the first/best flattening options (i.e. solution patterns).

To follow the several flattening steps, you can choose to flatten one level: select "Translate -> Flatten breadth-first -> Flatten one level" from the main menu. This will only flatten the composites visible from the current model and generate each possible combination of flattening options for those.

Select "Translate -> Flatten breadth-first -> Flatten all" from the main menu to flatten the design model in its entirety and to generate each possible combination of flattening options.

4.2. Determining Concept Forms

Before determining concept forms for a design model, check whether the model properties are set and the model is flattened.

Select "Translate -> Determine concept forms" from the main menu to determine the concept forms for the design model.

If you chose to flatten depth-first and this step failed, you should go back and try the next flattening option by selecting "Translate -> Next flatten option" from the main menu. Note that applying all translation steps at once ("Translate -> Apply all") will automatically make the tool trace back to the next flattening option when this step fails.

4.3. Generating Implementation

Before generating implementation for a design model, check whether the model properties are set, the model is flattened and its concept forms are determined.

Select "Translate -> Generate implementation" from the main menu to generate the implementation for the design model in the target language that is set for that model. The implementation files are placed under the "output/" directory, depending on the target language and model name (e.g. translating a model named "test" to "Java" will place the output in "output/Java/test/").