Enforcement of business rules in relational databases using constraints

Geraldo ZimbrãoRodrigo MirandaJano Moreira de SouzaMario H. EstolanoFrancisco P. Neto

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.

Caso o link acima esteja inválido, faça uma busca pelo texto completo na Web: Buscar na Web

Biblioteca Digital Brasileira de Computação - Contato:
     Mantida por: