In-Depth
What's a business rule?
- By Stephen Swoyer
- May 1, 2005
Quite simply, any rule that’s required to run a business. It’s
an impossibly broad definition, to be sure, but the truth is that the
term business rule encompasses both the obvious (money can be exchanged for
goods and services) and the not-so-obvious (a Super Duper Premier Customer is
eligible for a discount of X on the fourth Friday of every month).
The point, of course, is to identify the rules that are required for a business
to function, document them, make them operational and automate their management
(provisioning, enforcement, monitoring, auditing). There are different categories
of business rules. The Business Rules Community (www.brcommunity.org),
for example, identifies three: constraints, which specify the conditions
that must (or must not) be fulfilled for a rule to be invoked; production rules,
which derive new information from existing data; and event rules, which specify
what action should be taken in response to specific events.
Proponents tout an all-encompassing vision for the technology, but the reality,
today at least, is that business rules are finding uptake in support of specific
business requirements, such as sales and marketing, or regulatory compliance
or in any business process where requirements frequently change.
The classic use case involves a company that wants to launch a promotional
effort, say, tiered discounts, for customers on the basis of past patronage
or buying habits. It’s possible that the programmers who built the company’s
e-commerce application designed such a facility into it, namely a feature that
lets programmers update the application logic to enable promotional discounts
for targeted customers with a minimum of effort.
In the business rules model, the line of business itself makes these changes.
What’s more, business users can do so by completing any of several
pre-built templates. In business rules-ese, a user might format a template
thusly:
- A Customer must be considered a Preferred Customer if the Customer places
more than 10 Orders in a calendar year.
- A Customer may be considered a Preferred Customer only if the Customer
places Orders of $100 or more in a calendar year.
- If the Customer is a Preferred Customer, the Customer is eligible for a
20 percent Discount.
- A Customer must be considered a Platinum Customer if the Customer is a
Preferred Customer that has placed more than $200 in Orders in a calendar
year.
The template is processed by the BRMS, which maps the declarative statements
with definitions stored in a rule repository. From there, a business
rules engine fires out Java, .NET or even COBOL code that incorporates the desired
changes.
Back to feature: Proponents
Push Business Rules, But Programmers Aren’t Buying, Yet
About the Author
Stephen Swoyer is a contributing editor for Enterprise Systems. He can be reached at [email protected].