Modelio Cxx Designer solution supports the management of build projects and targets.

A target defines a build rule (code generation, documentation generation or compilation) for part of a UML model. A target stores build options, such as the output path or default type library for Cxx code generation.

A build project defines a set of build rules, which are expressed by generation, documentation, and compilation targets, for the whole UML model or a part of the model, which we say is manifested by the project. The key principle is that project targets process only the manifested part of the model.

A project can be associated with several targets of the same type, meaning that you can easily run code generation and compilation of the same model part for several target compilers, or generate debug and release code in different directories.

The UML model can be associated with several build projects, which can manifest intersecting model parts.  This lets you generate code, produce documentation and compile only those parts of the model which are necessary.

Build projects and targets are represented at UML model level through UML artefacts, allowing them to be handled directly in the same way as standard UML model elements.

Through the build project and target management feature, the application development process can be controlled directly from UML level, making the UML modeling environment a more solid basis for Cxx application development.