Concepts, Definitions, and Rules: RuleSpeak® Practices
In my previous column,[1] I outlined the basic elements of RuleSpeak® from a formal point of view, as part of the Journal's coordinated coverage of Semantics of Business Vocabulary and Business Rules (SBVR). In September 2005, the Object Management Group (OMG) approved SBVR to become a final adopted specification, initializing its finalization.[2] SBVR is the first OMG standard for fact models and business rules.
SBVR is a highly structured set of fundamental concepts, not a syntax for rule representation -- it can support a variety of representational schemes and best practices. In this month's column, extracted from the RuleSpeak Annex for SBVR, I examine RuleSpeak's support for definitions under SBVR, and how it relates to rules. The companion SBVR Speaks column introduces SBVR's treatment of 'definitions' in general and, specifically, covers their representation in the language of SBVR Structured English.[3]
RuleSpeak® is an existing, well-documented[4] business rule notation developed by Business Rule Solutions, LLC (BRS) that has been used with business people in actual practice in large-scale projects since the second half of the 1990s. The Semantics of Business Vocabulary and Business Rules (SBVR) is very flexible in supporting alternative practices with respect to rules and definitions, including those of RuleSpeak. This flexibility is enabled by the underlying logical formulations and their underpinnings in formal logic.
Two core RuleSpeak practices with respect to definitions are the following.[5]
- 'Essence' by Definitions. A definition should always focus on the
core essence of a concept -- that is, on fundamental meaning that is unlikely
to change. Such meaning is expressed as naturally as possible. The form
of language used in common dictionaries is strongly preferred.
- 'Boundaries' by Rules. All constraints should be expressed as rules separate from definitions. Such rules generally define the 'boundary conditions' of a concept; that is, when something is or is not an instance of the concept. Since specific boundaries for a concept (e.g., 'gold customer') can change over time, they should not be embedded in definitions. An additional advantage -- crucial for communication with and among business people -- is that the underlying vocabulary can be kept as compact and as focused as possible.
Experience in large-scale projects indicates that these core practices:
- Ensure good business communication.
- Produce friendly and highly stable definitions.
- Scale extremely well for complex business problems featuring hundreds or thousands of rules.
RuleSpeak might therefore be characterized as more 'rule-ish' than the approach described in SBVR Structured English.[3] RuleSpeak is well suited for practitioners who want to:
- Move faster to rule capture.
- Use more natural (less formal) wordings for definitions.
These issues are pragmatic concerns for business rule projects. It is important to remember, of course, that under SBVR either approach (and others) can produce identical semantics 'under the covers' (i.e., in logical formulations).
Example in RuleSpeak
A EU-Rent definition and set of related specifications taken from the SBVR EU-Rent Annex[6] concerning 'agency' (a category of 'branch') serve to illustrate. The RuleSpeak approach is outlined subsequently.
Sample Definition and Related Specifications for 'Agency'
'Agency': service desks in hotels, travel agents, etc. They have storage space for few cars, and are operated on demand by part-time staff who will typically do the entire workflows for rental and return.
agency |
||
Definition: |
branch that
does not have a EU-Rent location
and has
minimal car storrage and has on-demand operation |
rental organization unit having a EU-Rent location |
||
Concept Type: |
characteristic |
|
Definition: |
rental organization unit that
is based at a EU-Rent site
that is
owned by |
|
Note: |
some things are based at EU-Rent sites
that are
owned by third parties such as hotels and travel agents. |
rental organization unit having minimal car
storage |
||
Concept Type: |
characteristic |
|
Definition: |
rental organization unit that
has car storage that can accommodate
a small number of rental cars |
rental organization unit having on-demand
operation |
||
Concept Type: |
characteristic |
|
Definition: |
rental organization unit that
has hours of operation that are flexible
in response to customer demand |
RuleSpeak Approach for the 'Agency' Example
1. | Find a suitable definition from a standard dictionary, or if available, an industry glossary, to serve as the basis for the definition. The Merriam-Webster Unabridged Dictionary offers the following for 'agency', an appropriate basis for an essence definition. | |||||||||||||
4a: an establishment engaged in doing business for another *an advertising agency* *an employment agency* | ||||||||||||||
|
||||||||||||||
Aside: Recall that 'agency' is a category of 'branch', its general concept (as noted in the entry above). An alternative wording for the definition, incorporating the general concept instead of listing it separately, is: "a branch that is another company engaged in conducting EU-Rent business operations". Either approach is acceptable. | ||||||||||||||
2. | Define Fact Types for 'agency'. For this example, assume an agency has the following (binary) fact types by virtue of being a branch. These fact types would probably be indicated as properties. | |||||||||||||
|
||||||||||||||
Comments: | ||||||||||||||
|
||||||||||||||
3. | Define the appropriate structural rule(s) to establish (current) boundaries for the concept 'agency'. Note that these boundaries might be modified, expanded, or contracted over time. | |||||||||||||
|
||||||||||||||
4. | Specify structural rules for derived terms (e.g., 'third-party location', 'minimal', etc.). | |||||||||||||
A location
is to be considered a third-party location if
located at a
EU-Rent site
that is
owned by a third-party . The car
storage capacity of a branch is
to be considered minimal
if less
than ... [condition(s)]. |
||||||||||||||
5. | Ensure all non-derived terms have essence definitions. | |||||||||||||
on-demand :
flexible in response to customer demand |
||||||||||||||
Comment: Derived concepts are generally not given definitions in RuleSpeak since the structural rule(s) for them are, literally, definitive. |
Structural Rules vs. Operative Rules
In RuleSpeak, the distinction between structural rules and operative rules is viewed as follows.[7]
- Structural rules prescribe criteria for how the business chooses
to organize ('structure') its business semantics. Such rules express criteria
for correct decisions, derivations, or business computations. Structural rules
supplement definitions.
- Operative business rules focus directly on the propriety of conduct in circumstances (business activity) where willful or uninformed actions can fall outside the boundaries of behavior deemed acceptable. Unlike structural rules, operative rules can be violated directly.
The distinction is clear-cut in most cases; in some, it is more difficult. For example, consider 'booking' in the EU-Rent case study. 'Booking' (like 'order', 'reservation', 'registration', etc.) is essentially a 'made-up' device of the business. It is an artifact of knowledge that exists 'simply' to help manage complex, expensive resources.
Therefore, rules about creating bookings (e.g., that the requested pick-up date-time is to be after the booking date-time) are to be viewed as structural. If not followed (applied) in creating a booking, the booking is simply invalid. In other words, since bookings are a knowledge 'thing', the business can establish definitive rules for them. These are the boundary rules discussed earlier.
Now consider 'actual pick-up date-time', the date-time when possession of a rental car is actually handed over to a rental customer (or is said to have been anyway). EU-Rent might want to avoid post-dating handovers -- i.e., have a rule that the actual pick-up date-time is to be after the booking date-time.
This case is quite different. 'Actual pick-up date-time' reflects activity (or the communication thereof) outside the realm of knowledge artifacts -- i.e., conduct that takes place in the 'real world'. Because such rules can be broken (by people), they are operative.
In borderline cases, RuleSpeak best practice is the following:[8]
RuleSpeak Best Practice: Carefully distinguish what should be (according to the structural rules) vs. what really is, based on actual business decisions / actions. One or more operative rules are then specified to constrain 'what really is' against 'what should be'. These latter rules, being operative, are the ones that can be violated.
References
[1] Ronald G. Ross, "The RuleSpeak® Business Rule Notation," Business Rules Journal, Vol. 7, No. 4 (Apr. 2006), URL: http://www.BRCommunity.com/a2006/b282.html
[2] Semantics of Business Vocabulary and Business Rules (SBVR). First Interim Specification, March 2006. Available as dtc/06-03-02 at http://www.omg.org
[3] SBVR Excerpt, "Concepts and Definitions in SBVR," Business Rules Journal, Vol. 7, No. 5 (May 2006), URL: http://www.BRCommunity.com/a2006/b288.html
[4] Ronald G. Ross, Principles of the Business Rule Approach, Boston, MA: Addison-Wesley, 2003, Chapters 8-12. Versions of RuleSpeak have been available on the Business Rule Solutions, LLC website (www.BRSolutions.com) since the late 1990s. Public seminars have taught the syntax to thousands of professionals starting in 1996 (www.AttainingEdge.com). The original research commenced in 1985, and was published in The Business Rule Book, 1994 (www.BRSolutions.com).
[5] Ronald G. Ross, Business Rule Concepts: Getting to the Point of Knowledge, 2nd ed.: Business Rule Solutions, LLC, 2005, Chapter 4, pp. 51-52.
[6] The car rental examples come from EU-Rent, a (fictitious) car rental company. This popular case study was contributed to the SBVR effort by Model Systems and appears in detail as Annex D of the SBVR document.
[7] Ronald G. Ross, Business Rule Concepts: Getting to the Point of Knowledge, 2nd ed.: Business Rule Solutions, LLC, 2005, Chapters 5 and 6.
[8] Ronald G. Ross, Business Rule Concepts: Getting to the Point of Knowledge, 2nd ed.: Business Rule Solutions, LLC, 2005, Chapter 6, pp. 107-108.
# # #
About our Contributor:
Online Interactive Training Series
In response to a great many requests, Business Rule Solutions now offers at-a-distance learning options. No travel, no backlogs, no hassles. Same great instructors, but with schedules, content and pricing designed to meet the special needs of busy professionals.
How to Define Business Terms in Plain English: A Primer
How to Use DecisionSpeak™ and Question Charts (Q-Charts™)
Decision Tables - A Primer: How to Use TableSpeak™
Tabulation of Lists in RuleSpeak®: A Primer - Using "The Following" Clause
Business Agility Manifesto
Business Rules Manifesto
Business Motivation Model
Decision Vocabulary
[Download]
[Download]
Semantics of Business Vocabulary and Business Rules