All product information in wiki.bizagi.com is only valid for Bizagi BPM Suite 9.1.X.
For newer Bizagi BPM Suite versions (10.X and up) please visit the User Guide.
 

Architecture

From Business Process Management, BPM and Workflow Automation Wiki | BizAgi BPMS

Jump to: navigation, search

Contents

Bizagi Architecture

This article applies to version 9.1, which is NOT our latest version. Refer to our User guide to find our latest Product's Architecture.

Overview

Bizagi is a leading BPMS solution designed to support the organizational processes and their life cycle (model, execute, and improve).


Model

Bizagi offers 2 products: the Process Modeler and the BPM Suite.
In this cycle, processes are first modeled in standard BPMN (BPM notation) and documented by the process analysts by using Bizagi Process Modeler.
Then, by means of the BPM Suite (throughout Bizagi Studio), these processes' detail is extended for their execution.
With Bizagi Studio, the implementation of the processes include the definition for: the data model, the user interfaces (known as forms in Bizagi), the business rules for the logic behind, and the participants or performers of the processes' activities with their workload allocation, amongst others.
All this is done with Bizagi with assistance of graphical wizards and without the need for programming!

Execute

Bizagi is a model-driven solution, meaning that the BPM Server directly interprets the BPMN model without performing any transformation.
Bizagi directly executes and controls the workflow in any platform (.Net and JEE support), from the BPMN model defined graphically by the process analysts, without any intermediate code.

Once the processes detail is completed in the Authoring / Construction environment from the model defined with Bizagi Process Modeler, Bizagi offers the possibility to publish these processes in the Production environment (and in a Test environment also) with an assisted wizard.
This is a one-click step enforced by Bizagi being a data-driven solution, mainly because publishing the processes to the Production environment is done by taking that BPMN model to the BPM Server.

End users are presented with a Work Portal for them to access through a browser, and login in order to carry out their daily activities in these processes.
End users only require a browser and do not need to install any additional component.


The following image illustrates and summarizes the previously described:


Improve

Bizagi offers a comprehensive set of performance indicators for historical and real time analysis. Throughout the observations and conclusions obtained from these BAM and analytics reports in the Work Portal, the opportunity of improvements to the processes are identified.

Bizagi supports multi-versioning of processes.
Once the opportunity of improvement is identified, in Bizagi Studio we can create new versions for existing processes and include these changes that make part of the process' evolution or any business requirement change.

Bizagi BPM Server

The following diagram illustrates the main internal components of the BPM Server, which support bizagi's process-oriented features and further integration possibilities with the Enterprise services bus and other systems:



Work Portal
Bizagi presents a web-based Work portal for the end users, where they will be presented with an inbox of their "to do" list of activities.
The Work portal is the access point for the end users, in which they will interact with the system (i.e. be able to start new processes, access to the performance analysis and reporting, etc).
Accessing the Work portal only requires a browser, and it can be setup for intranet or internet with multi-language support.
View further information about how to customize the Work Portal for end users.

BPMN Engine
The BPMN Engine is called in Bizagi the 'WorkflowEngine', and it controls and executes the workflow.
This engine directly interprets the modeled processes in BPMN, as created previously with Bizagi Process Modeler.
It interprets and executes all sophisticated BPMN features such as collaboration between processes through signals and messages, long-lasting process transactions, and subprocess design, amongst others.

BAM and Analytics
The BAM and Analytics features provide powerful reporting for management indicators (to monitor and improve processes).
Graphical analysis is presented for both BAM (real time) and Analytics (historical trends, bottlenecks).
For applications in which there is a high volume of information and analysis queries may affect the performance, an optional Operational Data Store (ODS) feature can be set up for performance enhancement.
View more information about how to use bizagi ODS.

Data Manager
Bizagi presents a powerful data engine which is called the 'EntityManager'. It manages the information in a secure, consistent and integrated manner between its different components, allowing its information access from the processes.
This means that administration of information is done transparently for the users, regardless whether this information is stored locally in Bizagi's data model, or even in an external source of information (covered through important mechanisms of integration such as virtualization or replication).
View more information about virtualization and replication (integration for Bizagi projects at a data level).

Security and Organization
A Security module handles authentication and authorization options for the different roles, skills, positions, areas and locations defined in the Organizational structure.
Authentication options include Work portal security with "Windows authentication", "Oracle Single-Sign-On", and "LDAP integration", amongst others.
View futher information about how to configure LDAP inclusion in Bizagi security.
Within the organization, it is possible to define and assign different working time schemas for the different users and their location.

Business Rules
Bizagi offers a Business rule engine to execute the policies that make up the business logic. It runs in the BPM Server to enable the different workflow transitions, control and synchronize the activities' execution, make automated decisions with sophisticated rules (i.e. decision tables and decision trees), and perform calculations, amongst others.
Business Rules definition in Bizagi is assisted by friendly graphical editors which allow the inclusion of rules without the need of programming.

Integration Layer
A robust, flexible and powerful Integration layer is part of the solution for corporate customers.
In projects where there is the need to integrate the processes with existing applications, Bizagi's Integration layer presents multiple options for business and application integration:

Image:Bulletazul.gif E-mail Server. Bizagi processes can send automatic e-mail notifications using an e-mail server which is SMTP compliant, such as Lotus Notes, Exchange, amongst others.
View more information about E-mail Server configuration for your bizagi processes.

Image:Bulletazul.gif ECM. Bizagi supports integration with Enterprise Content Management systems supporting the CMIS standard, such as Sharepoint, Alfresco, Documentum, amongst others. Documents uploads in Bizagi processes can be configured for a central document repository.
View more information and a guide about ECM integration.

Image:Bulletazul.gif Enterprise Service Bus, ERP, CRM, Core Applications and Legacy Systems. Bizagi supports integration with the corporate ESB and any other system, either through web services use or through direct API invocations from Bizagi (DLL or EJB Classes, JMS).
Our preferred method of integration is through web services (SOAP, REST), in which its configuration is assisted by a wizard in Bizagi (avoiding the need of having a profile with a high level of technical knowledge).
View more information about how to invoke REST or SOAP web services from bizagi processes. The API invocations possibility in bizagi uses a broker-based architecture, and is done by developing a separate component in .Net or Java technology, and then registering the developed assembly in Bizagi (for direct use within the processes' business rules).
View more information about the API invocations done through the Component Library feature.

Integration by means of web services is possible in both ways, and in addition to Bizagi's wizard to invoke external web services, it is possible to invoke web services in Bizagi from external systems as well.
For this, every Bizagi project presents the workflow's functiocnality and queries, already published as web methods available for the Integration via "External system" -> "Bizagi". Such web methods include the possibility to start processes, perform an activity or trigger a business event, update and get updated information of processes, abort process instances, amongst others. View more information about the SOA layer and the web services already published for Bizagi processes.

Workload Management
Workload routing and balancing can be configured with the main algorythms used such as: queues, round robin, and load balancing.
For this workload management and optimization, important criteria like the working calendars is involved and work delegation and reassignation can be enabled.

Business Events
Bizagi supports the different possibilities for the processes to react to business events, mainly triggered by another process, or of the asynchronous-type (such as timed events).
This powerful feature makes possible the modelling of processes which are started or flagged by messages, signals, timers, and other any asynchronous event which include custom jobs.
For custom jobs, programming may be used to specify batch processing or other specific tasks.

Cache Manager
The Cache Manager is a significant enhancement in Mission-critical projects in large customers, which count with a high number of users.
It provides an improvement in the Work portal performance by achieving optimization of data access and persistance.


System Architecture

Authoring environment

The Authoring environment is called in Bizagi the "Development environment".
Bizagi can be set up so that collaborative work is supported in this environment:


View more information about collaborative work in a bizagi project.


Production environment

In the Production environment, Bizagi can be set up as shown below:


Data Access Layer. The Data Access layer contains the Database Server and can be set up with a failover node mechanism.
Supported database engines are: Microsoft SQL Server (2008 R2, 2008, 2005) and Oracle 10g R2.

BPM Layer. The BPM layer contains the BPM Server and can be set up with an optional load balance cluster.
Bizagi supports execution in a .Net or JEE platform.
For the .Net platform, a Windows environment is used with Internet Information Services (IIS).
For the JEE platform, the most representative Application Servers are supported such as: WebLogic, WebSphere, and JBoss.


View detailed information about the Servers' hardware and software requirements, as well as the infraestructure technical options in the following links (each link according to Bizagi's edition):

An optional configuration measure can be used so that a reverse proxy in a DMZ is employed to set up Bizagi's Work Portal for secure Internet Access.

Related Articles