ABSTRACT
The Object Constraint Language (OCL) as the primary constraint language in model-driven software development is heavily used to specify static semantics of arbitrary languages and models. Models and constraints are therefore interconnected and depend on each other. On the one hand, daily work with models enjoys a good tool support, whereas, on the other hand, mature OCL tools are not widely spread but a niche. Unfortunately, during their life-time, the complexity of models rises and so do their OCL constraints. Thus, the gap between conventional modelling and OCL tools becomes obvious. This fact demands for OCL tool support to cope with the complexity. To bridge this gap, refactoring is well-suited and mighty. In this paper we discuss existing work, present a revised catalogue of OCL-exclusive refactorings and provide an implementation. We do not consider co-refactorings of OCL constraints and their constrained models.
- J. Cabot and E. Teniente. Transforming OCL constraints: a context change approach. In ACM symposium on Applied computing, 2006. Google ScholarDigital Library
- J. Chimiak-Opoka, B. Demuth, A. Awenius, D. Chiorean, S. Gabel, L. Hamann, and E. Willink. OCL Tools Report based on the IDE4OCL Feature Model. In OCL and Textual Modelling, 2011.Google Scholar
- A. Correa and C. Werner. Refactoring object constraint language specifications. Software and Systems Modeling, 2007.Google ScholarCross Ref
- A. Correa, C. Werner, and M. Barros. Refactoring to improve the understandability of specifications written in object constraint language. Software, IET, 3(2):69--90, 2009.Google ScholarCross Ref
- M. Fowler. Refactoring: Improving the Design of Existing Code. Addison-Wesley, 1999. Google ScholarDigital Library
- M. Giese and D. Larsson. Simplifying Transformations of OCL Constraints. In Model Driven Engineering Languages and Systems. Springer, 2005. Google ScholarDigital Library
- K. Hassam, S. Sadou, V. Gloahec, and R. Fleurquin. Assistance System for OCL Constraints Adaptation during Metamodel Evolution. In CSMR2011, 2011. Google ScholarDigital Library
- S. Marković and T. Baar. Refactoring OCL Annotated UML Class Diagrams. Software and Systems Modeling, 2008.Google Scholar
- J. Reimann, M. Seifert, and U. Aßmann. Role-Based Generic Model Refactoring. In Model Driven Engineering Languages and Systems. Springer, 2010. Google ScholarDigital Library
- J. Reimann, M. Seifert, and U. Aßmann. On the reuse and recommendation of model refactoring specifications. Software and Systems Modeling, 2012.Google Scholar
- C. Wilke and B. Demuth. UML is still inconsistent! How to improve OCL Constraints in the UML 2.3 Superstructure. EASST, 2011.Google Scholar
Index Terms
- Tool supported OCL refactoring catalogue
Recommendations
Behavior Modeling with Interaction Diagrams in a UML and OCL Tool
BM-FA '14: Proceedings of the 2014 Workshop on Behaviour Modelling-Foundations and ApplicationsThis contribution discusses system modeling with UML behavior diagrams. We consider statecharts and both kinds of interaction diagrams, i.e., sequence and communication diagrams. We present new implementation features in a UML and OCL modeling tool: (1) ...
Tool-supported method for the extraction of OCL from ORM models
BIS'07: Proceedings of the 10th international conference on Business information systemsIt is recognized that conceptual models expressed in ORM are more suitable for analysis stage and the relational database design, and because of natural verbalization are better tolerated by stakeholders, whereas UML models are more often used in the ...
Analysis of the AnyWalker Software Architecture Using the UML Refactoring Tool
AbstractRefactoring (restructuring of a system, which keeps its functionality invariant) of the software can be aimed at the optimization of such characteristics as modifiability, maintainability and understandability. Model refactoring can be conducted ...
Comments