Unleashing the Power of Custom Data Providers in IBM ODM Decision Runner

June 30, 2023
Unleashing the Power of Custom Data Providers in IBM ODM Decision Runner

Author – Pallavi Palande, Associate Software Technical Lead, Prolifics

9 min. read


IBM Operational Decision Manager (ODM) is a comprehensive platform that enables businesses to automate and optimize their decision-making processes. ODM leverages the power of business rules and advanced analytics to drive intelligent decision-making across various applications and systems. One of the key components of IBM ODM is the Decision Runner, which allows users to test and execute decision services. In this blog post, we will explore the concept of custom data providers in IBM ODM Decision Runner and understand how they can enhance decision-making capabilities.

Understanding IBM ODM Decision Runner

Decision Runner is a part of IBM ODM that allows users to test and execute decision services in various scenarios. It provides a user-friendly interface for creating test cases, running tests, and analysing the results. Decision Runner can simulate real-time decision scenarios by providing inputs and evaluating the outcomes based on predefined rules and decision models.

Custom Data Providers in Decision Runner

Custom Data Providers in IBM ODM Decision Runner offer the flexibility to incorporate external data sources during testing and execution. While Decision Runner provides built-in data providers for basic data types, such as strings and numbers, custom data providers allow users to integrate complex and diverse data structures from external systems.

Benefits of Custom Data Providers

1. Integration with External Systems: Custom data providers enable seamless integration with external systems, such as databases, web services, or APIs, to fetch real-time data for decision-making. This integration ensures that decision services operate with up-to-date information, leading to more accurate and reliable results.

2. Realistic Testing Scenarios: By utilizing custom data providers, users can mimic real-world scenarios by populating decision inputs with data from live systems. This capability allows for more comprehensive testing, considering a wide range of potential inputs and their corresponding outcomes.

3. Dynamic Data Generation: Custom data providers can generate dynamic data during test execution, which is particularly useful when testing decision services that require constantly changing or time-sensitive inputs. This feature helps in validating the responsiveness and adaptability of the decision services.

4. Increased flexibility: Custom data providers can be used to provide data from a variety of sources, which gives you more flexibility in how you build your applications.

5. Improved performance: Custom data providers can be used to optimize the way that data is accessed, which can improve the performance of your applications.

Implementing Custom Data Providers

The implementation of custom data providers involves the following steps:

1. Define the Data Structure: Determine the structure and format of the external data source you want to integrate with Decision Runner. This could be a database schema, a web service response format, or any other data structure that fits your requirements.

2. Implement the Custom Data Provider: Create a custom data provider class (Java readers) that implements the necessary interfaces provided by IBM ODM. This class should define the logic for fetching data from the external system and mapping it to the decision inputs in Decision Runner.

3. Register the Data Provider: Once the custom data provider class is implemented, it needs to be registered with IBM ODM Decision Runner. This registration step ensures that the data provider is available for selection when configuring test cases.

4. Configure Test Cases: In Decision Runner, select the custom data provider for the desired input fields in the test case configuration. This allows Decision Runner to retrieve the data from the external system using the custom data provider during test execution.


Implementation Design


Custom data providers in IBM ODM Decision Runner enable businesses to unlock the full potential of their decision-making processes by integrating with external systems and incorporating diverse and complex data structures. The ability to leverage real-time data during testing and execution improves the accuracy and reliability of decision services. By following the steps outlined above, users can seamlessly integrate custom data providers into Decision Runner and achieve enhanced decision-making capabilities.

Harness the power of IBM ODM Decision Runner’s custom data providers and revolutionize your decision-making processes to drive better business outcomes.

About the Author

PallaviPallavi brings over 7.7 years of IT industry experience, specializing in BRMS (Business Rules Management System) development across domains like Finance, Insurance, Healthcare, and Telecom. As an IBM ODM (Operational Decision Manager) lead, she holds expertise in BPM (Business Process Management) and has a deep understanding of ODM installation, Java Execution object models, and developing rule components such as Action Rules, Decision Tables, and Decision Trees. With proficiency in DVS testing, rule monitoring, and tracing, as well as experience in designing decision services and migrating projects, Pavalli brings valuable insights and knowledge in the field of IT and BRMS.


1. https://github.com/VilchinskiOleg/transport-company-app

2. https://github.com/Sugoii-Team/fptublog-backend