Rules-based Service Orchestration

OpenRules provides business users with abilities to build and deploy operational decision microservices. Now we empowered business users with an ability to assemble new decision services by orchestrating existing decision services independently of how they were built and deployed. The service orchestration logic is a business logic too, so it’s only natural to apply the decision modeling approach to orchestration. In this post I will explain how to orchestrate different services by creating a special orchestration decision model that describes under which conditions such services should be invoked and how to react to their execution results.

Continue reading

Compressing Decision Tables

The DMC Challenge Sep-2020 deals with compression of decision tables trying to replace relatively large decision tables with “almost” equivalent but smaller decision tables. It is only natural to apply Machine Learning to this problem as it allows us to automatically discover business rules from the sets of labeled historical data records. So, I decided to use the open source Rule Learner to address this problem. In this post I will describe how I approached this problem with these implementation steps:

  1. Write a simple generator of data instances with various combinations of known attributes
  2. Run the existing decision table using OpenRules to produce labeled instances
  3. Feed the labeled instances to Rule Learner (or SaaS Rule Learner) to automatically discover a new decision table and evaluate its performance.

Continue reading