Rule development for active database systems

Rule development for active database systems

phdthesis
Anca Vaduva
Active database management systems promise to provide an effective integration of database concepts with the rule paradigm. Their strength resides in the centralized representation of real-world semantics in form of rules instead of hiding and replicating them in application programs. However, despite their incontestable advantages, active database management systems are not widely used in practice. One of the reasons is the lack of support for application development. This thesis analyzes specific needs of support and proposes solutions, finally materialized as tools, for assisting the process of active application development. First, we provide a comprehensive overview of the life-cycle of active applications, focussing on the development of rules. Among the considered phases, we stress the rule verification and validation, which have to cope with critical problems that are typical for rules, like, e.g., rule conflicts. In this context, we present a novel approach for termination analysis that significantly improves the accuracy of existing methods. By considering composite events, more precise results can be achieved for avoiding nontermination of rule execution. The presented solution is essential for the termination analysis of expressive rule languages, as provided by many advanced active DBMS. Another contribution of this thesis is in the area of rule testing. We present a new approach for dealing with rule-specific problems that have not been addressed until now. In particular, our work focuses on determining the existence of defects caused by conflicts and dependencies between rules. Finally, we introduce and evaluate a set of tools to assist application developers during their work. The toolset provides for graphical interfaces supporting both static activities such as rule editing, browsing, termination analysis, and dynamic activities, such as testing and debugging. Static tools are used during the specification and design of active database systems, i.e., before the execution of applications. Dynamic tools assist the application developer at runtime, when the active database system is operational and rules are processed.
Rule development for active database systems
2000
University of Zurich, Department of Informatics