In this post, we present how to deal with the problem of noise, which is both a source of errors and biases in digital decision-making in organizations, through explicit decision rules, dashboards, and analytics. To illustrate our point, we use the example of the Sparkling Logic SMARTS decision management platform.
Noise in organizations’ decisioning and what to do about itIn an interview with McKinsey, Olivier Sibony, one of the renowned experts in decisioning, recommends algorithms, rules, or artificial intelligence to solve the problem of noise, a generator of errors and biases in decisioning in organizations. This recommendation resonates with our vision of automating decisioning — not all of the decisioning but the operational decisions that organizations make by thousands and sometimes millions per day. Think credit origination, claim processing, fraud detection, emergency routing, and so on.
In our vision, one of the best ways to reduce noise, and therefore errors and biases, is to make decisions explicit (like the rules of laws) so that those who define the decisions can test them out, one at a time or in groups, and visualize. The consequences of these choices on the organization before putting them into production. In particular, decisions should be kept separate from the rest of the system calling those decisions — the CRM, the loan origination system, the credit risk management platform, etc.
Noise reduction with explicit decision rules, dashboards, and analyticsOur SMARTS decisioning platform helps organizations make their operational decisions explicit, so that they can be tested and simulated before implementation, reducing biases that could be a failure to comply with industry regulations, a deviation from organizational policies, or a source of an applicant disqualification. The consequences of biases could be high in terms of image or fees, and even tremendous for certain sensitive industries such as financial, insurance, and healthcare services.
In SMARTS, business users (credit analysts, underwriters, call center professionals, fraud specialists, product marketers, etc.) express decisions in the form of business rules, decision trees, decision tables, decision flows, lookup models, and other intuitive representations that make decisioning self-explainable so that they can test decisions individually as well as collectively. So, at any time, they can check potential noise, errors, and biases before they translate into harmful consequences for the organization.
In addition to making development of decisioning explicit, SMARTS also comes with built-in dashboards to assess alternative decision strategies and measure the quality of performance at all stages of the lifecycle of decisions. By design, SMARTS focuses the decision automation effort on tangible objectives, measured by Key Performance Indicators (KPIs). Users define multiple KPIs through graphical interactions and simple, yet powerful formulas. As they capture decision logic, simply dragging and dropping any attribute into the dashboard pane automatically creates reports. Moreover, they can customize these distributions, aggregations, and/or rule metrics, as well as the charts to view the results in the dashboard.
During the testing phase, the users have access to SMARTS’ built-in map-reduce-based simulation capability to measure these metrics against large samples of data and transactions. Doing so, they can estimate the KPIs for impact analysis before the actual deployment. And all of this testing work does not require IT to code these metrics, because they are transparently translated by SMARTS.
And once the decisioning application is deployed, the users have access to SMARTS’ real-time decision analytics, a kind of cockpit for them to monitor the application, make the necessary changes, without stopping the decisioning application. SMARTS platform automatically displays KPI metrics over time or in a time window. The platform also generates notifications and alerts when some of the thresholds users have defined are crossed or certain patterns are detected. Notifications and alerts can be pushed by email, SMS, or generate a ticket in the organization’s incident management system.
Rather than being a blackbox, SMARTS makes decisioning explicit so that the users who developed it can easily explain it to those who will operate it. Moreover, the latter can adjust the decision making so that biases can be quickly detected and corrected, without putting the organization at risk for violating legal constraints, eligibility criteria, or consumer rights.
So, if you are planning to build a noise-free, error-free, and bias-free decisioning application, SMARTS can help. The Sparkling Logic team enjoys nothing more than helping customers implement their most demanding business requirements and technical specifications. Our obsession is not only to have them satisfied, but also proud of the system they build. We helped companies to build flaw-proof, data-tested, and scalable applications for loan origination, claims processing, credit risk assessment, or even fraud detection and response. So dare to give us a challenge, and we will solve it for you in days, not weeks, or months. Just email us or request a free trial.
AboutSparkling Logic is a Silicon Valley company dedicated to helping businesses automate and improve the quality of their operational decisions with a powerful digital decisioning platform, accessible to business analysts and ‘citizen developers’. Sparkling Logic’s customers include global leaders in financial services, insurance, healthcare, retail, utility, and IoT.
Sparkling Logic SMARTSTM (SMARTS for short) is a cloud-based, low-code, AI-powered business decision management platform that unifies authoring, testing, deployment and maintenance of operational decisions. SMARTS combines the highly scalable Rete-NT inference engine, with predictive analytics and machine learning models, and low-code functionality to create intelligent decisioning systems.
In this blog post we describe SMARTS’ key capabilities: Decision Management Platform, Low-Code / No-Code Apps, Machine Learning Ops, and Real-time Decision Analytics.
SMARTS is a decision management platform that spans the entire business decision lifecycle, from modeling to deployment. Decision Management Platform, as the core functionality of SMARTS, includes authoring, testing, simulating and deploying decisions as well as the management and governance of those decisions. Key authoring capabilities include RedPenTM, which allows business analysts to write rules via point and click without learning a special syntax, and Fluid Metaphors, which allows business analysts to choose the most appropriate decision representation based on the task at hand. The same decisions can be viewed and modified in the form of decision rules, tables, trees, or graphs.
SMARTS is a data-centric product in that business analysts can import data and immediately start writing and testing rules against that data, making the building of rating, pricing, and any calculation engine an easy task. SMARTS’ powerful processing of spreasheets allows business analysts to retrieve rates from a very set of options; fine-tune the rates to cope with exceptions and overrides; and manage these rates over different time horizons, per geography, any user-defined dimensions.
SMARTS lifecycle management capabilities include release management (read-only snapshots of projects) to track promotions and deployments. Business analysts can view the history of their decision logic and revert to earlier versions or releases ant anytime. Based on their permissions, they can publish their changes into a test environment or into production.
SMARTS decisions are typically deployed as decision services either on the cloud on on-premise. SMARTS decision services provide support for secure service invocations in an authenticated context, support for high-availability and scalability.
All of SMARTS other capabilities, Low-Code/No-Code, Model Ops, and Real-time Analytics are integrated into to the Decision Management Platform.
Business analysts can develop decisions quickly and intuitively with SMARTS’ Low-Code capability. SMARTS Low-Code features include graphical representations of decision logic such as decision flows, tables, trees and graphs. Rules are written using the SparkL (pronounced “sparkle”) user-friendly language or with the point-and-click Red Pen feature.
Thanks to this low-code capability, business analysts can develop Business Apps which provide a no-code environment for untrained business users and ‘citizen developers’ to modify, test and deploy changes.
Many decisions deal with uncertainty- such as credit card approvals and loan and mortgage approvals. These decision benefit from predictive models that help organizations make the best possible decision in the face of uncertainties. SMARTS operationalizes predictive models in three ways.
- Business analysts can import machine learning models developed by a data science team using PMML (the standard model interchange format). Once imported these models can be integrated into any decision and deployed. The models can be tested in the context of the decision to ensure they produce expected results and then can be deployed.
- SMARTS’ patented BluePen machine learning technology can be used by business analysts to generate rules from data. Models created by BluePenTM are explicit and easy to understand.
- In cases where models exist but are not available as PMML, but are available as spreadsheets, SMARTS can import them as a dashboard, regression, or tree model.
SMARTS Real-Time Decision Analytics lets business analysts define metrics that measure the outcome of SMARTS decisions to ensure they are supporting business strategy and objectives. The SMARTS dashboard displays graphical representations of the metrics allowing the business analysts to analyze the impact of changes to decision logic and run simulations against large volumes of historical data. SMARTS decisions can also be monitored post-deployment and alerts can be defined which notify stakeholders when thresholds are exceed.
Using SMARTS Real-Time Decision Analytics capabilities, Business analysts can measure the end-to-end performance of the decisions that invoke these models – not only the quality of the model but the quality of the whole process.
We hope describing SMARTS in-terms of its powerful capabilities has given you a better understanding of the platform. Insurance companies, banks, and healthcare companies rely on decisions powered by SMARTS every day for loan origination, claims processing, credit risk assessment, as well as fraud detection and response.
Sparkling Logic is a Silicon Valley company dedicated to helping businesses automate and improve the quality of their operational decisions with a powerful digital decisioning platform, accessible to business analysts and ‘citizen developers’. Sparkling Logic’s customers include global leaders in financial services, insurance, healthcare, retail, utility, and IoT.
Sparkling Logic SMARTS is a cloud-based, low-code, AI-powered business decision management platform that unifies authoring, testing, deployment and maintenance of operational decisions. SMARTS combines the highly scalable Rete-NT inference engine, with predictive analytics and machine learning models, and low-code functionality to create intelligent decisioning systems.
Colleen McClintock, is VP Products at Sparkling Logic. You can reach her at firstname.lastname@example.org.
Today, predictive analytics is common in any data-driven business. Typically, data scientists create predictive models first, and IT staff deploy these models in a production environment. At Sparkling Logic, not only have we streamlined this process, but we’ve extended it with prescriptive decisions. Sparkling Logic SMARTS AI & ModelOps is the third built-in capability of SMARTS to cover the full spectrum of operational predictive models, from importing models and creating new ones to initiating learning tasks. But let’s start with a brief overview of the stages data has gone through.
Data: a resource, an asset, a business
Until recently, data was a resource to conduct business and as such, it was typically managed by the CIO’s organization. The organization’s mission was to build the overall data architecture, to choose a database vendor, and to design all the applications necessary to process the data from the databases to the business and functional people screens. These applications were mostly reporting, letting the business get a sense for how the business has been doing based on the collected data.
Then came the first transformation, where data went from an asset used to understand how the business has been doing to being an asset leveraged to predict how the business could potentially do in the future. Reporting was enhanced by predictive analytics. The scope of the analytics was not only what had happened, but also what was happening and what could happen. In general, these two past-focused and future-focused activities cover most of what data science is in business, with some really important use cases on marketing, sales, and customer relationship management.
However, a new transformation is underway, first in the banking, insurance, and health sectors, but will certainly penetrate other sectors. It consists of transforming analytics into automated decisions, translating predictions into prescriptions. The goal of this transformation is to create a virtuous cycle where not only data is analyzed, but this analysis is transformed into decisions and actions that generate new data, and so on. Reporting and predictive analytics are now completed by prescriptive analytics.
Anticipating this trend, the founders of Sparkling Logic designed the SMARTS decision management platform to implement this cycle of data, insights, and decisions. Sparkling Logic SMARTS comes with a built-in AI & ModelOps environment that covers the full spectrum of operationalizing predictive models, from importing models built by data scientists, to creating new ones without prior knowledge of machine learning, to launching and managing learning jobs.
Sparkling Logic SMARTS AI & ModelOps
Predictive model importBusiness analysts can import AI, machine learning, and deep learning models developed by data scientists, and leverage them in the decision logic. The models could be developed in Python, SPSS, SAS, or Project R among others. SMARTS integrates them as long as they are compliant to PMML, a standard for sharing and deploying predictive models, or are accessible as services.
SMARTS supports importing as PMML neural networks, multinomial, general, and linear/log regression, trees, support vector machines, naïve bayes, clustering, ruleset, scorecard, K-Nearest Neighbors (KNN), random forest, and other machine learning models.
In cases where models exist but are only available as specification, business analysts can easily import these models and seamlessly transform them into business rules for full transparency and easy inspection.
There may be situations where it is necessary to call an external service that is available elsewhere. This external service can be a predictive model or a data source. SMARTS provides support for remote functions, which makes it possible to invoke an external service through JSON-RPC or REST services.
BluePen predictive technologyWhen time is of the essence, when models are short-lived or when expertise needs to be confronted with knowledge captured in the data, business experts can use the BluePen learning technology to quickly create a model, potentially leveraging existing models.
BluePen lets business analysts and business experts explore and analyze data using domain knowledge and expertise to identify predictors, or, alternatively, selects the predictors for them. Then, using the selected predictors, BluePen helps them to generate a model in the form of readable decision rules, tables, or trees, and integrate them into their decision logic.
Using BluePen, users can build meaningful predictive models in hours or days, rather than the months it often takes. Users can also engineer or modify the models. As a result, without heavy investment in data analytics efforts, these models can be tested, leveraged in simulations, and quickly deployed in the context of an operational business decision.
Regardless of the business analyst’s choice, he or she can operationalize a wide range of models within SMARTS. Being able to integrate models into decision logic is a central ability to test and measure the performance of the end-to-end decisioning.
Moreover, SMARTS allows the analyst to translate the insights from many different models into a decision. Typically, data-centric organizations will have many different models which each can contribute insights into what the decision should be. The orchestration of how these insights are combined is expressed in decision logic, turning multiple discrete predictions into actual prescriptive decisions.
The benefits of combining machine learning and automated decisioning as SMARTS does are nothing less than transforming businesses into always learning organizations where data helps identify opportunities, machine learning turns that data into insights and automated decisioning turns this information into action, closing the virtuous cycle that data promises.
- Data has moved from being a resource to assess how the business has been doing, to being an asset used to predict the future of the business, and finally to an asset used to improve automated decisions
- Sparkling Logic SMARTS comes with a built-in AI & ModelOps environment that covers the full spectrum of operationalizing predictive models, from importing models, to creating new ones, to launching and managing learning jobs
- With its AI & ModelOps capability, SMARTS helps in transforming businesses into learning organizations, closing the virtuous cycle that data promises. Data feeds analytics leading to improved decisions that generates additional data in addition to profits
Sparkling Logic is a decision management company founded in the San Francisco Bay Area to accelerate how companies leverage data, machine learning, and business rules to automate and improve the quality of enterprise-level decisions.
Carole-Ann is Co-Founder, Chief Product Officer at Sparkling Logic. You can reach her at email@example.com.
In this post, I briefly introduce SMARTS Real-Time Decision Analytics capability to manage the quality and performance of operational decisions from development, to testing, to production.
Decision performanceH. James Harrington, one of the pioneers of decision performance measurement, once said, “Measurement is the first step that leads to control and eventually to improvement. If you can’t measure something, you can’t understand it. If you can’t understand it, you can’t control it. If you can’t control it, you can’t improve it.” This statement is also true for decision performance.
Measuring decision performance is essential in any industry where a small improvement in a single decision can make a big difference, especially in risk-driven industries such as banking, insurance, and healthcare. Improving decisions in these sectors means continuously adjusting policies, rules, prices, etc. to keep them consistent with business strategy and compliant with regulations.
Decision performance management in SMARTSSMARTS helps organizations make their operational decisions explicit, so that they can be tested and simulated before implementation — thereby reducing errors and bias. To this end, we added a real-time decision analytics capability to the core decision management platform.
Currently used in financial and insurance services, it helps both business analysts and business users to define dashboards, assess alternative decision strategies, and measure the quality of performance at all stages of the lifecycle of decision management — all with the same interface without switching from one tool to another.
Development. From the start, SMARTS focuses the decision automation effort on tangible business objectives, measured by Key Performance Indicators (KPIs). Analysts and users can define multiple KPIs through graphical interactions and simple, yet powerful formulas. As they capture their decision logic, simply dragging and dropping any attribute into the dashboard pane automatically creates reports. They can customize these distributions, aggregations, and/or rule metrics, as well as the charts to view the results in the dashboard.
Testing and validation. During the testing phase, analysts and users have access to SMARTS’ built-in map-reduce-based simulation environment to measure these metrics against large samples of data. Doing so, they can estimate the KPIs for impact analysis before the actual deployment. And all of this testing work does not require IT to code these metrics, because they are transparently translated by SMARTS.
Execution. By defining a time window for these metrics, business analysts can deploy them seamlessly against production traffic. Real-time decision analytics charts display the measurements and trigger notifications and alerts when certain thresholds are crossed or certain patterns are detected. Notifications can be pushed by email, or generate a ticket in a corporate management system. Also, real-time monitoring allows organizations to react quickly when conditions suddenly change. For example, under-performing strategies can be eliminated and replaced when running a Champion/Challenger experiment.
Uses casesInsurance underwriting. Using insurance underwriting as an example, a risk analyst can look at the applicants that were approved by the rules in production and compare them to the applicants that would be approved using the rules under development. Analyzing the differences between the two sets of results drive the discovery of which rules are missing or need to be adjusted to produce better results or mitigate certain risks.
For example, he or she might discover that 25% of the differences in approval status are due to differences in risk level. This insight leads the risk analyst to focus on adding and/or modifying your risk related rules. Repeating this analyze-improve cycle reduces the time to consider and test different rules until he or she gets the best tradeoff between results and risks.
Fraud detection. An other example from a real customer case is flash fraud where decisions had to be changed and new ones rolled out in real time. In this case, the real-time decision analysis capability of SMARTS was essential so that the customer could spot deviation trends from normal situation directly in the dashboard and overcome the flood in the same user interface, all in real time.
Without this built-in capability, the time lag between the identification of fraud and the implementation of corrective actions would have been long, resulting in significant financial losses. In fact, with SMARTS Real-Time Decision Analytics, the fraud management for this client has gone from 15 days to 1 day.
Marketing campaign. The two above examples are taken from financial services but SMARTS real-time decision analytics helps in any context where decision performance could be immediately affected by a change in data, models, or business rules, such as in loan origination, product pricing, or marketing promotion.
In the latter case, SMARTS can help optimize promotion in real-time. Let’s say you construct a series of rules for a marketing couponing using SMARTS Champion/Challenger capability. Based on rules you determine, certain customers will get a discount. Some get 15% off (the current offering — the champion), while others get 20% (a test offering — the challenger). And you wonder if the extra 5% discount leads to more coupons used and more sales generated. With SMARTS real-time decision analytics environment, you find out the answer as the day progresses. By testing alternatives, you converge to the best coupon strategy with real data and on the fly.
ConclusionAs part of the decision lifecycle, business analysts obviously start by authoring their decision logic. As they progress, testing rapidly comes to the forefront. To this end, SMARTS integrates predictive data analytics with real-time decision analytics, enabling business analysts and business users to define dashboards and seamlessly associate metrics with the execution environment — using the same tool, the same interface, and just point and click.
- SMARTS comes with built-in decision analytics — no additional or third-party tool is required
- You can define metrics on decision results so you can measure and understand how each decision contributes to your organization’s business objectives
- Decision metrics enable you to assess alternative decision strategies to see which should be kept and which rejected
- SMARTS add-on for real-time decision analytics lets you monitor the decisions being made and make adjustments on the fly
- SMARTS’ real-time decision analytics helps in any context where decision performance could be immediately affected by a change in data, models, or business rules
AboutSparkling Logic is a decision management company founded in the San Francisco Bay Area to accelerate how companies leverage data, machine learning, and business rules to automate and improve the quality of enterprise-level decisions.
Sparkling Logic SMARTS is an end-to-end, low-code no-code decision management platform that spans the entire business decision lifecycle, from data import to decision modeling to application production.
Carlos Serrano is Co-Founder, Chief Technology Officer at Sparkling Logic. You can reach him at firstname.lastname@example.org.
Low-code no-code is not a new concept to Sparkling Logic. From the beginning, the founders wanted to deliver a powerful yet simple product, so that a business analyst could start with data and build decision logic with built-in predictive data analytics and execution decision analytics.
Version after version, they have achieved this vision through SMARTS, an end-to-end decision management platform that features low-code no-code for business analysts and business users to develop and manage decision logic through point-and-click operations.
For business analysts, SMARTS offers a low-code development environment in which users can express decision logic through a point-and-click user interface to connect data, experiment with decisions, monitor execution without switching between different tools to get the job done. Depending on the nature of the decision logic at hand and user preferences, business analysts can choose on the fly the most appropriate representation to capture or update their decision logic. The resulting decision logic is seamlessly deployed as a decision service without IT intervention.
To push the simplification even further, Sparkling Logic founders turned to their customers for inspiration on their needs and developed three complementary technologies:
- RedPen, a patented point-and-click technology that accelerates rule authoring without a need to know rule syntax or involve IT to author the rules
- BluePen, another patented point-and-click technology to quickly create or leverage a data model and put it into production without involving data scientists or IT
- A dynamic questionnaire to produce intelligent front-ends that reduces the number of unnecessary or redundant questions
In addition to low-code development capability for business analysts, SMARTS also elevates the decision logic to a simple web form-based interface for untrained business users. They can configure their decision strategies, test the updated decision logic, and promote the vetted changes to the next staging environment — without learning rules syntax.
These business apps offer a business abstraction for most tasks available in SMARTS related to configuration, testing and simulation, invocation and deployment management, as well as administration.
For example, credit risk specialists can configure loans, credit cards, and other banking products, and pricing specialists can control pricing tables, through a custom business app specific to their industry. The no-code business app enables business users to cope with environment changes whether they are related to internal policies, competition pressure, or industry regulation.
Furthermore, SMARTS tasks can also be automated through orchestration scripts. Business users can trigger these scripts through the click of a button, or schedule them to be performed automatically and seamlessly.
Sparkling Logic is a decision management company founded in the Bay Area to accelerate how companies leverage internal and external data and models to automate and improve the quality of enterprise-level decisions.
Sparkling Logic SMARTS is an end-to-end, low-code no-code decision management platform that spans the entire business decision lifecycle, from data import to decision modeling to application production.
In our last two blog posts in this series we discussed decision engine performance and how performance is impacted by deployment architecture choices. In addition to those considerations, you should also focus on business decision performance, the topic of this post.
Central to SMARTS’s approach to decision design is the idea that you need to have a strong focus on the expected business performance of your decision. The business performance of the decision is measured by multiple KPIs defined by the different business stake holders and characterize how the decision is contributing to the business.
Decision Analytics for Simulations
SMARTS provides you with fully integrated decision analytics, including aggregates, reports and dashboards that you can configure to track those KPIs. As you are implementing and optimizing the decision logic, you can run simulations to assess the impact your change have on the decision, and take appropriate action.This allows you to ensure that the business performance of your decision is actually what you want before you deploy it in production.
Real-time Decision Metrics
SMARTS also provides you streaming decision analytics, allowing you to monitor the same KPIs on the live decisions as they are deployed, and to specify alerts that trigger if those KPIs deviate from limits you can set.This gives you the peace of mind that you are always kept up to date on how well the deployed decision is behaving and that you can take early action to update it should the situation need it.
There are also cases where it is not possible to necessarily know in advance the impact of a change. You may be exploring with new decision options you had never attempted before. SMARTS allows you to deploy your decision in an experimental mode – where part of your invocations will be routed to the new “experimental” version, and the rest to the proven one, and where you will be monitoring the relative performance to identify whether your “experimental” version is doing better than the proven one. In many financial services areas, this is called Champion-Challenger, in marketing or design, this is called A/B testing. With this approach, you can gradually and safely introduce decision optimizations that lead to better and better business performance.
In summary, when considering performance of decision management systems it is critical to consider the topic from a business perspective as well as a technical perspective. We hope this series has helped clarify performance related issues pertaining to decision management.
Decision Management and Business Rules Management platforms cater to the needs of business oriented roles (business analysts, business owners, etc.) involved in operational decisions. But they also need to take into account the constraints of the enterprise and its technology environment.
Among those constraints are the ones that involve integrations. This is the first series of posts exploring the requirements, approaches and trade-offs for decision management platform integrations with the enterprise eco-system.
Operational decisions do not exist in a vacuum. They
- are embedded in other systems, applications or business processes
- provide operational decisions that other systems carry out
- are core contributors to the business performance of automated systems
- are critical contributors to the business operations and must be under tight control
- must remain compliant, traced and observed
- yet must remain flexible for business-oriented roles to make frequent changes to them
Each and every one of these aspects involves more than just the decision management platform. Furthermore, more than one enterprise system provides across-application support for these. Enterprises want to use such systems because they reduce the cost and risk involved in managing applications.
For example, authentication across multiple applications is generally centralized to allow for a single point of control on who has access to them. Otherwise, each application implements its own and managing costs and risk skyrocket.
In particular, decision management platforms end up being a core part of the enterprise applications, frequently as core as databases. It may be easy and acceptable to use disconnected tools to generate reports, or write documents; but it rarely is acceptable to not manage part of core systems. In effect, there is little point in offering capabilities which cannot cleanly fit into the management processes for the enterprise; the gain made by giving business roles control of the logic is negated by the cost and risk in operating the platform.
In our customer base, most do pay attention to integrations. Which integrations are involved, and with which intensity, depends on the customer. However, it is important to realize that the success of a decision management platform for an enterprise also hinges on the quality of its integrations to its systems.
Which integrations matter?
We can group the usual integrations for decision management platforms in the following groups:
- Authentication and Access Control
- Implementation Support
- Management Audit
- Life-cycle management
- Execution Audit
- Business Performance Tracking
Authentication and access control integrations are about managing which user has access to the platform, and, beyond that, to which functionality within the platform.
Implementation support integrations are those that facilitate the identification, implementation, testing and optimization of decisions within the platform: import/export, access to data, etc.
Management audit integrations enable enterprise systems to track who has carried out which operations and when within the platform.
Life-cycle management integrations are those that support the automated or manual transitioning of decisions through their cycles: from inception to implementation and up to production and retirement.
Similarly, execution integrations enable the deployment of executable decisions within the context of the enterprise operational systems: business process platforms, micro-services platforms, event systems, etc. Frequently, these integrations also involve logging or audit systems.
Finally, performance tracking integrations are about using the enterprise reporting environment to get a business-level view of how well the decisions perform.
Typically, different types of integrations interest different roles within the enterprise. The security and risk management groups will worry about authentication, access control and audit. The IT organization will pay attention to life-cycle management and execution. Business groups will mostly focus on implementation support and performance tracking.
The upcoming series of blog posts will focus on these various integrations: their requirements, their scope, their challenges and how to approach them.
In the meantime, you can read the relevant posts in the “Best Practices” series:
Our Best Practices Series has focused, so far, on authoring and lifecycle management aspects of managing decisions. This post will start introducing what you should consider when promoting your decision applications to Production.
Make sure you always use release management for your decision
Carole-Ann has already covered why you should always package your decisions in releases when you have reached important milestones in the lifecycle of your decisions: see Best practices: Use Release Management. This is so important that I will repeat her key points here stressing its importance in the production phase.
You want to be 100% certain that you have in production is exactly what you tested, and that it will not change by side effect. This happens more frequently than you would think: a user may decide to test variations of the decision logic in what she or he thinks is a sandbox and that may in fact be the production environment.
You also want to have complete traceability, and at any point in time, total visibility on what the state of the decision logic was for any decision rendered you may need to review.
Everything they contributes to the decision logic should be part of the release: flows, rules, predictive and lookup models, etc. If your decision logic also includes assets the decision management system does not manage, you open the door to potential execution and traceability issues. We, of course, recommend managing your decision logic fully within the decision management system.
Only use Decision Management Systems that allow you to manage releases, and always deploy decisions that are part of a release.
Make sure the decision application fits your technical environments and requirements
Now that you have the decision you will use in production in the form of a release, you still have a number of considerations to take into account.
It must fit into the overall architecture
Typically, you will encounter one or more of the following situations
• The decision application is provided as a SaaS and invoked through REST or similar protocols (loose coupling)
• The environment is message or event driven (loose coupling)
• It relies mostly on micro-services, using an orchestration tool and a loose coupling invocation mechanism.
• It requires tight coupling between one (or more) application components at the programmatic API level
Your decision application will need to simply fit within these architectural choices with a very low architectural impact.
One additional thing to be careful about is that organizations and applications evolve. We’ve seen many customers deploy the same decision application in multiple such environments, typically interactive and batch. You need to be able to do multi-environment deployments a low cost.
It must account for availability and scalability requirements
In a loosely coupled environments, your decision application service or micro-service with need to cope with your high availability and scalability requirements. In general, this means configuring micro-services in such a way that:
• There is no single point of failure
○ replicate your repositories
○ have more than one instance available for invocation transparently
• Scaling up and down is easy
Ideally, the Decision Management System product you use has support for this directly out of the box.
It must account for security requirements
Your decision application may need to be protected. This includes
• protection against unwanted access of the decision application in production (MIM attacks, etc.)
• protection against unwanted access to the artifacts used by the decision application in production (typically repository access)
Make sure the decision applications are deployed the most appropriate way given the technical environment and the corresponding requirements. Ideally you have strong support from your Decision Management System for achieving this.
Leverage the invocation mechanisms that make sense for your use case
You will need to figure out how your code invokes the decision application once in production. Typically, you may invoke the decision application
• separately for each “transaction” (interactive)
• for a group of “transactions” (batch)
• for stream of “transactions” (streaming or batch)
Choosing the right invocation mechanism for your case can have a significant impact on the performance of your decision application.
Manage the update of your decision application in production according to the requirements of the business
One key value of Decision Management Systems is that with them business analysts can implement, test and optimize the decision logic directly.
Ideally, this expands into the deployment of decision updates to the production. As the business analysts have updated, tested and optimized the decision, they will frequently request that it be deployed “immediately”.
Traditional products require going through IT phases, code conversion, code generation and uploads. With them, you deal with delays and the potential for new problems. Modern systems such as SMARTS do provide support for this kind of deployment.
There are some key aspects to take into account when dealing with old and new versions of the decision logic:
• updating should be a one-click atomic operation, and a one-API call atomic operation
• updating should be safe (if the newer one fails to work satisfactorily, it should not enter production or should be easily rolled back)
• the system should allow you to run old and new versions of the decision concurrently
In all cases, this remains an area where you want to strike the right balance between the business requirements and the IT constraints.
For example, it is possible that all changes are batched in one deployment a day because they are coordinated with other IT-centric system changes.
Make sure that you can update the decisions in Production in the most diligent way to satisfy the business requirement.
Track the business performance of your decision in production
Once you have your process to put decisions in the form of releases in production following the guidelines above, you still need to monitor its business performance.
Products like SMARTS let you characterize, analyze and optimize the business performance of the decision before it is put in production. It will important that you continue with the same analysis once the decision is in production. Conditions may change. Your decisions, while effective when they were first deployed, may no longer be as effective after the changes. By tracking the business performances of the decisions in production you can identify this situation early, analyze the reasons and adjust the decision.
In a later installment on this series, we’ll tackle how to approach the issue of decision execution performance as opposed to decision business performance.