User friendly, intuitive stateless business rules management system
March 01, 2019

User friendly, intuitive stateless business rules management system

Anonymous | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with IBM Operational Decision Manager

IBM Operational Decision Manager (ODM) is used for several use cases. It is used on multiple applications where static/stateless rules are needed as well as decision tables. There are rule applications and decision services that have rules, rulesets and decision tables that the business can create and set up and they are exposed to applications through the use of REST API.
  • Provides users ability to define business objects and generates an execution object model behind the scenes so they don't have to worry about it.
  • It provides an English like rule language to define the rules.
  • It provides a Rule designer, an eclipse based IDE for technical users to create projects to have a decision service, rules, rulesets, etc, test it and deploy it on the server. You can use it on a local server or on a server environment to the RES runtime. It provides a context map that tells you what to do next and click on the icon or link to take you there and helps you finish the task. It is intuitive and user friendly.
  • It provides a Business console that can be used by non technical users or business users to view, edit and deploy the rules on the RES. They can also create versions and save it in the decision center.
  • It provides a way for users to define vocabulary so that the rules can use a user-friendly text instead of names of entity defined in the business object model.
  • There is some confusion for users as they have many different tools and consoles to use and write/edit rules. There is the rule designer, an enterprise console, a business console, etc and there is overlapping functionality between the consoles.
  • There needs to be support added for creating models using the decision modeling notation (DMN). Businesses need to be able to represent the knowledge using a model and DMN is a standard way of representing the information.
  • Also to be able to import and export models that have been created using DMN. There are tools that companies use to create DMN models and represent the business domain and logic. This tool needs to be able to import those models and provide execution runtime for the same.
  • It has a positive impact as it provides a great way to define business rules, execute them, update them, manage different versions of rules.
  • Depending on the complexity of the applications, you can have thousands of rules.
  • It provides a nice way to test the rules, run simulations with different scenarios, different scales of requests and verify the decisions, performance, etc., and that helps a lot.
  • Since the decisions can be exposed through REST interface, it makes it very convenient to integrate with different applications, applications using different technologies.
  • The Business console makes it easy for business users to be able to define, modify rules and not have to depend on IT to do a lot of that work. This helps in bringing the time to change and use the rules to be very short as well as lets IT do more IT related tasks and provide better value to the organization.
A lot of organizations will have home grown pseudo rules engines which will be specific to the application, using open source framework like Drools helps to make that better and a tool like RHDM takes it to the next level.

What IBM Operational Decision Manager brings is an English like rule language, a nice IDE to define vocabulary, define rules, an intuitive interface to build a rule application from scratch and deploy it, provides tools to be able to test it locally, through API as well as perform simulations.
ODM is well suited wherever there is business logic involved, specifically if the logic does not have a state. If there are business rules that can be defined, the context known and returns the same decision every time the same inputs are provided (stateless), it would be a good fit.
If there are a lot of business rules, set of rules that need to be executed in an order, rules that may need to execute conditionally, etc., basically complex rules and rule flows or decision tables, this is a great product. It helps businesses to manage and make changes to those rules dynamically and quickly and easily to adapt to changes.
When it may not be suitable is if rules can't be verbalized or if there is state or decision changes based on time or location or need context to be built. In that case a complex event processing engine might be a better fit.