Abstract

Model-driven engineering is a methodology for software development that focuses on the use of models in the software development process. These models can be transformed into code, saving developers both time and effort. One of the most widely used models for transformation is the unified modeling language (UML) class diagram, along with its object constraint language (OCL) constraints. Before transforming UML/OCL models into code, it is essential to find defects in the model, as model transformations and code generation may spread errors to other notations where they are more difficult and time-consuming to trace and detect. Formal verification of models is a time-consuming process and there are several formal verification tools that can check the accuracy of UML/OCL models, but their high computational complexity limits their scalability. In this paper, we present an overview of disjoint and non-disjoint slicing techniques that can break UML/OCL class diagrams into independent submodels in order to reduce the complexity. These submodels can then be verified separately through any verification tool or engine. Furthermore, an overview of a novel feedback technique is also proposed, which highlights any unsatisfiable submodels with their integrity constraints from the complex hierarchy of a UML/OCL class diagram.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call