ibm research – zurich process management technologies · pdf file ·...
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