Search ::     [ Advanced ]
Username:   Password: Auto login next time?  

Business Rule Solutions : World Class Training For Critical Business Innovations

RuleXpress: The business tool for expressing and communication business rules.

IDIOM Software

JBoss� Enterprise BRMS from Red Hat
 

 

 

 

     SPREEUWENBERG ARCHIVES ...
untitled

Rule Observatory

Organizing a Set of Rules

by Silvie Spreeuwenberg

This column is the next in a series that provides the reader with best practices on using or choosing a rules engine.  The target audience for this series is typically the user of a rule engine, i.e., a programmer or someone with programming skills.  All coding examples should be read as pseudo-code and should be easily translated to a specific target syntax for a rule engine that supports backward and forward chaining in an object-oriented environment.

We will discuss recommendations on how to organize rules in rule sets.  In this description the following concepts are important:

  • Rule set:  a collection of rules (or rule sets) that are grouped
        The grouping can be done in various ways.

  • Infer block:  a construct that uses rules to solve a problem
        The solution algorithm may be goal driven (backward chaining) or data driven (forward chaining).

  • Inference Task:  a set of methods that are used to perform a task, using one or more infer blocks
        Besides the execution of the infer block it also takes care of the preparation and the processing of the results of the infer block.

  • Rule service:  the collection of inferences, rule sets and rules that make up a service

Infer blocks should be associated with a solution (or sub-solution) of your application.  But, although there may be a many-to-many relationship between rule sets and infer blocks, this does not mean that rule sets have to be task- or solution-oriented!

As a matter of fact, it is essential that there be a clear distinction between POSTING rules and EVALUATING rules.  This gives us the opportunity to organize rules in a task- or solution-independent way.

I know that, in most projects, the rules are derived in a task-oriented way, so it would be quite awkward to think of another way to group rules than in the way you are doing now in your functional design.  Sometimes you can ask your experts to come up with some kind of grouping mechanism.  You should always use the grouping mechanism that 'comes natural' with your own work.

My recommendation is to organize rules in rule sets (rule groups) in a way that they can be easily mapped to your functional documentation.  For example, if your documentation has paragraphs or sections with 'related' rules, you can create rule sets in the same way.

In general you can group rules according to how they are delivered (legislation, contracts, departments, etc.) or how the rules are used (applications, tasks, processes, departments, etc.).

By the way, rule sets may refer to other (sub) rule sets if you wish.  It gives you a little more organizational flexibility.


standard citation for this article:
Silvie Spreeuwenberg, "Organizing a Set of Rules," Business Rules Journal, Vol. 9, No. 7 (July 2008), URL:  http://www.BRCommunity.com/a2008/b428.html  

June 2012
Rules that Give You Too Much Freedom

November 2011
Use the Right Tool for your Job

July 2011
Learn from the Expert (Part 3): Get Organized in your Rule Thinking

May 2011
Learn from the Expert (Part 2) — Textual rules: Out of fashion or a Classic?

March 2011
Learn from the Expert (Part 1) — A Business Analyst must ask "Why?"

October 2010
Count your Rules!

July 2010
The Ten Most Common Mistakes Made By Corporate Adopters of Business Rule Management Systems (BRMS) And How to Avoid Them (Part 2)
Guest Column By Jan Purchase


May 2010
The Ten Most Common Mistakes Made By Corporate Adopters of Business Rule Management Systems (BRMS) And How to Avoid Them (Part 1)
Guest Column By Jan Purchase


January 2010
How to Deal with Exceptions in Software Support

December 2009
Exceptions are just 'some more rules'

September 2009
Rule Authoring Is a Creative Process

March 2009
What happened to the B and the M of BRM? ... and how the new notion of business rules documentation got introduced

October 2008
The Liberty of Rules

August 2008
The Inference Task

July 2008
Organizing a Set of Rules

June 2008
Procedural Logic in the Reasoning Process

May 2008
What about Methods in Rules?

April 2008
Different Kinds of Rules and How to Write Them Properly

March 2008
SBVR: Observations from Initial Experiences

January 2008
Rule History and Versioning (Part 3)

December 2007
Rule History and Versioning (Part 2)

November 2007
Rule History and Versioning (Part 1)

September 2007
Flexibility and Business Rules

March 2006
A World Without Rules

November 2005
The Semantic Web and the Business Rules Approach ~ Differences and Consequences

July 2005
The Semantic Web and the Business Rules Approach ~ Differences and Similarities

May 2005
Semantic Web

March 2005
End-user Programming

January 2005
Secret Rules

November 2004
Observations on Business Rules in Europe and the U.S.

 

 

 about . . .

 Drs. SILVIE SPREEUWENBERG


Drs. Silvie Spreeuwenberg has a background in artificial intelligence and is the co-founder and director of LibRT.  LibRT helps customers assess and improve the quality of their business rules.  Silvie's experience with business rules modeling has resulted in the development of tools and techniques to increase the quality of business rules.  She writes, "We believe that one should focus on quality management of business rules to make full profit of the business rules approach."  LibRT is located in the Netherlands; for more information visit www.librt.com.

 

 

 





[ Home ] [ Staff ] [ About BRC Publications ] [ Editorial Feedback ] [ About BRCommunity ]
[ Contributor's Guidelines ] [ Privacy Policy ] [ Technical Support ]