We recently introduced Corticon.js, a digital decision service solution to automate your business rules on any Serverless, web, mobile and IoT applications.
In this blog post, we will explore the tremendous business benefits you will get from decision services on these platforms. We will also see how in just a few clicks you can deploy a decision service to AWS Lambda Serverless environment or Azure functions.
Business Benefits
It is cumbersome, slow and expensive to manage complex business decisions (rules and policies) when they are directly coded into the applications, not just to code them but also to maintain them. That’s because business analysts who understand the rules and policies cannot author them and, as importantly, cannot update them when rules change—however trivial the change is.
For example, in a car rental application, changing the value of premium insurances for different age groups should be as simple as the business analyst editing a spreadsheet and adjusting some values. With Corticon.js, you will get tremendous productivity gains as the business rules can be authored and maintained by the business specialist and easily deployed for any serverless, web, mobile and IoT application.
Additionally, in the new world of mobile, web apps, IoT devices or cloud computing, the learning demands are very high. Corticon.js provides rules authoring in a completely independent form from the complexity of these new environments, freeing business specialist to focus on the problem at hand. It provides simple deployment options for various target platforms; The deployment will create a single bundle containing all the dependencies. This enables integrators to use the decision services very easily and with their current tooling.
But most importantly, Corticon.js provides you the flexibility of targeting a specific cloud or multi-clouds or hybrid clouds as well as on premises. This freedom lets you plan your transition to the cloud and allows integration with the most complex projects.
With Corticon.js, the business rules can be integrated in a serverless architecture as well as on mobile devices and browsers. This provides additional savings as you gain:
- An easy mechanism to share rules across platforms and have a single source of truth.
- Decentralize some or all rules to local clients to improve usability, scalability and performance or simply work offline when there are no or poor connections.
- Flexibility in deploying all or just some digital decision services in the clients versus the servers.
In a serverless environment you have the following additional benefits:
- You gain maximum return on investment (ROI) as you save on server infrastructure and maintenance costs.
- You avoid cloud vendors lock-in. Customers lists cloud vendor lock-in as one of the top issue they face (see https://www.oreilly.com/radar/oreilly-serverless-survey-2019-concerns-what-works-and-what-to-expect/).By authoring the rules in a codeless environment and only deciding on the target platform when you need to deploy, Corticon.js provides you with a layer of protection.
- You save money and gain agility because you don’t need to train your business rules authors in cloud technologies. Again, customer lists “educating current staff” as one of the top issue (See https://www.oreilly.com/radar/oreilly-serverless-survey-2019-concerns-what-works-and-what-to-expect/). With Corticon.js, the business specialist authors rules independently of the target deployment platform.
Cloud Native
Corticon.js provides options to deploy to Azure or AWS Lambda functions. Achieving scalability and high availability has never been easier and simpler to achieve and at an extremely low cost. Corticon.js decision services can be easily integrated with other services to participate in the cloud ecosystem.
For example, Corticon.js Lambda decision services are immediately available for use with AWS workflows (AWS step functions). It is equally easy to mesh Corticon.js decision services into composite applications with REST services, cloud databases, etc.
With an innovative pay-as-you-use model, Corticon.js allows you to start small and grow your business with confidence.
Easy to Deploy
From Corticon.js studio, in one click, you can get a deployment package for various JavaScript platforms.
As you can see in the following screenshot, we support direct deployments to:
- Serverless: Azure and AWS Lambda functions
- Browser: to integrate decision services running locally in browser Web Apps
- Node: to run in Node 10 or 12 environment be it a server or on Mobile environments like ReactNative, NativeScript, etc.
This will create a single JavaScript bundle file containing the rules, the rule engine and all required dependencies.
As an example, let’s look how in just two operations, you can get a decision service running as a serverless function in AWS Lambda:
- You generate the bundle as shown in the screen above.
- You create the AWS Lambda function and upload the generated zip file as shown in screen below.
And you will get, as shown in screen below, the complete and ready to execute Lambda function:
Now, without any additional coding of any sort, you have a decision service that is ready to process requests from any other AWS services. It is highly scalable, elastic and best of all, you only pay if it’s used. For example, you can have this decision service invoked from a REST service or when new records are created in a DynamoDB database.
You could, as well, integrate with AWS Step functions to create a composite application. In future blogs, we will discuss composite applications in general as well as how decision services can be integrated in serverless orchestration and workflow systems like AWS step functions for example. Stay tuned—the best way to do that is to follow me on Twitter @ThierryCiot. I'll post new blog posts announcements there.
Mobile Deployment
The node deployment option can be used to integrate decision services in mobile applications. We are providing two samples to illustrate how to do that:
- A ReactNative application, that you can find in Github at https://github.com/corticon/corticon.js-samples/tree/master/ReactNative/cars
And you can read an introduction at https://www.progress.com/blogs/quick-corticon-dot-js-applications-with-react-native - A NativeScript application available in Github at https://github.com/corticon/corticon.js-samples/tree/master/Nativescript
We have more samples available in that repository. We invite you to browse them starting at the top here https://github.com/corticon/corticon.js-samples
In conclusion, Corticon.js provides you with more options than before for running decision services in many more environments. And no matter what option you choose, you will get tremendous productivity gains as well as flexibility with the pay as go model.
Hopefully, you will find these options useful in your next decision services projects.
Thierry Ciot
Thierry Ciot is a Software Architect on the Corticon Business Rule Management System. Ciot has gained broad experience in the development of products ranging from development tools to production monitoring systems. He is now focusing on bringing Business Rule Management to Javascript and in particular to the serverless world where Corticon will shine. He holds two patents in the memory management space.