ORB

by Keith Elder


About ORB

ORB Splash Screen

ORB is a Business Rules Management tool I invented to manage rules within CARI. Marketing and banking were driving more and more changes within CARI. They wanted functionality changed in the program or to turn things on or off based on various roles or even individual accounts. Because a change in the code would require a complete re-deploy of CARI to thousands of banker and operation desktops. I had to find a way to write and runs rules within CARI without a re-deploy.

The Big Idea

.NET 3.0 was released in November of 2006 and I had been playing with the beta version of Windows Communication Foundation and Workflow Foundation for several months. There was a new namespace called System.Workflow which had a way to build out activities and APIs for handling rules.

I learned I could take any object and run rules over it. I built a Windows interface where rules could be built, edited and run against different instances of objects. The same object could be run on different RuleSets and it would yield a different results.

After a few weeks of prototyping, I realized an entire rule application could be built on the top of the existing rule APIs within Workflow Foundation. Other companies at the time, K2 for instance, had workflow products for sale on the market and were building things on top of Workflow Foundation. I realized that I could do the same.

Leveraging various Infragistic controls we had purchased for CARI, I continued polishing a real-world example and put together a lunch and learn. I invited architects, leaders, and other engineers and showed them my findings. I presented the name "Object Rules Builder" and the acronym stuck. After that meeting, ORB was born and because a full fledge product. My initial idea was to build something that we could sell to other companies. In hind sight we should have invested more R&D and time into ORB.

If you study InRule (a commercial rules engine), ORB has a lot of the same characteristics and features. I believe if ORB would have had a more dedicated team, it could have been a full fledge rule engine that would be competitive in today's market. And, we wouldn't have had to ever purchase InRule (I was on the rule engine selection committee). Which, brings us to yet another story.

ORB