Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome, Safari or Firefox browser.

Business Process Modeling, Management and Mining

Business Process Automation

Prof. Cesare Pautasso
http://www.pautasso.info
[email protected]
@pautasso

Business -- IT Gap

“to-be” process models

  • modeled by domain experts
  • communicate, prescribe, illustrate
  • shared understanding between participants
  • intuitive, abstract, ambiguous, need some interpretation

Executable process models

  • modeled by IT experts
  • input to a process engine
  • formal executable semantics
  • explicit, concrete, precise and full of implementation details

Automation Goals

Repeatable Processes: processes are executed in the same way, tasks may be manual

Straight through processing: full process and task automation, high throughput

Overview

Reference Architecture

Workflow Management Coalition, 1998

Two-level Programming

  1. Programming in the large
    • Process logic defines the integration of reusable components (control and data flow)
    • Assembly by domain experts (non-programmers)
  2. Programming in the small
    • Component logic implements discrete fine-grained functions and tasks (interfaces)
    • Components developed by IT experts (programmers)

SOA = BPM + WS

R. Peisl

Layers and Integration

APIs are used to access software functionality exposed to be integrated from processes

If APIs are not available, it is always possible to access a system from its user interface, or go directly to its data

Choreography

Each participant follows his own process when interacting directly with the other software systems involved in the choreography

Orchestration

The process defines the behavior of a centralized coordinator, which will drive the interaction between all integrated software systems

Composition

The process defines the behavior of a component that is (recursively) built out of the composition of other components, which remain hidden from the client

Megaprogramming

With a process, every instruction:

Process-aware Software

Process-aware Software

Software Connectors

Connectors and Processes

Internal Engine Architecture

Correlation

Problem: Route incoming messages to the corresponding existing process instance or start a new process to process an incoming message

Solution: Embed process identifier into message headers

Alternative Solution: Use message properties and content to identify the process instance

Process Identification

Structured process instance identifiers allows to group related instances and find which process template they execute

How long does it take?

Hentrich and Zdun

Macroflow long-running business processes (days, months, years) which may include human tasks

Microflow short-lived transactional processes (microseconds, seconds, minutes) that involve fully automated tasks

Types of Process Engines

Commercial Engines

  • IBM WebSphere Process Server
  • Oracle BPMS
  • Microsoft BizTalk, Windows Workflow Foundation
  • SAP NetWeaver BPM
  • Software AG webMethods
  • Appian BPMS
  • BizAgi BPM Suite
  • Bosch inubit Suite
  • OpenTex tBPM
  • Perceptive BPMONe
  • Progress Savvion
  • TIBCO ActiveMatrix BPM
  • Whitestein Living Systems Process Suite

Open Source Engines

  • Activiti
  • Camunda
  • Stardust
  • Apache ODE
  • Bonita
  • Intalio BPM
  • JBoss jBPM
  • YAWL
  • JOpera

References

Use a spacebar or arrow keys to navigate