Introduction to IDIOM
General Description
Any discussion of IDIOM must start with a discussion about decisions – what they are, and why they are important. We start with the premise that the decisions that a business makes, and how it makes them, is a critical defining characteristic of the business. Good decision making is at the very core of business success, and how it is approached is an important characteristic that differentiates one business from another.
What is a decision? A decision is the result of applying proprietary business ‘knowledge’ to a specific problem to arrive at a desired conclusion or outcome. The problem must be defined in terms of business data, and the business knowledge is applied as a series of discrete logical steps. The result is a specific, new data value that we call a decision.
An understanding of the decisions that a business makes can be used to identify and then to define relevant business objects; and the same decision oriented knowledge can also be used to infer the business processes that govern the lives of these objects in the general course of business.
The role of decisions that is inferred by the above discussion contrasts with traditional approaches to systems analysis. In a ‘decision centric’ approach, the focus on data and process is preceded by an investigation into the business approach to decisions. In practice, we find that business users are more comfortable describing the decisions that they make rather than describing the same domains in terms of ‘data’ or ‘process’. Decision centric analysis provides a fast and appropriate entry point to traditional data analysis, and to BPM style approaches. In fact, by using decisions as the initial analysis focus, we see significant improvements in the quality of analysis outcomes, while reducing both time and cost (note: this discussion is continued in the `EuroBizRules’ presentation, which can be found at www.idiomsoftware.com).
Decision centric analysis also contrasts with traditional approaches to ‘business rules’. It is therefore worthwhile to discuss the distinction between a business rule and a decision in this context.
The Business Rules Group1 provides two definitions of a business rule, one from a business perspective, the other from an Information Systems perspective.
From a business perspective:
A business rule is a directive, intended to influence or guide business behaviour, in support of business policy that has been formulated in response to an opportunity, threat, strength, or weakness.
From an Information Systems perspective:
A business rule is a statement that defines or constrains some aspect of the business. It is intended to assert business structure, or to control or influence the behaviour of the business.
The Business Rules Group has also published a Business Rules Manifesto2 setting out the principles of business rules. The Group goes further and classifies business rules into four categories. These are summarized in Table 1.
| Rule Category | Description |
|---|---|
| Terms | A word that has a specific meaning for the business. Literals, entities and business objects fall into this category. Examples of terms include Customer, Invoice, etc. |
| Fact |
A relationship that associates two or more terms together. Types of fact include
Example: "An order comprises order items". |
| Action Assertions | Constraints on the dynamic behaviour of the system. Constraints are defined using other atomic business rules (terms and facts). Example: “an invoice must have a delivery address�. |
| Derivations |
Dynamic business rules that create derived facts. There are two general types of derivation:
|
Table 1: Categories of Business Rules
IDIOM is targeted at a defined subset of these business rules. It does not support inductive inference, fact or term business rules. Rather, it supports the definition and implementation of action assertion (constraint), mathematical calculation, and deductive derivation business rules. Therefore, IDIOM employs the word ‘decision’ rather than `rule’ and defines it very explicitly. Within the IDIOM Decision Suite, a decision is defined as:
An outcome from the execution of a formula that is captured and used by the business.
Whereas a formula is defined as:
A specific set of logical operations that defines one possible outcome, given a prescribed set of variables.
- What is a Business Rule - The Business Rules Group http://www.businessrulesgroup.org/brgdefn.htm
- The Business Rules Manifesto - The Business Rule Group, 2003.
http://www.businessrulesgroup.org/brmanifesto/BRManifesto.pdf
