Let me share something we’ve learned from our work on business rules. The world’s leading cause of ambiguity in expressing business rules is missing verbs
. Stay with me now.
Consider this sample business rule: An order must not be shipped if the outstanding balance exceeds credit authorization.
As a first-cut statement, that’s perhaps not bad. The more you read it, however, the more ambiguity you’ll find. Clearly, important ideas are hidden or missing. For example: The outstanding balance of what
? …order? …customer? …account? …shipment? The credit authorization of what?
…order? …customer? …account? …shipment?
The hidden or missing ideas are all verb-related. To eliminate the ambiguity, the relevant verb concepts (called fact types
in fact modeling) – must be discerned; then the original business rule restated. Suppose the relevant verb concepts can be worded:
customer places order
customer has credit authorization
customer holds account
account has outstanding balance
Using RuleSpeak (www.RuleSpeak.com
– free) the business rule can now be restated: An order must not be shipped if the outstanding balance of the account held by the customer that placed the order exceeds the credit authorization of the customer.
Although the resulting statement is a bit wordier, it is far less likely to be misunderstood, misapplied, or mis-implemented. It is now enterprise-robust
. The key insight: Wordings for relevant verb concepts should always appear explicitly
in expression of business rules. For that matter, wordings should appear explicitly in any
form of business communication you want to be understood correctly – including IT requirements
You probably noticed use of the preposition of
in the revised business rule. Stand-in prepositions for verb concepts are considered lazyman’s verbs
. (Literally, you can’t make complete sentences with only prepositions!) Yes, you can use a preposition to stand in for a full wording, but do so with caution. As a rule of thumb, prepositions are safe only for two cases:
(1) properties – e.g., credit authorization
and outstanding balance
(2) role names – e.g., owner
as in the earlier example, owner of a vehicle
This post excerpted from our new book (Oct, 2011) Building Business Solutions: Business Analysis with Business Rules. See: http://www.brsolutions.com/b_building_business_solutions.php