People make thousands of decisions and choices on a daily basis. Starting from the morning, when the alarm goes off, we decide in the second whether to get out of bed or press the snooze button. Then we decide what to have for breakfast, the clothes to put on, etc. If we choose to bake muffins for breakfast, we have to ensure that all conditions are properly met. This means whether we have all the needed ingredients – flour, eggs, milk, etc. Every decision that we make has a result. If we snooze the alarm, we might fall asleep and be late for work or school. If we get out of bed immediately, we will have enough time to prepare ourselves for all the daily activities and tasks. We make these decisions unconsciously.
But, what about the business? What types of decisions are there, and what helps us to decide? Business decisions most of the time are very complex, they can take a lot of time, effort, and resources. The thing is that in most cases, it is crucial to make these decisions as fast as possible.
Having in mind this, we started working on a solution that will simplify the way decisions are brought, which will significantly reduce the time needed to make that decision. The best way to do this is by automation. From this point of view, we can use the IDP – Intelligent Decision Platform. That is a business solution that manages the decision process using pre-defined logic and rules to determine outcomes. The underlying nature of the rule engine comes from the algorithm that drives it, some simple ‘rule engines’ simply chain procedural logic together in an order that is previously specified. IDS enables precise decision-making and is especially useful for complex dependencies, as well as in instances where regulatory or organizational rule frequently requires logic changes. Every company must apply the proper decision logic to each task in order to reach the desired outcome at the transaction level. We can use IDS in different areas such as health insurance companies, financial institutions, retail, and many more.
- Health insurance companies need to check if the patient meets eligibility requirements.
- Retail companies should determine whether customers who spend more than $100 at one time will receive a 10% discount or get free shipping.
During this pandemic time, a huge percentage of business became much more automated and virtual. We do not need to go to the bank to get some service from them. They can make decisions based on the data which they have for each customer itself, such as determining whether the customers are eligible for a bank loan, i.e. if they meet the conditions for that.
To achieve this, we created a business solution. Our solution provides the ability to write, test, and maintain business rules and automated decisions. Thus, we have built an application composed of two parts. The first part is an Admin Panel where you can create your own vocabulary, which you can use later to create decision types and decision trees. The second one is Rule Editor which includes web-based graphical tools that provide clear visibility into the rules, where you can create and manage rules. Decisions is a no-code, seamlessly integrated workflow.
The solution is built on cloud technologies and uses few services from Azure such as AAD (Azure Active Directory) to log in to the application. Access to the solution can have only the authorized members from AAD who are part of the customers’ company. A storage account is a place where we are keeping files and tables. In blob storage, nools files are collected and all the data is stored in the tables. Key Vault is very important because there we are creating and saving secret keys for each application created from the customers of this solution. That secret key is later used for executing rules as authorization. The interesting part here is nools technology. Nools is a rules engine based on the Rete Algorithm written entirely in JavaScript. Rete builds a tree from the rules, like a state machine. Facts enter the tree at the top-level nodes as parameters to the rules and work their way down the tree if they match the conditions until they reach the leaf nodes: rule consequences. By sending facts to certain nools file we can receive results. The result can be presented as a true/false value or in some pre-defined values. Rules are not hardcoded and members from AAD who have access can change them without some previous knowledge. All functionalities are made with function apps from Azure.
What are the advantages of having a Business Rule System?
- Delivering increased value to customers
- Increased efficiency and productivity
- Reduced cost
- Employee performance guidance
- Quick access to automated business rules
- Reduced monotonous task
- Consistency, which reduces the risks created by data or procedural errors
- Shortened development cycles for faster time to market
Now we will take a look at some real-life scenarios of the business.
How can you check whether you are suitable for a house mortgage or no? Applications for house loans can either get rejected or approved. There are lots of reasons behind the applications’ results such as credit history, annual income, number of dependents, etc. Every applicant has its own features such as gender, marital status, education, income, etc. and each of the features will be used to predict the outcome of the Loan Status. The business solution will execute the rules which are pre-defined earlier. It starts by asking questions via the independent variables and based on these answers, it keeps on subdividing until it gets to the dependent variable where the final answer is yes or no.
Another good example of the benefits of IDP is using it in the area of healthcare. In medicine, many times there are multiple factors that determine the therapy for the specific patient and disease. For example, the patient may be allergic to some medicine, and the therapy may vary from patient to patient. In this era of digitization, we could have a system that is expecting some data like symptoms, age, gender, previous diseases, previously consumed therapies, allergies, etc. This system will return the recommended therapy based on those input properties.
To sum up, business rules provide many advantages and they should be an important part of the business process automation strategies of a company. They can be implemented in many different businesses to solve different problems. By placing business rules front and center in an understandable format, business and IT can better align on moving the organization forward.