ibm research – zurich process management technologies · pdf file ·...

43
IBM Research – Zurich Process Management Technologies © 2013 IBM Corporation Business-Driven Software Engineering Lecture 3 – Foundations of Processes Jochen Küster [email protected]

Upload: dokien

Post on 22-Mar-2018

218 views

Category:

Documents


5 download

TRANSCRIPT

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Business-Driven Software Engineering

Lecture 3 – Foundations of Processes

Jochen Küster [email protected]

Dr. Jochen Küster | BDSE20132

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Agenda

� Introduction and Background

� Process Modeling Foundations

� Activities and Process Models

� Summary and References

Dr. Jochen Küster | BDSE20133

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Introduction and Background

Dr. Jochen Küster | BDSE20134

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

ITSolution

Business Process Model

BusinessRequirements

Business Model

TechnologyBPEL, Web Services EJBs

Model refinement

Model transformation

change of strategy

Vision: Integration of Business and IT

� Business model captures business goals and provides overview of the enterprise

� IT level comprises components organized in a component-based or service-oriented architecture

� Business processes provide the bridge between business and technology

Dr. Jochen Küster | BDSE20135

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Processes are Everywhere in Our Lives

� Shopping processes when buying a book at Amazon.

� Claim handling processes in an insurance company.

� Credit handling processes when applying for a loan in a bank.

� and many more

How to document and automate processes?

Dr. Jochen Küster | BDSE20136

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Business Processes

� “A process is[..] a specific ordering of work activities across time and place, with a beginning, an end, and clearly identified inputs and outputs.” (Davenport 1993)

� “We define a business process as a collection of activities that takes one or more kinds of input and creates an output that is of value to the customer.” (Hammer and Champy, 1993)

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

Dr. Jochen Küster | BDSE20137

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Business Process Management

Business Process Management:

� “Business Process Management comprises concepts, methods, techniques for design, administration, configuration and analysis of business processes” (Weske, 2007)

Business Process Management System:

� “A business process management system is a generic software system that is driven by explicit process representations to coordinate the enactment of business processes.” (Weske, 2007)

Dr. Jochen Küster | BDSE20138

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Traditional System Architectures

� Application uses database managementsystems to access data

� Database management system realizesfunctionality on top of the operating system

� Interaction with the user is realized througha graphical user interface

� monolithic system architecture� siloed enterprise applications

� How to deal with changes? � How to realize functionality across different databases? � How to realize “integrated” functionality?

Application

GUI

DBMS

OS

Dr. Jochen Küster | BDSE20139

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Enterprise Application Integration

� New technical capabilities allowed to integrate applications forenterprises

� Point-to-point integration– many connections

� Hub-and-spoke integration– reduce the number of connections

Enterprise ResourcePlanning System

Supply Chain Management

System

Customer RelationshipManagement System

ERPSystem

CRMSystem

DataWarehouse

IntegrationMiddleware

Dr. Jochen Küster | BDSE201310

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Workflows and Workflow Management Systems

� To increase flexibility in EAI, workflows are captured and executed by a workflow management system

� Process logic is specified in workflow models, changes can be made without coding

� Standards for workflow technology evolved

Application

GUI

DBMS

OS

WorkflowSystem

Workflow System

Application 1 Application 2 Application 3

Dr. Jochen Küster | BDSE201311

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Limitations of Workflow Systems

� Flexibility and human issues– human workers might feel restricted by activity allocations

� Not always possible to have a workflow management system– integration problems within/across enterprises remain existent

� New business trends and new technical trends– modeling of organizations and business services, enterprise modeling

– concept of services, web services

Dr. Jochen Küster | BDSE201312

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Business Processes and Workflows

� Business processes describe processes across organizations at different levels of details

� Execution of business processes by information systems requires that business processes are described at a certain level of detail

� A workflow is a refined business process such that each activity can be executed within the context of one application system

� A workflow is executed by a workflow management system which provides support for defining, administrating and executing workflows

� Goal of workflow management: increase of efficiency in enterprises, reduction of costs in enterprises

Dr. Jochen Küster | BDSE201313

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Human Interaction and System Workflows

Human interaction workflow:

� Interaction with human users required

� Workflow management must take care of these interactions

Example:

� Workflow for entering Customer Data

System workflow:

� Activities can be executed without human interaction

Example:

� Workflow for saving data in different databases

Dr. Jochen Küster | BDSE201314

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Organization and Enterprise Modeling

� Enterprise modeling for documenting enterprises and analyzing them

� Better understand changes of strategy and their effect on processes, people and IT

� Various approaches available, no single solution

Business & Financial

Management/Infrastructure

Business Acquisition & Retention

Policy Administration

& Services

Business StrategyOperations

Management And

Planning

Market and PromotionPlanning

Benefit Payments

ClaimsManagement

Strategy

Miscellaneous Payment Planning

Investment Strategy

EnterpriseStrategy

People Processes IT

Implemented by

influencesdetermines

Dr. Jochen Küster | BDSE201315

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Business & Financial

Management/Infrastructure

Business Acquisition & Retention

Policy Administration

& Services

Business Strategy

Direct

Execute

Control

OperationsManagement

AndPlanning

Market and PromotionPlanning

Benefit Payments

ClaimsManagement

Strategy

Miscellaneous Payment Planning

Investment/CapitalManagement

Illustrations

Financial Reportingand Controls (GL)

Sales Support

New Business Processing

(Application)

ProcessingPolicy

Changes

Claim Handling

Payment Processing

(Disbursements)

OperationsManagement

Controls

PromotionManagement

Billing

Claims Litigation

Competency

Operational

Levels

Investment Operations

Investment Strategy

� A business component is a part of an enterprise that has the potential to operate autonomously

� A business component offers services to its environment

ClaimHandling

RecordClaim

VerifyClaim

IBM Component Business Model - Example

Dr. Jochen Küster | BDSE201316

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Service-oriented Architecture (SOA) has several aspects

� a set of architectural principles which address characteristics such as modularity, encapsulation, loose coupling, separation of concerns, composable and single implementation.

� an architectural style which requires a service provider, requestor and a service description.

� a programming model complete with standards, tools, methods and technologies such as web services.

� a set of business aligned IT services that support an organization’s business process goals and objectives ……using interface-based service descriptions that decouple the provider and consumer through open standards and protocols…

Dr. Jochen Küster | BDSE201317

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Overview of layers of a Service-Oriented Architecture

Operational Systems

Service Binding

Business Process Layer

Component Layer

Presentation Architecture

Qo

S M

anag

emen

t &M

on

itorin

g

Integ

ration

Arch

itecture

(Service Integration B

us)

Object-oriented

CICS/COBOL

CRM, ERP

Business IntelligenceBusiness

Intelligence

Process Choreography

Composite Services

Portlets

Enterprise Components

Dr. Jochen Küster | BDSE201318

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Conceptual Layers of Business Processes

� Process modeling required for all levels

� Methodology required for transitions between the levels

� Software engineering concepts required for IT levels and for transition and realization of SOA components

Business Processes at Business Level

Human Interaction Workflows at IT Level

Business-to-Business Processes at Business Level

System Workflows at IT Level

Dr. Jochen Küster | BDSE201319

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Lifecyle of Business Process Models

Process Improvement

BPMN Creation of a business-levelprocess model

Requirements

Process Deployment

Creation of a technical processmodel

BPMNBPMN

BPMN

Dr. Jochen Küster | BDSE201320

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Concept of Business-Driven Software Engineering

� Software Engineering:– Concepts, languages, techniques, methods and tools for building software

systems

� Business-Driven:– Taking into account business requirements

– Focus on modeling techniques for combining business level and IT level

– Focus on methods that combine business and IT level

ITSolution

Business Process Model

BusinessRequirements

Business Model

TechnologyBPEL, WSDL, JEE, WebSphere

Model refinement

Model transformation

change of strategy

Dr. Jochen Küster | BDSE201321

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Techniques of Business-Driven Software Engineering

� Business Process Modeling

� Organizational and Data Modeling

� Business Process Simulation

� Business Process Reference Model Customization

� Business Process Lifecycle Management (Versioning)

� Methodologies for developing SOA Applications

� and many more…

Dr. Jochen Küster | BDSE201322

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Modeling Foundation

Dr. Jochen Küster | BDSE201323

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Views of Business Process Modeling

Process Models

Data ModelsOrganizational

Models

registered

granted rejected

settledclosed

register

settle

close

close

grant reject

Object Life Cycles

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

PaulSenior Manager

LindaManager

KevinManager

Claim Handling Process

Dr. Jochen Küster | BDSE201324

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Overview of Process Modeling Languages

� BPMN (Business Process Model and Notation)

� UML (Unified Modeling Language)

� EPC (Event Driven Process Chains)

� BPEL (Business Process Execution Language)

� In this lecture:– focus on the concepts of business process modeling– overview of syntax and informal semantics of BPMN

� There are pros and cons of the different languages

Dr. Jochen Küster | BDSE201325

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Why is Modeling of Processes important?

� If process is to be executed by a workflow system or business process management system, process must be modeled in a language supported by the workflow system or business process management system.

� Modeling is a means of documenting processes

� Modeling of processes allows– the manual or automated repetition– their execution in a workflow system– their simulation– their analysis and comparison

Dr. Jochen Küster | BDSE201326

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Concepts, Languages, Methods, Tools

� Concepts provide the foundation,

� Languages are used to express concepts,

� Methods define how to use languages and tools help to deal with methods and languages

Concepts

Languages

Methods and Tools

Activity

BPMN UML Activity Diagrams

ARISIBM WebSphere

Business Modeler

Process Gateway

EPC

Dr. Jochen Küster | BDSE201327

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Activities and Process Models

Dr. Jochen Küster | BDSE201328

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Conceptual Model of a Business Process

� Core concepts of a business process

� different views on a business process using different modeling languages

Dr. Jochen Küster | BDSE201329

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Activity Modeling - Concepts

� An activity describes a set of similar activity instances

� An activity instance represents an individual work item of a business process

� During its lifetime, an activity instance goes through certain states

:RegisterClaim

(Claim 1, Mueller)

:GrantClaim

(Claim 1, Mueller)

RegisterClaim

GrantClaim

Dr. Jochen Küster | BDSE201330

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Activity Instances – State Transitions

� Activity instances go through different states in their lifetime

� Technically, the runtime environment is responsible for triggering state transitions of activity instances

� State transitions can be modeled in an event diagram

init ready running terminated

skipped

initializeenable

begin

skip

terminate

Dr. Jochen Küster | BDSE201331

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Activity Instances – Event Diagrams

� event diagram shows the order of events for an activity instance

� time proceeds from left to right

� events are shown as bullets

init ready running terminated

initialize enable begin terminate

events

Dr. Jochen Küster | BDSE201332

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Modeling - Concepts

� A process model represents a “blueprint” for a set of process instances

� A process model consists of nodes and edges

� Edges connect nodes and establish orders of nodes

� There exist different types of nodes:–Activity models a work unit–Gateway represents a split or

merge of control or data flow–Events are used for expressing

occurrences of states that are relevant for a process

Dr. Jochen Küster | BDSE201333

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Modeling – Concrete Syntax

� Representation of Activity, Gateway and Event

� Explanation of the process model:– Process starts– A claim is registered– A decision is made whether to grant or reject a claim– …

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

Start Event Gateway End

Event

Dr. Jochen Küster | BDSE201334

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Modeling – Process Instances

� Process Model is a “blueprint”for a set of process instances

� Instantiation of a process model yields “concrete”process instances

� Process models place execution constraints on process instances

� Process instances are the running processes in the real world

� Process instances have a state, that is defined by the state of the activity instances it contains and their status

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

:RegisterClaim

:GrantClaim

:CloseClaim

:RejectClaim

instantiation

Dr. Jochen Küster | BDSE201335

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Instances – Event Diagram

� Event diagram shows the events and causal relations between them

� Start event leads to initialization of all activities and to theenabling of the Register Claim

� After Register Claim terminates, it enables the Reject claim

Register Claim

Reject Claim

Grant Claim

Start

Event

End

Event

i

i

i e

e b

b

t

t

s

Register Claim Reject ClaimAbbreviated Notation:

Dr. Jochen Küster | BDSE201336

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Execution - Traces

� Traces show the activities executed in a particular run of the process

� Traces of all runs represent the traces of the process model

� A trace can be represented as sequences– <Register Claim, Grant Claim, Close Claim>– <Register Claim, Reject Claim, Close Claim>

� Traces of a process model can be infinite in case of loops or non-terminating processes

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

Dr. Jochen Küster | BDSE201337

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Data Modeling

� Processes operate on data� Activities use data while executing and produce data� Data modeling is known from other disciplines (e.g. database design)� In the process model, we represent data by data flow and by data

repositories

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

ClaimsClaim

Dr. Jochen Küster | BDSE201338

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Interaction Modeling

� Interaction of processes can be modeled

� Messages can be used for starting execution of an activity

� Interacting processes are also called a process choreography

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

RecordClaim Details

Notify Customer

Claim Administration

Customer Agent

Dr. Jochen Küster | BDSE201339

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Organizational Modeling – Concepts

� Organizational models are used for expressing organizational structures that are relevant to processes

� Meta model for organizational models

� Organizational models can be expressed in different languages such as organizational charts (free hand)

Dr. Jochen Küster | BDSE201340

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Organizational Modeling - Example

� Organizational chart may show roles and persons

� Can also show organizational units

� Roles and persons (representing resources) are used for perform activity instances (representing work items)

PaulSenior Manager

LindaManager

KevinManager

MichaelEmployee

KimEmployee

BillingDepartmentPerson

Role

Organizational

Unit

Dr. Jochen Küster | BDSE201341

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Process Modeling – Roles of Organizations

� Associate roles to activities rather than a specific person

� When process is instantiated, roles must be replaced with individual persons (role-based allocation, role resolution)

� Changes in the personnel structure do not require change of process model

RegisterClaim

GrantClaim

RejectClaim

CloseClaim

Customer Representative

InsuranceExpert

Dr. Jochen Küster | BDSE201342

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

High-Level Architecture of Process Execution Environment

Process Engine

Service 1 Service n

calls

deployment

Process Modeling

Environment

calls

Dr. Jochen Küster | BDSE201343

IBM Research – ZurichProcess Management Technologies

© 2013 IBM Corporation

Summary of Lecture and ReferencesBusiness Process Management Foundations

� Business Process and Business Process Management Definitions

� Business-Driven Software Engineering

� Workflow and Process

Process Modeling Foundation

� Views of Process Modeling

� Activity Concept

� Process Models and Organizational Models

Further Reading:

� M. Weske: Chapter 2 and Chapter 3