This summer I am planning a road trip adventure. A motley group of riders, which includes my 75-year-old father, is planning a motorcycle ride to Alaska. The trip will be about 6,000 miles and will cover some of the most beautiful country in North America. To make such a journey, several planning sessions have been held. We will leave with a good idea of where we are going, but adjustments will be made along the way in both time and destination. We know from experience that it would be impossible to lay the trip out exactly on a map. Moreover, there is not an exact process for how to ride the entire way safely. Each rider must use discipline in riding, and apply knowledge and use acquired skills to ride safely.
Every month I field calls from companies who are considering taking a road trip with the Business Rules Approach. Regardless of the industry, the questions are almost all the same. Do you define every term? Do you use a fact model? How do you implement rules? Is a rule engine used? How complex are your business rules? Do you use a tool to manage your rules? If so, is the rule management tool integrated with the rule engine? In Zen fashion, there is a good relationship between taking a motorcycle adventure and using the Business Rules Approach.
First and foremost, each rider must practice discipline in riding. And in direct correlation, each member of the business team must have discipline and be engaged in modeling the business. This is not easy work. In fact, it can be tedious work, and not very glamorous at times. The business has the responsibility to manage the terms, fact, rules, and processes of the business. If the job is left to the IT staff, they may simply define their own terms -- in other words, IT may wing it. They may bury the vital business rules deep in code and leave the business without clear knowledge of how the business is actually working. The discipline of the business rules approach must be in the hands of the business. From a Zen perspective we would say, "Each rider must ride his own ride." Business must manage their business.
The road map to implementation is much more forgiving. The final destination is clear and each day's ride (project goal) is clear, but the exact road (plan) can and will change as need dictates. Implementation should be an iterative approach. Object models should be constructed to mimic the business architecture. System objects should behave like business objects where practicable. Responsibilities of business objects should be tied back to concepts in the Fact Model. A behavior-based design builds in agility. The system architecture should be in alignment with the needs of the business.
There is not a perfect plan and process for taking a road trip, and there is not a perfect methodology for implementing business and systems architecture. Nevertheless, there are best practices which, when applied, can reduce the risk and make the trip enjoyable. And this can be applied to all adventures.
# # #