Serverless Decision Service – Scale Decision Services without worry of infrastructure and code
Serverless is definitely a trend that enables organisations to just manage what matters to them rather than the whole infrastructure to run their business. Serverless Decision Service seems to be an answer to business agility that drives the business performance as it will take the worry and efforts of how to run operational decisions away from organisations.
Decision Service and Decision Model
Let’s start by defining a Decision Service? A Decision Service is a back-end service that answers to requests based on a Decision Model in which it can be driven with business rules, analytics, and other forms of decision logic.
A Decision Model is a collection of decisions working as a whole to implement a decisioning scenario such as eligibility, tax calculation, and etc. In the model shown above, a decision requirement diagram (DRD) will identify how a loan application should be processed. Each individual rectangle represent an operational decision which each underneath have implement of decision logic. The decision logic can either be business rules, analytics or other decision requirements diagram (i.e. Sub-DRD, the blue node with dotted borders at the left hand side).
A Decision Service, is a service that accepts the request from users, clients, applications, process or other services. It will process the requests using a Decision Model (as shown above) and sends the results to the requester.
Generally, managing services fall into two categories:
- The infrastructure that services will be running, i.e. server, VM, netwrok, containers etc.
- The service management i.e. environment, versioning, deployment of new services, access control, KPI definition, measurement etc.
When the decisioning platform provides serverless capabilities, it means the activities related to managing infrastructure is done for you by host provider. If that’s a cloud service provider that means the services can simply be run by Azure Functions, AWS Lambda and other equivalent serverless platforms.
There are a couple of core requirements that must be considered when choosing a Decision Service platform:
- Versioning: Ability to model, deploy, run and manage multiple versions of a decision.
- Version Management: Each version of a service should be able to be exposed individually or as whole, to support below scenarios:
- Adaptive Control: Ability to route traffic of requests to different versions based on a weight to support Champion Challenger and A/B testing of effectiveness of individual versions.
- Scheduling: Automatically switching between different versions based on a time or other criteria.
- Business Decision KPI: Ability to define KPIs for services and measure their success based on those KPIs.
- Full decision cycle: Ability to support the full business scenario for example, from where an offer is recommended till whether or not the offer is accepted with a customer i.e. Long running business decision and transactions.
- State full service: Ability of services to support both stateless and stateful behaviours.
- End-to-End Decision: Ability to support the end to end decision automation to get the most from decisioning platform with the minimum amount of coding, integration and distraction from providing the business values.
- Ease of Scalability: Ability to scale automatically based on the load for execute without the need to pre-configure machines and servers and manual installation or coding.
Serverless Decision Service is a critical part of the successful implementation of a decision-centric approach based on measurable business values. Serverless Decision Service provides the ability for an organisation to become agile in the real sense, as business can immediately start identifying opportunities and modeling decisions. Then models can be put into testing and deployed and measured for business performance. Business can subsequently reiterate and build new operational decisions incrementally over time. Eventually they manage the entire ecosystem of those operational decisions that are critical to the performance and ultimate success of the business.
Read more on how to deploy a serverless agent by one click at our Resource Hub.