What is Decisions?
- Updated On 24 Nov 2020
- 3 Minutes To Read
Decisions is a business process automation platform with a comprehensive Workflow, Integration, Reporting, and Rule engine; it is designed to streamline and automate a wide variety of business processes and applications. Within the software, the Decisions Studio provides tools to build robust applications while the end-user Portal delivers the environment to run them.
Among the many key features within the Studio is the suite of visual Designers available to create Flows, Rules, Forms, Dashboards, Reports, and more. In addition, the Data Structure Designer is used to create customized objects with specific properties that communicate with a database for maintaining user and/or application data. This functionality empowers business users (non-technical and technical) with the convenience of creating and maintaining business logic - all without code.
Though business logic varies based on organizational needs, here are a few use case examples:
- Approval Tracking: Purchase Requests, Insurance Claim Handling, Travel Requests
- Evaluating Data Against Rules: Loan Applications, Risk Management, Financial Aid Inquiries, Inventory
- Document Processing: Clinical Trials, Employee On-Boarding, Compliance Audits
Integration options, another key feature found within the Studio, provide connectivity with existing infrastructure and user experience through RESTful API services.
Decisions is 100% web-delivered, fully operational in-browser without any reliance on plugins or custom technology; the software operates on modern browser technologies that are capable of HTML5 and CSS3. Though no browser-specific considerations exist for the end-user Portal, the Decisions Studio is designed to support IE and Chrome due to their prevalence in the business community. Visit the Installation Requirements article to learn more.
Decisions requires the following technical infrastructure to function:
- .NET Framework 4.6 or higher
- Windows Server 2012 or higher
- IIS 7 or higher
- MS SQL Server 2008 R2 or higher
The diagram below illustrates how the end-user or API client interacts with the Decisions web application, where run-time changes from the engine itself are reflected, and where data is distributed.
Decisions Automation Platform Architecture
Decisions Automation Platform architecture is based on three components:
- Front-end Client: Decisions Portal, API Client
- Back-end Application Server: Decisions Service Host Manager
- Database Source: Database Server or Servers in MS SQL Server Cluster
The Service Host Manager is a Windows Service that is written in C Sharp (C#) language and contains foundation services that define the Decisions platform. Examples of a foundation service include the Flow Edit Service, which defines the Flow Designer functionality; or the Flow Execution Service, which is responsible for Flow Execution processes.
The back-end tier is Web Application IIS Hosted (requires IIS version 7 or newer). This Web Application provides communication between Service Host Manager and the User Client. It is possible to create an environment with multiple Service Host Managers and Web Applications, but in order for this to be a single unified environment, these Application Servers have to communicate with the same Database Server.
A Database is the third component of the Decisions Automation Platform. A Database can be managed by multiple Servers in MS SQL Server Cluster. A single environment of the Decisions Platform can have only one Database because the platform has a single persistent source of data.
Because it is possible to have multiple Application Servers and only one logical Database, there are chances that communication with the database will be overloaded and dramatically slow down the process. In order to avoid this, the Decisions Platform stores as much data in the Application Server as it can, which is implemented by Caching.
In an environment with multiple Application Servers, all Application Servers talk to each other. If some data is changed in one Application Server, then it informs the other Application Servers to clear this data from the cache and get a new version of it from the Database. The data cannot change in the Application Server if it is changed directly in the database only; it should be changed through the Application Server, otherwise, the Application Server has to be restarted.
For successful communication between Service Host Manager and Web Application that performs client interactions, the Decisions Platform uses a Pushback mechanism. For example, when somebody makes changes to the Flow in the User Interface, the Web Application sends those changes to the Service Host Manager using Flow Edit Service. Service Host Manager pushes some data back to the Web Application is able to make adjustments in the UI.