Flash Points: Where Business Rules Meet EventsCelebrating the 10th Anniversary of the Business Rules Manifesto http://www.businessrulesgroup.org/brmanifesto.htm FAQ #9 Question: What does principle 6.5 of the Manifesto mean?
The relationship between events and rules is generally many-to-many.Business rules generally apply at various points in time. Each of the various points in time when a behavioral rule needs to be evaluated represents an operational business event. Such events can arise in either business processes or ad hoc business activity. How do you find these operational business events? Consider the behavioral rule: A customer must be assigned to an agent if the customer has placed an order. Figure 1 shows the relevant terms and wordings for this business rule. Figure 1. Terms and Wordings for the Agent-Assignment Business Rule The business rule has been expressed in declarative manner. This means, in part, that it does not indicate any particular process, procedure, or other means to enforce or apply it. It is simply a business rule – nothing more, nothing less. The business rule makes no reference to any event where it potentially could be violated or needs to be evaluated. The business rule does not say, for example, “When a customer places an order, then ….” This observation is extremely important for the following reason. “When a customer places an order” is not the only event when the business rule could potentially be violated and therefore needs to be evaluated. Actually, there is another event when this business rule could be violated: “When an agent leaves our company….” The business rule needs to be evaluated when this event occurs too since the event could pose a violation under the following circumstances: (a) The agent is assigned to a customer, and (b) that customer has placed at least one order. In other words, the business rule could potentially be violated during two quite distinct kinds of operational business event. The first – “When a customer places an order …” – is rather obvious. The second – “When an agent leaves our company …” – might be much less so. Both events are nonetheless important because either could produce a violation of the business rule. This example is not atypical or unusual in any way. In general, every business rule producestwo or more kinds of operational business events where it could potentially be violated or needs to be evaluated. (I mean produces here in the sense of can be analyzed to discover.) These operational business events can be called the business rule’s flash points. Business rules do exist that are specific to an individual event, but they represent a small minority. Two additional points:
- Expressing each business rule in declarative form helps ensure none of its flash points is exempted inadvertently.
- Discovering and analyzing flash points for business rules can also prove useful in validating business rules with business people. Important (and sometimes surprising) business policy questions often crop up.