The DEAT Business Rule Pattern Language

Russell R. Hurlbut, Ph.D.

Previous | Table of Contents | Next

Rule Pattern 18: Trigger

Problem – Describing "When Needed" and "When Changed" Actions

Many business processes rely on actions that must take occur when a value from an entity is needed or the state of the entity changes.

Solution

Triggers may be defined in the form of business rules by declaring watched attributes that require actions to be taken when accessed or when updated. This rule pattern is declared through a trigger type parameter along with a watched attribute. Define a when needed trigger and/or a when changed trigger.

Example – Benefit Election Change

Once an employee's benefit commences payment, no further election changes may be made and all other calculations that had a status of pending election are invalidated. In this example a state change triggers an update to the state of other entities. Key values that trigger the action may also be specified if needed. This rule pattern may be used in conjunction with the State Transition rule pattern to specify the bulk of a state machine in terms of transitions and actions.

Benefit Election Change Parameters

Trigger type

when changed

Watched attribute

Benefit status

Value

in payment

Action

invalidate other calculations

Example – Accrued Benefit Request

When an employee inquires as to the amount of his accrued benefit and the value is not current, then a calculation based on the employee's employment data is run. This type of rule illustrates a when needed type of trigger.

Accrued Benefit Request Parameters

Trigger type

when needed

Watched attribute

accrued benefit amount

Value

<unknown>

Action

run benefit calculation

UML Representation and Related Patterns

The Trigger business rule pattern maps to the trigger association between an Event and a Transition model element.

Previous | Table of Contents | Next

 

 Copyright 1998 Expertech.Ltd. All Rights Reserved.
 Legal