Extending a UML and OCL Tool for Multi-Levels: Applications towards Model Quality Assessment Khanh-Hoang Doan Martin Gogolla Department of Computer Science Department of Computer Science University of Bremen University of Bremen D-28334 Bremen, Germany D-28334 Bremen, Germany doankh@informatik.uni-bremen.de gogolla@informatik.uni-bremen.de Abstract—Currently, meta- and multi-level modelling is gain- III. A PPLICATION : M ODEL Q UALITY A SSESSMENT ing more and more attention. A natural, upcoming question is, how to extend existing two-level approaches to cover multi-levels. Model quality assessment helps modelers to detect errors or In this contribution, we extend the UML and OCL tool USE in mistakes on their models. These assessment properties might order to describe multi-level models. We also apply the extension include design properties, respecting naming conventions or to demonstrate the usefulness of multi-level modelling for model metrics properties [2]. We introduce a proposal that employs querying and model quality assessment. OCL utilizing the three-level modeling approach as presented before. Thus, we can automatically evaluate quality properties I. I NTRODUCTION of a user model. Fig. 2 shows the workflow of our proposal In this contribution we show how to upgrade a two- for model quality evaluation, which uses reflective OCL con- level modeling tool to three levels of modeling by adding straints as a major ingredient. the OMG (Object Management Group) UML meta-model to the topmost level. In addition to this tool extension, we discuss reflective model querying as it plays an essential role. Therefore, we also present a reflective model querying approach using OCL for the meta-model. We apply meta- model queries for model quality evaluation. Developers can use an appropriate method to evaluate their model and find drawbacks and problems on it. II. M ETA - MODELING IN T OOL USE In the current contribution, we introduce an approach, in which the MOF architecture is integrated into USE for multi- level modelling. Roughly speaking, we now make the third OMG layer M2 explictily available, and an instance of the M2-model corresponding to the user model is added to the Fig. 2. Worflow of model quality assessment process. M1-layer. Fig. 1 shows the general schema for the three-level modeling in the new version of USE. IV. C ONCLUSION This contribution has proposed an extension of the tool USE M2 UML Meta model that supports three-level modelling where the middle level can be seen at the same time as an object diagram, i.e., the <> instantiation of the meta model, and as a class diagram, i.e., <> the type model for the lower level. Based on these ideas, we M1 Meta model present approaches for model quality assessment. UML User model instances <> R EFERENCES <> [1] Gogolla, M., Büttner, F., Richters, M.: USE: A UML-based Specification Environment for Validating UML and OCL. Sci. Comput. Program. M0 Run-time instances 69(1-3), 27–34 (2007) [2] López-Fernández, J.J., Guerra, E., de Lara, J.: Assessing the Quality of Meta Models. In: Proc. 11th Workshop MoDeVVa@MODELS 2014. Fig. 1. General schema for the three-level modeling. pp. 3–12 (2014)