Everywhere you turn, rules dictate how you work, how you act, how you dress, how you conduct yourself. And as onerous as these personal rules are, rules that control a business can be many times more complex and burdening. Business rules can (and often do) contain contradictions that can make interpreting them difficult.

Wouldn't it be wonderful to create a graphic representation of your business rules so that you could clearly map out what to do in any given circumstance? In IT, we have business process models that lay out business processes in a visual format and data process models that visually depict the processes that operate on the data as it passes through a system. We have entity relationship models and object models that help you visualize how data is stored inside a database. We have systems models and network models and even Web site and Web page models that visually represent these IT components. So why don't we have business rules models?

One explanation might be that rules models extend beyond the scope of traditional IT. All the other models I mentioned relate to business components that fall under the auspices of the IT department. People in IT use the collection of visual tools I listed above to help them understand their universe. Describing a system with a picture is much faster and, in many cases, more accurate than writing it out in thousands of words. If you can't imagine why you'd want to do this, remember that the traditional scope of IT has been significantly blurred. You need to think about the needs of your whole organization.

The concept of a rule model isn't new; business rules engines such as the Eclipse plugin and Fair Isaac's Blaze Advisor have been using rule models to organize the thousands of business rules that typical customers struggle with every day. However, these software packages are expensive and complex to deploy. What about those of us who work with budget and time constraints? What can we do to better organize and formalize the rules and regulations by which we run our businesses?

To address this situation, information system development expert Ronald Ross has been developing a style of modeling called the Fact Model, which is part of his business-rules approach. Because of space limitations, I can't describe Ross's entire methodology (which you can read about in his book Business Rule Concepts: Getting to the Point of Knowledge, Second Edition). However, I can say that one of the fundamental principles of Ross's business rules approach is a structured business vocabulary and a mapping of this vocabulary into a Fact Model.

What's the difference between a rule and a fact? A fact is an unconstrained rule composed of two terms connected by some action verb. A Fact Type, in Ross's methodology, is a non-judgmental, non-constrained sentence (no adjectives, no adverbs). The following two sentences are Fact Types:

customer places order
   
shipment includes item 

A term is a basic word or phrase (in English or any human language) that's used in the business; a term has some specific, defined, unique business meaning. A collection of terms about your business constitutes a structured business vocabulary. You should already be storing business terms in a catalog, to which everyone in the company has access. If you don't have a business catalog, consider going to http://www.wikispaces.com and establishing a wiki for your company.

What Constitutes a Rule?
A rule is a fact that has been constrained. By extending the fact customer places order to a customer places at least one order, you've changed a fact to a rule. A business runs on rules. So why would we want to create a Fact Model?

Facts are the basis of rules. Recording facts in a visual format, as the Ross methodology explains, is so simple that you can easily teach business users the technique and let them record what they do and how they do it. Encourage them not to qualify the Fact Types (the nonjudgmental sentences that make up the core of the Fact Model) so that you can get to the core facts. When you review the Fact Models with them, you can fill in the constraints, whatever they might be.

Figure 1, shows a basic Fact Model from which you can derive facts such as a student enrolls in a class, a class is offered by a university, a university offers a class. This simple model tells you much about this business. For one thing, students have to buy their books; books aren't provided for students as part of the class-registration process. This is an inferred business rule that's expressed as a Fact Type.

Isn't This Just a Concept Model?
You might argue that this Fact Model is just another form of conceptual data model, but in fact, there are significant differences between a Fact Model and a conceptual model. The original intent of a conceptual model is that it's a graphical representation of a set of business rules (not facts). However, the various methodologies that you use to render a conceptual model have evolved to produce highly complex drawings that aren't intuitive to a non-database person (i.e., a business user). The conceptual model is step one in the database-design process, so it tends to limit itself to data that will be stored in the database being modeled. Arguably, you could use a package of conceptual models or a master conceptual model comprised of child models to better express the business rules of the company, but conceptual models tend to be limited to expressions of data storage.

   Prev. page   [1] 2     next page



You must log on before posting a comment.

If you don't have a username & password, please register now.