Software Architecture
This diagram shows the AgilePoint NX software architecture.
eForm Builder
The eForm Builder is an integrated visual tool that lets you build anything from simple forms with just a few form controls to complex, multi-tabbed forms. The eForm Builder provides more than 50 control types, and lets you build business logic into the form, enabling dynamic restructuring of the form based on form user input. You can use your eForms within an app, share your eForms across apps, or even use eForms with external applications.
Process Builder
The Process Builder is a visual tool where you can create workflows and the logic for processes and apps with a simple drag-and-drop interface.
Application Test and Deployment
- Export an App
- Import App screen
- Publish an app.
For more information, refer to:
Team Work Management
The Work Center is a component where you can access to the information about the work you care about, and the apps that are available for your use This component also lets supervisors manage the work of their subordinates.
Application Versioning
This component lets you check in, check out, or publish an applications in the AgilePoint system and manage the versions.
Data Modeling
This component lets you configure the different data sources and data source types for your application. The data source for an eForm is created dynamically as you add form controls. In addition, you can add external data sources to supported third-party systems.
Analytics Center
The Analytics Center can create, run, and configure reports and reports settings related to data in your apps.
User, Group, and Role Authorization
AgilePoint NX uses an authorization system based on access rights that can be applied to a user, group, or role.
Process Model Management
This component lets you manage the process models in your environment.Tenant Provisioning
This component lets you provision a tenant in a multi-tenant AgilePoint NX environment.
Process and Activity Monitoring
You can see information about your process instances, such as template name, status, start date, due date, and completion date and about the system activities in your process, such as the start date, completed date, and status.
Application Configuration
Lets you manage app permissions, create access tokens, and configure the settings for the App Builder.
Dashboard (System Management)
Shows a summary of your system data and business data..
For more information, refer to System Overview.
Form Engine
The runtime engine for the eForm Builder. It uses HTML5 and jQuery to render the eForm.
Process Engine
The main component of AgilePoint Server the lets you run, pause, stop, and change processes live without writing software code.
Multi-Tenant Management
You can configure AgilePoint NX to run in a multi-tenant environment.
For more information, refer to Multi-Tenant Configuration
License Management
An internal service manages which components of AgilePoint NX to which you have access, based on your license key.
Exception Handler
You can create a custom AgileConnector to handle exceptions and take specific actions when an exception occurs. Each activity also has configuration properties that let you specify what happens when an exception occurs. You can specify the action to take when an exception occurs, the amount of detailed process-related data that is recorded to the AgilePoint workflow database, and a process data variable to store information about the error.
Process Swapping Management
Lets you configure the amount of time an system activity is loaded in memory. This is to improve the efficiency of the memory usage.
For more information, refer to Configuring the Swap Out Time
Process Instance Management
Lets you start, pause, cancel or move a process instance in a process.
Caching and Clustering, Process Load Balance Management
The AgilePoint clustering functionality within the AgilePoint Server Windows service works as an event dispatcher using .NET Remoting. This service records information from the AgilePoint Servers track which process instances are running on each of the AgilePoint Server machines. When a process instance is created, the first event is load balanced by the NLB. After that, the clustering feature dispatches events to each of the AgilePoint Servers in the cluster, ensuring that all events associated with the same process instance lifecycle are processed on the same AgilePoint Server machine. When a new database event is triggered, the AgilePoint Server machine picks up the event, it uses the clustering feature to determine whether the event is currently being handled by any of the AgilePoint Servers in the NLB based on the associated process instance ID. If the event is associated with a Process Instance ID that is already running on a different server, the AgilePoint Server clustering component will re-route the event to be processed on the AgilePoint Server that is currently dedicated to processing events associated with that process instance.
Security Service (Authentication)
The service that manages the authentication in AgilePoint Server.
For more information, refer to Authentication.
Logging Service
The logging service lets you see errors and events that are recorded in log files in various locations. Logs show informational, warning, and error messages about the AgilePoint Server, the process engine, execution of activities, and errors that occur in network connection.
For more information, refer to I Need Help with AgilePoint Logs.
Event Service
The event service is a set of options that let you start a process-based app when a specified event occurs.
Integration Service
You connect AgilePoint NX applications to over 30 different third-party services out of the box. You can also add your own integrations with custom AgileConnector.
Timer Service
You can set the time for different actions in your process. For example, you can pause for a specified time before process continues, specify a time limit for the session to complete an activity, or set a limit on your expiration to your hours of operation.
Process Archiving Service
You can archive a process instance and all its related data to an archive database when the completed or canceled date for the process instance exceeds a specified number of days.Data Population Service
The data population service lets you store the values for specified process data variables in a database. You can use this data for reports.
Data Tracking Service
The data tracking service monitors process data variables based on specified conditions. You can see the audit history report of the tracked data in the Manage Center on the Data Tracking tab if the value of the tracked variable meets the condition
Notification Service
This services sends a notification when an event occurs in a process. Notifications can send through apps such as e-mail, Microsoft Teams, Yammer, or Salesforce Chatter.
For more information, refer to Notification.
Multi-Tenant Architecture
The AgilePoint NX multi-tenant architecture is a platform that can run more than one tenant from one AgilePoint Server instance. In a multi-tenant environment, each tenant has its own, self-enclosed database.
Embedded Hosted Application
You can use AgilePoint NX components like eForm Builder and Manage Center in your own portal. It is not necessary to use the AgilePoint NX Portal application.
Windows Service (WCF)
WCF is a Microsoft framework for building service-oriented applications.
SQL Server
AgilePoint Server stores data in Microsoft SQL Server.
For more information, refer to System Requirements for AgilePoint Server.
Microsoft .NET Framework
AgilePoint NX is built on the Microsoft .NET Framework.
For more information, refer to System Requirements for AgilePoint Server.
IIS
Some web-based components of AgilePoint NX, such as AgilePoint NX Portal, require IIS.
For more information, refer to System Requirements for AgilePoint Server.
Messaging Service
The Messaging Service sends messages from applications with SMS.
Microsoft Operating System
AgilePoint Server runs on a Microsoft Operating System.
For more information, refer to System Requirements for AgilePoint Server.