Img-detail-kbeeworkflow

kbee.workflow

Overview

Workflow engine with a Process Designer integrated to Eclipse. It is a simple and rock solid core software designed to be used by developers into their applications
Sample Workspace.

The platform includes applications to graphically define, organize the execution, monitor and control internal and external processes in real time, thus integrating human tasks, applications and web services that are being executed simultaneously.

Main components:

  • kbee Workflow Server
  • kbee Process Designer: Graphic design of procedures using Petri Nets.
  • kbee OLAP Server: for OLAP cubes in the processes
  • kbee.WQL (Workflow Query Language): OQL like query language on the workflow engine

and a set of reusable components to be integrated to the applications

Product Strategy and features

Simple and focused

The product has been designed as a powerful and simple tool for developers.

The aim is to provide developers with the essential elements to build workflow applications, together with the infrastructure to extend the functionality for different domains through the use of libraries.

Its key components are: a powerful and simple graphical specification language offering the greatest power of expression to define processes with parallel lines of execution (based on the mathematical abstraction known as Petri Nets), an Eclipse-integrated application which enables users to define processes graphically, a robust engine for the execution and control of processes, an OQL-like query language (OQL: Object Query Language) to develop indicators for monitoring progress, and an OLAP server integrated to the server for analytical reports and business intelligence.

Fully extensible to each domain

kbee.workflow is entirely written in Java and developed as a Framework, so that its core components can be easily extended to fit new requirements. Problem-specific records or operations can be easily attached to the events fired by the workflow engine when processes change their state.

kbee WQL. Workflow Query Language

kbee.workflow offers an OQL-like query language (Object Query Language) which enables the use of indicators to monitor the state of processes at real time.

A selection criteria can be applied both upon the native attributes of the BPM (such as the state or runtime of a process) or upon extended attributes from a specific domain (such as the number of a purchase order or a file). For instance, the developer can create indicators to monitor the number of processes in a specific state or the tasks carried out onto a specific record

LGPL: Entirely Open Source

kbee.worflow is backed by the Open Source community. As it is licensed under the LGPL license, it offers total freedom of use and guarantees it will not degrade in the future.

Scalable

Its powerful and simple graphical specification language with very few primitives enables the engine to be small and efficient. Moreover, its WQL (Workflow Query Language) can scale to manage thousands of active processes.

kbee.workflow is based on Open Standards; and it has been built and integrated to such standards as JNDI, JTA, JMS, JDBC, etc.

Features

kbee process designer

kbee.workflow designer over Eclipse.

kbee process designer is an application for the graphical specification of procedures; it includes tasks and routing conditions.

It is an Eclipse platform plug-in (http://www.eclipse.org) that enables an integrated working environment where developers can specify procedures, Java tasks, HTML, JSP or whatever may be necessary.

kbee workflow server

kbee workflow server is a process execution engine that executes and controls each process. It is a small and specialized server. It also has the capability to persist the changes of state in each process. Finally, it includes an event propagation mechanism to notify each change in state to the applications assigned to propagate these events to JMS queues.

Alarms As a complement, the server provides a mechanism for the programming and recording of alarms. An alarm will be activated in case indicators exceed control levels and an action will be consequently executed. For instance, a signal is activated in a dashboard every time the active processes exceed a certain number, or when a task runs longer than the expected runtime, or in the case of failed tasks in a process, etc.

kbee WQL

kbee WQL is a query language with a similar syntax to OQL (Object Query Language). It allows the selection and projection of native attributes or extended attributes of the workflow entities. The language enables users to query the workflow engine in analogy to queries over a Relational Database Engine

kbee.OLAP Server

kbee.OLAP server

It is a multidimensional OLAP server that enables monitoring the relevant variables of each system such as: state and history of each process, tasks under execution, bottle-neck detection within processes, user-tasks reports, state of each document, etc.

kbee WQL monitor

It is a query console that enables writing a WQL sentence and viewing the corresponding results.

Architecture

kbee.workflow Architecture

kbee.workflow architecture

kbee.workflow provides four-tier architecture: a client applications and components tier, a client servant tier, a workflow server tier and a connectors tier.

Client Application Tier

The first tier is the client applications tier. This tier can include the graphical process designer, a process monitor and all the applications using any of the workflow services such as: personalized consoles, monitoring consoles or personalized dashboards.

Client Servant Tier

In this tier, a set of Java components (Web Services, Servlets, JSP pages, etc.) implement a well-defined interface of all the services provided by the workflow server so they can be accessed by HTTP.

In case the client applications work in the same server and virtual engine than the workflow applications, there is an alternative to seamlessly access to the services through the API Java defining its interface.

Workflow Server Tier

The main and analytical engines reside in a tier called BPM (or simply Server). The main engine controls the execution of processes, their persistence and the firing of events generated by the changes in state of each of the running processes.

The analytical engine has the ability to collect the events generated by the main engine in order to view working statistics in OLAP cubes. Storage in the OLAP server is asynchronous so that the performance of the workflow engine is not degraded.

Connectors Tier

The last tier includes a library of connectors that enables users to interact with external systems. The library has connectors to access to relational databases via JDBC, to Java applications via JNI or JMS, to directory services (LDAP) and to applications of the kbee.cms content server. It also includes an API for the development of specific connectors.

Download

kbee.workflow is distributed with Open Source LGPL v2.1 license. Please read the terms and conditions at http://www.fsf.org/licensing/licenses/lgpl.html

To download the application you have to accept the terms and conditions of the license.

kbee.workflow documentation

kbee.workflow source and binary