Issue No. 04 - April (2002 vol. 28)
<p>One of the most important features of modeling tools is generation of output. The output may be documentation, source code, net list, or any other presentation of the system being constructed. The process of output generation may be considered as automatic creation of a target model from a model in the source modeling domain. This translation does not need to be accomplished in a single step. Instead, a tool may generate multiple intermediate models as other views to the system. These models may be used either as better descriptions of the system, or as a descent down the abstraction levels of the user-defined model, gradually leading to the desired implementation. If the modeling domains have their metamodels defined in terms of object-oriented concepts, the models consist of instances of the abstractions from the metamodels and links between them. A new technique for specifying the mapping between different modeling domains is proposed in the paper. It uses UML object diagrams that show the instances and links of the target model that should be created during automatic translations. The diagrams are extended with the proposed concepts of conditional, repetitive, parameterized, and polymorphic model creation, implemented by the standard UML extensibility mechanisms. Several examples from different engineering domains are provided, illustrating the applicability and benefits of the approach. The first experimental results show that the specifications may lead to better reuse and shorter production time when developing customized output generators.</p>
object-oriented modeling, domain-specific modeling, Unified Modeling Language (UML), model-based output generation, automatic model transformation, model-based translation, object diagram, metamodeling, modeling tool
D. Milicev, "Automatic Model Transformations Using Extended UML Object Diagrams in Modeling Environments," in IEEE Transactions on Software Engineering, vol. 28, no. , pp. 413-431, 2002.