Ir al contenido

Documat


Resumen de Incremental checking and maintenance of uml/ocl integrity constraints

Xavier Oriol Hilari

  • Ensuring the data correctness of some information system is a crucial task. So, software engineers specify sets of integrity constraints that should be satisfied by the system's data. These constraints, however, can be violated every time a user modifies the data state. To avoid so, the system should either check that the current update does not cause any violation before applying it, or maintain the constraints after applying the update (i.e., apply the update together some additional corrective measures to avoid the violation).

    This thesis contributes on both problems, i.e., how to automatically check and/or maintain a set of integrity constraints after a user update, considering information systems and constraints described with two of the currently most spread conceptual modeling languages: UML for describing the information schema, and OCL for defining its constraints.

    In the first part of the thesis, we start analysing the expressiveness of OCL for defining integrity constraints. In this analysis, we show that the OCL language is so expressive than checking its constraints is non-decidable. To tackle this phenomenon, we determine the subset of the OCL language which is expressively equivalent to relational algebra (OCLfo), and thus, tractable at least in the case of checking.

    Consequently, in the second part, we tackle the integrity checking/maintenance problem for OCLfo constraints departing from a currently existing method for relational databases (the event rules) which we extend in several directions.

    For the case of checking constraints, we extend the event rules to deal with aggregation functions (such as sum, count, etc), thus, pushing the expressiveness of the constraints they can deal with (that is, OCLfo extended with aggregates), and exploit this extension to increase the performance of the original method.

    For the case of maintenance, we show that, with a slight modification of the event rules, we can maintain the constraints using a simple complete implementation of the well-known chase algorithm. At this point, we realize that the problem of maintenance is non-decidable for OCLfo, so, we determine a subset of it, OCLuniv, which is decidable.

    Furthermore, in order to show the high applicability of our approach, in the third part, we export our work into the context of Description Logics, in which we present a variant of the event rules that permits maintaining a DL-Lite ontology in polynomial time through SQL queries.


Fundación Dialnet

Mi Documat