BPMS Comparison

From Training Material
Revision as of 18:45, 24 November 2014 by Cesar Chew (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This section just describes the feature a BPMS can have. Please see the BPMS Comparison Matrix to compare suites.

BPMS and process life-cycle and roles

  • Design (documentation) [analysts]
  • Deployment [developers, analysts]
  • Execution [developers, users]
  • Monitoring [managers, users, developers]
  • Change and process migration (versioning [analysts, developers, users]
  • Decommissioning [developers]


What feature a BPMS can have

Web Interface for process modelling

  1. Can processes be edited via a web editor
  2. Can the changes be moved to production without using desktop tools?

BPMN Compliance level

  1. Almost non of the tools implements all elements and features of BPMN 2.0
  2. Please look at compliance level chapters http://www.omg.org/spec/BPMN/2.0/ to see what kind of elements the BPMS support

Process Versioning

  1. Can multiple version of the processes run simultaneously?
  2. How the new version of the process impact the currently running instances?
  3. Is it possible to gather statistics from multiple versions of the processes?

Rule Engine Integration

  1. Does the BPMS supports Rule Task (BPMN 2.0)
  2. Can Rule Task (BPMN 2.0) be comfortably use without extensive service calls?
  3. What Rules Engine the BPMS integrate with?
  4. How does the versioning of rules impact the processes (i.e. is there an easy way of running old processes using old rules)?

Human Tasks and console

  1. Does the BPMS support task management console?
  2. Can it be embedded in other applications (e.g. portals)
  3. Is it based on WS-Human Task standard

Web Service integration (plugins to existing systems)

  1. Are processes exposed as web services?
  2. Can a service task comfortable call a service?

Persistent options

  1. Can the engine save current process status?
  2. What database/storage options are available?

Cloud and scalability support

  1. Can the process utilize multiple machines (MapReduce)?
  2. Can the process run in a cluster environment?

Scripting Tasks supported languages

  1. When using Script Task, what scripting languages are supported?

Community

  1. How many people currently use the suite?
  2. How much free materials is available on forums, wikis, etc...?

Availability of vendor independent support

  1. How easy it is to find an independent consultant on the market?

Easiness of deployment

  1. How long does it take to deploy:
    1. a new process
    2. a new version of an existing process

Standard based (WSDL, JSON, etc...)

What standards are supported in terms of:

  1. Exposed and consumed web services
  2. Data exchange, serialization, storage

Process Migration (from older version to newer)

  1. Is it possible to migrate instance (cases) of a process into newer version automatically?

Easiness of upgrading the engine

  1. Is it possible to run two versions of an engine on the same installation?
  2. Is it possible to run different version of the processes on a different Engine?

Business Activity Monitoring (BAM)

What statistics are available?

  1. Number of processes (per hour, day, etc...)
  2. Custom report about route taken or variable values in the process instances
  3. Does the BPMS integrate with analytical tools (e.g. Pentaho) for further analytic?

Simulations

  1. Is it possible to estimate the duration of the process?s it possible to simulate processes with randomly generated data given the frequency and distribution of the data?

Exposes API via Web Services

Does the BPMS allows other applications to:

  • Start a new instance of a process
  • Progress an instance of a process
  • Retrieve list current instances of the process
  • Retrieve and manage user task list

This is one of the most important points. If there is no API, integration with other applications will be extremely hard

Service Repository Support

What service repositories are supported (SWORD, etc...)


Declarative call for web services from the designer

  • Can a process developer call a web service without the need of writing any code?
  • Which protocols and data formats are supported (SOAP, REST, JSON, etc...)

Automatic Optimization

  1. Does the suite analyses and suggests process improvements using meta-heuristics?

Right-to-left writing support

Ability to execute BPMN 2.0

  • wihtout translation to BPEL or other langauge

Assignment Types

  • Cyclical (round robin)
  • Random (as oppose to cyclical)
  • Self Service(PickUp, Group)
  • Manual (some assigns to some else)
  • Variable (Value Based)
  • Reports To (Line Manager)
  • Least busy worker from a group (i.e. assign to the worker which has least work at the moment)

Case Management