This paper proposes a new mechanism, called BPTrigger, which can overcome limitations of current Database (DB) Triggers. DB Triggers are used to enforce integrity constraints related to data stored in databases. They are not adequate, however, for complex business constraints that must be applied to several business processes or activities, hence, involving many data items. Further, DB Triggers does not properly support distributed and heterogeneous environments and may incur serious performance degradation including non-termination. BPTrigger enables representation and flexible enforcement of complex business process constraints in a distributed and heterogeneous environment. Unlike a DB Trigger that must be defined on each data item participating in a constraint and must be checked every time the data item is updated, BPTrigger allows a constraint to be defined only once on a business process and enforces the constraint once at the time of execution of the process. To provide comprehensive support, the paper identifies all possible constraints related to business processes based on literature survey and classifies them into four types: entry, exit, running, and invariant, according to the time of enforcement. Reflecting the requirements suggested by the classification, the syntax of BPTrigger is defined. An additional construct is proposed to enable flexible management of invariants. The paper also introduces a prototype system for BPTrigger along with an extended example to demonstrate its feasibility and to provide a performance comparison with typical DB Triggers.
Read full abstract