Welcome to D
SIGMOD 2003
PODS 2003
SIGMOD-RECOR
ADBIS
CIDR 2003
CIKM 2003
DASFAA 2003
Data Enginee
DEBS
DMKD 2003
DOLAP 2003
DPDJ 2003
ER
GIS 2003
Hypertext 20
ICDE 2003
ICDM 2003
ICDT 2003
JCDL 2003
KRDB 2003
MIR 2003
MIS 2003
MMDB 2003
RIDE 2003
SBBD 2003
<<< = SBBD Papers>>>
SIGIR 2003
SIGIR-FORUM
SIGKDD 2003
SIGKDD-EXP
SSDBM 2003
TIME 2003
TODS
VLDB 2003
VLDB Journal
WIDM 2003

Enforcement of Business Rules in Relational Databases Using Constraints


Geraldo Zimbrao, Rodrigo Miranda, Jano Moreira de Souza, Mario H. Estolano, and Francisco P. Neto

  View Paper (PDF)  

Return to Schema Versioning and Data Semantics


Abstract

Nowadays, many authors suggest that business rules are a special class of information system requirements. Business rules should have a special handling, from the earliest analysis phases to the implementation. The related literature states many ways for business rule specification, among them, the UML Object Constraint Language (OCL). OCL is an adequate choice for formal representation of business rules. Business rules stated in OCL can be translated into pieces of code that implements the desired capability. Moreover, the system can automatically infer the events where this code must be evaluated. This paper presents the design and implementation of Athena, an OCL constraint enforcement engine built on the top of a commercial relational DBMS (Oracle). In addition, we evaluated the use of the Athena in a real application. The enforcement engine was designed to offer the highest functionality at the minimum impact in the style of database design and access. As a result, it was possible to couple a business rule layer to an existing application with little effort, in an incremental approach. The ability to quickly create and maintain business rules was greatly improved, resulting in a large improvement of productivity. The overall programming effort spent on enforcing business rules was greatly reduced, and the business rules were stated declaratively. The system automatically discovers the events where the rules must be fired. To bring this functionality to existing RDBMS represents a great progress in the evolution of relational technology. Moreover, the main result is that the business rule system assures that a buggy or ill-programmed function in the application will not accidentally violate a business rule.


©2004 Association for Computing Machinery