Design and Verification of Design and Verification of
Information Systems (DVIS), Information Systems (DVIS),
lectures 1-2 lectures 1-2
elementary concepts of workflows elementary concepts of workflows
workflow = business process workflow = business process
BPR - Business Process Redesign (Reengineering) BPR - Business Process Redesign (Reengineering)
functions of WMS (Workflow Management functions of WMS (Workflow Management Systems)
Systems)
three dimensions of workflows three dimensions of workflows
subdivision of processes subdivision of processes
organizational structures organizational structures
mapping workflow concepts onto Petri nets mapping workflow concepts onto Petri nets
architectures of inter-organizational workflows architectures of inter-organizational workflows
Introduction to Workflows and Introduction to Workflows and WFMS WFMS
Management of business processes from the Management of business processes from the perspective of computing (IT)
perspective of computing (IT)
WFMS
WFMS - software packages for managing business - software packages for managing business processes
processes
old golden rules
old golden rules - first organize then computerize - first organize then computerize (processes were developed with silent assumption (processes were developed with silent assumption
that the business process is managed by people;
that the business process is managed by people;
organizational structure would be developed under organizational structure would be developed under
which people were allocated tasks; can IS support the which people were allocated tasks; can IS support the
work ? work ?
new rules
new rules - design business process in a more - design business process in a more
abstract way without considering implementation;
abstract way without considering implementation;
design IS and the organization hand in hand
design IS and the organization hand in hand
What the course contains ? What the course contains ?
reference framework for defining business processesreference framework for defining business processes
discussion of analytical methodsdiscussion of analytical methods
Petri nets are extensively used to define and analyze Petri nets are extensively used to define and analyze complex processes - PNs can facilitate processes by complex processes - PNs can facilitate processes by non-experts (communication between designers and non-experts (communication between designers and users + existence of software tools)
users + existence of software tools)
workflow management systemsworkflow management systems, i.e. the right , i.e. the right
information reaches the right person at the right time information reaches the right person at the right time (generic software packages that can be used in many (generic software packages that can be used in many applications)
applications)
methodology for developing workflow applicationsmethodology for developing workflow applications
case studies of workflow systemscase studies of workflow systems
What the course contains, ctnd ? What the course contains, ctnd ?
organization of workflowsorganization of workflows
management of resourcesmanagement of resources that contribute to business that contribute to business processes
processes
static and dynamic static and dynamic techniques to analyze workflowstechniques to analyze workflows
analysis and properties of analysis and properties of inter-organizational inter-organizational workflows
workflows
workflows and electronic commerceworkflows and electronic commerce
examples of WFMS/toolsexamples of WFMS/tools - Renew, Woflan, CPNTools - Renew, Woflan, CPNTools
WfMC - Workflow Management CoalitionWfMC - Workflow Management Coalition - to develop - to develop standard terminology and standard interfaces for
standard terminology and standard interfaces for WFMSWFMS
Classification of Information Classification of Information
Systems Systems
IS are used to reduce people’s workload, esp. in offices (text IS are used to reduce people’s workload, esp. in offices (text writing - word processors, drawing - drawing systems,
writing - word processors, drawing - drawing systems,
calculating - spreadsheet systems, filing - database systems, calculating - spreadsheet systems, filing - database systems,
communicating information - electronic email systems) communicating information - electronic email systems)
Office Information SystemsOffice Information Systems
Database Management SystemsDatabase Management Systems
Transaction Processing SystemsTransaction Processing Systems
Knowledge Management SystemsKnowledge Management Systems
Decision Support SystemsDecision Support Systems
Control SystemsControl Systems
Workflow Management SystemsWorkflow Management Systems
Organizing Workflows Organizing Workflows
role of work in societyrole of work in society: we work to live, we can not do : we work to live, we can not do everything in our life, we are organized in specialized everything in our life, we are organized in specialized
‘business units’
‘business units’
change from supply-driven economychange from supply-driven economy to to demand-driven demand-driven economy
economy (customers are scarce) (customers are scarce)
shift of focus from the means of production to the shift of focus from the means of production to the customer (
customer (organizational paradigm shiftorganizational paradigm shift))
reference frameworkreference framework = = ontology of processes ontology of processes = a system = a system of defined terms that describe particular field of
of defined terms that describe particular field of knowledge
knowledge
objectivesobjectives: to define business-management context : to define business-management context within which WFMS operate; to model and analyze within which WFMS operate; to model and analyze
processes; to describe the functionality and architecture processes; to describe the functionality and architecture of WFMS
of WFMS
Why Business Process Redesign ? Why Business Process Redesign ?
IT has a role to play in a way how business IT has a role to play in a way how business processes are organized
processes are organized
why this is good ? why this is good ? - because every algorithm - because every algorithm defines a process
defines a process
processes can be defined and analyzed clearly processes can be defined and analyzed clearly
definition of a process is important to decide definition of a process is important to decide whether to implement a process
whether to implement a process
will the process work properly will the process work properly ? ?
• analyze the processanalyze the process
• use formal methods to identify properties or lack of themuse formal methods to identify properties or lack of them
• simulation techniques, computer animation simulation techniques, computer animation
Organizational Paradigm Shift Organizational Paradigm Shift
from ‘ from ‘ capacity utilization’ capacity utilization’ - i.e. the more you - i.e. the more you produce the better
produce the better
to ‘ to ‘ customer care’ customer care’ - i.e. the more (satisfied) - i.e. the more (satisfied) customer you have the better
customer you have the better
WFMS should WFMS should : :
• make ‘work controllable’, make ‘work controllable’,
• to encourage communication between employees, to encourage communication between employees,
• to build a bridge between ‘people’s work’ and to build a bridge between ‘people’s work’ and
‘computer applications’
‘computer applications’
Fundamental Concepts of Workflows Fundamental Concepts of Workflows
tasktask - logical, indivisible, unit of work - logical, indivisible, unit of work
casecase - examples: insurance claim, mortgage - examples: insurance claim, mortgage application; case always has a particular state application; case always has a particular state
processprocess - how to carry out a particular category of - how to carry out a particular category of cases
cases
atomicityatomicity - tasks of work may be assumed to be atomic - tasks of work may be assumed to be atomic
granularity of tasksgranularity of tasks - discretization of work - discretization of work
economy of scale economy of scale - one process serves many cases- one process serves many cases
statestate - composed of three elements: - composed of three elements:
• the values of relevant case attributesthe values of relevant case attributes that change as the case that change as the case progresses being processed
progresses being processed
• the conditionsthe conditions that have been fulfilled that have been fulfilled
• the contentthe content of the case of the case
Fundamental Concepts of Workflows, Fundamental Concepts of Workflows,
ctnd.
ctnd.
routingrouting - i.e. routing the case; the life cycle of a case - i.e. routing the case; the life cycle of a case is laid down in the process
is laid down in the process
work itemwork item = case + task; actual piece of work; = case + task; actual piece of work;
certain workitems can only be transformed into an certain workitems can only be transformed into an
activity once they have been triggered activity once they have been triggered
activityactivity = case + task + resource; i.e. actual = case + task + resource; i.e. actual performance of a piece of work
performance of a piece of work
enactment of a caseenactment of a case - triggers are required: - triggers are required:
• a resource initiativea resource initiative (employee taking a work item from a (employee taking a work item from a tray)
tray)
• an external event (arrival of a message)an external event (arrival of a message)
• a time signala time signal (the generation of a list of orders at 6 pm] (the generation of a list of orders at 6 pm]
Subdivision of processes Subdivision of processes
primary - to produce products or services primary - to produce products or services
(production processes); they deal with cases for (production processes); they deal with cases for a customer; customer-oriented even when a
a customer; customer-oriented even when a customer is not known
customer is not known
secondary secondary - support primary processes (support - support primary processes (support processes) - maintaining the means of
processes) - maintaining the means of production, personnel management
production, personnel management
tertiary tertiary - managerial processes that direct and - managerial processes that direct and coordinate primary and secondary processes, coordinate primary and secondary processes, maintenance of contacts with financiers and maintenance of contacts with financiers and stakeholders
stakeholders
Three dimensions of Workflow Three dimensions of Workflow
case dimension case dimension - workflow systems deal with - workflow systems deal with cases; cases have case types (such as
cases; cases have case types (such as
insurance claim, mortgage application, tax insurance claim, mortgage application, tax
return, patient in a hospital) return, patient in a hospital)
control flow dimension control flow dimension - partial order of tasks - partial order of tasks within a specific case, i.e. how to
within a specific case, i.e. how to systematically deal with a case systematically deal with a case
resource dimension - resource dimension - human and technical human and technical resources needed to process a case
resources needed to process a case
Organizational Structures Organizational Structures
the hierarchical organization the hierarchical organization - typically - typically functional or capacity groups
functional or capacity groups
the matrix organization the matrix organization - used by building - used by building contractors, installation firms, software
contractors, installation firms, software
houses, typically within one single company houses, typically within one single company
the network organization the network organization - similar to matrix - similar to matrix
organization except that typically composed of organization except that typically composed of
actors not working in the same organization
actors not working in the same organization
How to allocate staff into How to allocate staff into
departments?
departments?
the capacity group the capacity group - people with the same skills, - people with the same skills, they are interchangeable; head of the department they are interchangeable; head of the department keeps its members ‘up-to-date’ (through training);
keeps its members ‘up-to-date’ (through training);
example - typists, maintenance, engineers example - typists, maintenance, engineers
the functional department the functional department - performs - performs
interdependent group of tasks, each often interdependent group of tasks, each often
requiring the same skills; head responsible for the requiring the same skills; head responsible for the work of the department (accounting, marketing) work of the department (accounting, marketing)
process or production departments process or production departments - department is - department is responsible for a complete business process
responsible for a complete business process
Three Good Reasons for Using Three Good Reasons for Using
Petri net-based WFMS Petri net-based WFMS
Reason 1 Reason 1 : Formal Semantics despite the : Formal Semantics despite the Graphical Nature; Petri nets can be used Graphical Nature; Petri nets can be used
to model primitives defined by WfMC to model primitives defined by WfMC
Reason 2 Reason 2 : State-based instead of Event- : State-based instead of Event- based (today’s WFMS are event based, based (today’s WFMS are event based,
i.e. tasks/transitions are modeled and i.e. tasks/transitions are modeled and
states between tasks are suppressed states between tasks are suppressed
Reason 3 Reason 3 : Abundance of Analysis : Abundance of Analysis
Techniques and related Software Tools
Techniques and related Software Tools
Reasons for Using State-based Reasons for Using State-based
Description for WFMS Description for WFMS
Reason 1:Reason 1: It allows for a clear distinction between the It allows for a clear distinction between the enabling of a task and the execution of a task (issue of enabling of a task and the execution of a task (issue of
task triggering: automatic, user, message, time) task triggering: automatic, user, message, time)
Reason 2:Reason 2: Possibility of Possibility of competitive taskscompetitive tasks; two ; two
tasks are competitive if both are enabled and only one tasks are competitive if both are enabled and only one of them may be executed (event-based system can not of them may be executed (event-based system can not
model this situation) model this situation)
Reason 3:Reason 3: Sometimes it is necessary to Sometimes it is necessary to withdraw a withdraw a casecase; in PNs this means removal of tokens and ; in PNs this means removal of tokens and
triggers that correspond to the cancelled case triggers that correspond to the cancelled case
Reason 4:Reason 4: Moving a caseMoving a case from one location to from one location to
another (IOWF) is easy - transfer of tokens and triggers another (IOWF) is easy - transfer of tokens and triggers
Mapping Workflow Concepts onto Mapping Workflow Concepts onto
Petri nets Petri nets
processprocess
- is specified as a specific Petri net - is specified as a specific Petri net
conditionsconditions
- are represented as places of Petri nets - are represented as places of Petri nets
taskstasks
- are represented as transitions of Petri net - are represented as transitions of Petri net
routingrouting
- a specific path of case processing through - a specific path of case processing through Petri net describing the process
Petri net describing the process
casecase
- represented as a token or set of tokens located - represented as a token or set of tokens located in various places of Petri nets
in various places of Petri nets
atomicity of tasksatomicity of tasks
- atomic tasks represented as - atomic tasks represented as transitions can be refined into more detailed Petri net;
transitions can be refined into more detailed Petri net;
process or part of a process can be abstracted into a process or part of a process can be abstracted into a single transition or single place
single transition or single place
Common Errors in Process Common Errors in Process
Definition Definition
tasks without input and output conditions tasks without input and output conditions
dead tasks dead tasks - tasks that can never be - tasks that can never be carried out
carried out
deadlock deadlock - jamming a case before - jamming a case before reaching condition called ‘end’
reaching condition called ‘end’
livelock livelock - trapping a case in an endless - trapping a case in an endless cycle
cycle
dangling tasks dangling tasks - i.e. activities still take - i.e. activities still take
place after the case has been completed
place after the case has been completed
Fundamental Issues in Fundamental Issues in
Workflows Workflows
Basic Definitions of Workflows and WFMS Basic Definitions of Workflows and WFMS
Workflow Patterns Workflow Patterns
Workflow vs. Inheritance Workflow vs. Inheritance
Dealing with Change in Workflows Dealing with Change in Workflows
Software Architectures and Workflows Software Architectures and Workflows
Verification of Workflows & Woflan Verification of Workflows & Woflan
Inter-organizational Workflows and E- Inter-organizational Workflows and E- commerce
commerce