Architecture

Solid technology foundations

  • GUI Layer: HTML5, jQuery, Bootstrap
  • Backend layer: Java 7, Spring, Freemarker, OSGi, jBPM 5, Tomcat / JBoss
  • Database integration layer: Hibernate ORM
  • Integration layer: Liferay 6.0 & 6.1, Alfresco (CMIS protocol), Jasper Reports adapters

stack

Aperte Workflow can be run in two modes: standalone and integrated with Liferay as portlets. Because of Liferay integration, there is user and role management module, LDAP integration and SSO mechanism avaiable out-of-the-box.

More about Liferay features one can read on Liferay Site: http://www.liferay.com/products/liferay-portal/features/portal

GUI layer is based on light, basic technologies as jQuery, Bootstrap, HTML5, Ajax. It is the result of our many years experience with facing the problem, how to deliver good quality code, within cost boundries and as fast it is possible.

Backend layer consists of two main components: Core which include main mechanisms for plugins system, basic web services for processes manipulation, user, process and case management. All of it is based on Spring Framework. The other component is OSGi plugins resources, which enrich core with additional features, as mail support, process and cases definitions, additional web services, translations, process step, interactive reports. Plugins can be installed and uninstalled on the fly with hot-deploy system so one can deliver new version of codes and hotfixes without stopping the server (no Businesses Stop situations).

Data layer is based on Hibernate ORM. Main model can be extended using OSGi plugins.

Case – Process – Step model

model

Aperte Workflow model foundation is based on three main entities: case, corresponding (or standalone) processes and process steps. There is native support for from to database flow using generic properties. Of course, one can easlily extended it using own model, extending abstract OSGi controller and providing additional DTO providers and handlers.

Scalability

Aperte Workflow supports running in cluster environment. To add additional nodes one can easily modify jgroups configuration without additional development.

The number of users working parallel is based on application complexity (business form validation, integration with external systems in automatic steps). Usually it is between 200 and 400 users per one node and it can be easily scaled up.


aperte_workflow_MTJBPM