Simplification of UML/OCL schemas for efficient reasoning
We define a method for simplifying UML schemas to improve efficiency of reasoning.The method deals with schemas with general 1st-order constraints (i.e. most OCL).The method can be incorporated in any UML/OCL reasoning tool.Experiments show time improvements from x2 to x370 in different tools/schemas. Ensuring the correctness of a conceptual schema is an essential task in order to avoid the propagation of errors during software development. The kind of reasoning required to perform such task is known to be exponential for UML class diagrams alone and even harder when considering OCL constraints. Motivated by this issue, we propose an innovative method aimed at removing constraints and other UML elements of the schema to obtain a simplified one that preserve the same reasoning outcomes. In this way, we can reason about the correctness of the initial artifact by reasoning on a simplified version of it. Thus, the efficiency of the reasoning process is significantly improved. In addition, since our method is independent from the reasoning engine used, any reasoning method may benefit from it.