Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Modeling
Eswar Sivaraman and Manjunath Kamath
School of Industrial Engineering & Management
Oklahoma State University
Stillwater, OK 74078
Abstract
We review the fundamentals of business process modeling, and the correctness issues that arise in the con-
ceptual specification of workflows to support workflow management systems (WfMS). WfMS’s automate the
control and coordination of distributed tasks, and also manage associated resource assignments within pre-
specified organizational contexts. The increased efficiency of automated control and coordination of business
processes is made possible by task control constructs that model behaviors like concurrency, asynchronism,
and choice. However, there is a real danger of introducing control flow anomalies and behavioral inconsis-
tencies like deadlock, livelock, imperfect termination, and multiple task repetitions. We illustrate the use
of Petri nets for formalizing business process specifications and the use of analytical techniques to support
verification studies, and conclude with a few issues that merit further research.
Keywords
Business Process Modeling, Workflow Management, Petri Nets, Verification
1 Introduction
The need for re-designing existing business processes, improving process efficiencies, coordinating technol-
ogy with distributed manpower and material resources, and enforcing rapid process development and design
makes it imperative to adequately represent, study, and automate business processes[6, 9]. Business processes
are market-centered descriptions of an organization’s activities, comprising both material processes (involv-
ing physical transformation, assembly, manufacture, etc.) and information processes (involving semi- or fully
automated tasks requiring information infrastructure and support)[9]. Business process modeling (BPM)
provides a conceptual basis for the specification of all business procedures. It aids the coordination and in-
tegration of distributed resources, tasks, and individuals, the effective management of all of which is critical
to sustaining organizational capabilities[5]. Workflow Management supports both business process specifi-
cation and automated execution of business procedures, and is a next-generation extension to BPM efforts
that emphasizes the increased role that information systems have come to play in today’s businesses[21].
Workflow Management involves two phases – (i) the modeling phase that abstracts from business procedures
and defines computer-implementable workflow specifications, and (ii) the execution phase that executes in-
stances of the workflows to meet business requirements, and both these phases are managed and coordinated
by a Workflow Management System (WfMS).
Essentially, a WfMS integrates and automates the execution of steps that comprise a business process [12],
and simultaneously manages resource (information, people, etc.) assignments. Figure 1 highlights the three
major functional areas that a WfMS provides support for, namely, workflow design & definition (the context
of this paper), workflow instantiation & control, and interaction with users & other applications[12, 20]. This
paper focuses on the modeling and analysis issues involved in establishing logical and syntactical correctness
of business process specifications before they are implemented. Other issues related to post-implementation
correctness, namely, data consistency and database integrity (i.e., transactional guarantees), and exception
(i.e., failure) handling required for run-time control[5, 14, 13] are beyond the scope of this paper.
Workflow Instantiation Interaction with Users &
Workflow Design & Definition
& Control Application Tools
Human
Resources
Process
Changes Workflow
Process
Enactment
Definition
Service
Applications
Modeling and & IT Tools
Analysis Tools
Build-Time Run-Time
The complete specification of business processes includes (i) the control flow, i.e., the partial and total
ordering specifying the sequence of the various tasks, (ii) the data flow, i.e., the information requirements,
and the resource (people, machines, etc.) allocations for the execution of the various tasks. This is required
for identifying the input and output requirements for each task, and also to put together a skeletal outlay
of the process that is both conceptually and descriptively complete. There has been siginificant research in
developing process metamodels, namely, a representational language in which to express workflow models
amenable to automation – the reader is referred to [27, 15, 5] for an excellent review of the same. Additionally,
the Workflow Management Coalition (WfMC) has been working toward standardizing workflow specification
languages to enable interoperability between different vendors, and has evolved a process modeling language,
the syntax of which should be supported by all WfMSs – this is discussed further in Section 2. Stated simply,
the ability to represent behaviors like concurrency and choice increases the chances of defining logically
incorrect models with control flow errors, the execution of which could result in deadlock, livelock, etc. The
focus of this paper is to highlight the versatility of Petri nets as a technique for formalizing business process
models to analyze verification issues, and to support performance evaluation studies.
Sequential Control
Task Task
1
AND Choice AND
7
Task
5
XOR XOR
Task
6
For the remainder of our discussion, we will consider a business process model to be a collection of elements,
where an element is either a task, or a logical operand that serves to route the flow of control (parallel and/or
sequential) between the tasks – these are based on generic modeling concepts prescribed by the WfMC[26].
2.1 Analysis Issues in Business Process Modeling
The ease and flexibility of graphical modeling languages brings with it a possibility for introducing control
flow anomalies in process specifications. Table 1 illustrates a few of the major control flow verification issues,
i.e., checking for deadlock, livelock, multiple repetition, etc., and [18] presents a more elaborate presentation
on other issues that are further classified as simple and complex. Additionally, improving process efficiency,
performance evaluation, etc., requires that we have a definite framework within which to formulate questions
to study all aspects of processes – data and resource allocations, and task definitions.
T2
Livelock: When control flow fails to exit
T1 XOR
out of a set of previously executed tasks. T3 T4
An incremental approach to formalizing and analyzing business process models is suggested, as follows:
Control Flow Correctness: Create a control-flow model specifying just the tasks, and the ordering re-
quired within, without the overhead of resource, data requirements - Petri nets have emerged as a very
popular technique for such abstractions[20, 1]. These models have been used to answer the following
questions: (i) the initiation problem is to determine if there is a sequence of task executions that will
lead to the execution of a particular task – this has been shown to be NP-complete[11], and (ii) the
termination problem is to determine if the control-flow specification will lead to a terminal state – this
has been shown to require exponential storage requirements[11].
Data Flow Correctness: Extend the control-flow model with the operational specifics of resource require-
ments, allocations, etc., thereby specifying the data flow as well. A few questions that could be posed
to this model are: (i) given a task that we need to execute, what other tasks must be executed before
we can fulfil the input requirements (resource and data) for the chosen task?, (ii) if a particular task
is disabled, what other tasks will be affected? and (iii) if a resource, or data element is disabled, will
the process be affected?, to state just a few. Metagraphs[3] appear very promising as an analytically
sound technique, with much visual appeal, to address these questions – this is a relatively new concept,
and research is still forthcoming.
Between the two, control-flow correctness ensures that the process, by design, is correct, independent of how
it is implemented or monitored, and for the remainder of our discussion, we will explore the use of Petri
nets for establishing the same.
Sequential Control
Asynchronous
Task 2
Completion
Task 3 Task 4
Concurrent
Choice
Control
Stop
Task 5
Task 7
Start
Task 1
Task 6
Petri-nets offer the advantage of graphical appeal coupled with a rigorous formalism that has found tremen-
dous use in modeling systems and processes that exhibit asynchronism, concurrency, and determinism[17, 7].
Petri nets are especially attractive for formalizing and analyzing business processes for the following rea-
sons: (i) clear and unambiguous description of process logic, (ii) intuitive ease and feel of a self-documenting
graphical formalism that retains complete conceptual clarity, and (iii) extensive analysis capabilities that
vastly extend the power and usefulness of structured process description languages like IDEF3. The control
flow issues highlighted in section 2.1 are readily expressed in Petri-net theoretic terms, e.g., reachability,
deadlock, liveness, etc.[7]. Moreover, Petri nets allow for a study of both (i) structural properties pertaining
to the static aspects of the process’s definition, and (ii) behavioral properties pertaining to the dynamic
aspects of the process observed during its execution[7, 17], the latter being useful in deriving summary
measures (e.g., cycle time) for performance evaluation studies[25].
Activity Activity 2
AND-Join: A point within 2
Activity
Activity 1
AND-Join: A point within 1
Activity
Activity 2
XOR-Split: A point within 2
Activity Activity 1
XOR-Join: A point within 1
Iteration/Feedback Rout-
ing: A section within the Activity Activity
Activity 1 Activity 2
XOR XOR
process model that may re- 1 2
Acknowledgments
This research was supported, in part, by NSF Grant #DMI-0075588 under the Scalable Enterprise Sys-
tems Initiative. We would also like to thank Dr. Nikunj Dalal, Dr. William Kolarik, Mr. Amit Chaugule,
Mr. Ramasamy ChinnanChetty, and Mr. Karthik Ayodhiramanujan for their support and comments.
References
[1] Aalst, W.M.P. “The Application of Petri Nets to Workflow Management”. The Journal of Circuits,
Systems, and Computers, 8(1):21–66, 1998.
[2] Aalst, W.M.P. “Workflow Verification: Finding Control-Flow Errors Using Petri-Net Based Tech-
niques”. In Aalst, W.M.P., Desel, J., and Oberweis, A., editors, Business Process Management –
Models, Techniques, and Empirical Studies, volume 1806 of Lecture Notes in Computer Science, pages
161–183. Springer-Verlag, 2000.
[3] Basu, A. and Blanning, R.W. “A Formal Approach to Workflow Analysis”. Information Systems
Research, 11(1):17–36, 2000.
[4] Chen, P. A Use Case Driven Object-Oriented Design Methodology for the Design of Multi-Level Work-
flow Schemas. PhD thesis, Department of Computer Science, Ill. Inst. of Tech., Chicago, IL, 2000.
[5] Cichocki, A., Helal, A., Rusinkiewicz, M., and Woelk, D. Workflow and Process Automation: Concepts
and Technology. Kluwer Academic Publishers, MA, 1998.
[6] Curtis, B., Kellner, M.I., and Over, J. “Process Modeling”. Comm. of the ACM, 35(9):75–90, 1992.
[7] Desel, J. and Esparza, J. Free Choice Petri Nets. Cambridge University Press, 1995.
[8] Fan, W. and Weinstein, S. “Specifying and Reasoning About Workflows with Path Constraints”.
In Proceedings of the 5th International Computer Science Conference(ICSC’99), HongKong, China,
volume 1749 of Lecture Notes in Computer Science. Springer, Dec. 13-15 1999.
[9] Georgakopoulos, D., Hornick, M., and Sheth, A. “An Overview of Workflow Management: From
Process Modeling to Workflow Automation Infrastructure”. Distributed and Parallel Databases, 3:119–
153, 1995.
[10] Hofacker, I. and Vetschera, R. “Algorithmical Approaches to Business Process Design”. Computers &
Operations Research, 28:1253–1275, 2001.
[11] Hofstede, A.H.M., Orlowska, M.E., and Rajapakse, J. “Verification Problems in Conceptual Workflow
Specifications”. Data & Knowledge Engineering, 24(3):239–256, 1998.
[12] Hollingsworth, D. “The Workflow Reference Model”. Technical Report WfMC-TC-1003, The Workflow
Management Coalition, http://www.wfmc.org/standards/docs.htm, 1995.
[13] Kamath, M.U. Improving Correctness and Failure Handling in Workflow Management Systems. PhD
thesis, Department of Computer Science, University of Massachusetts, Amherst, MA, 1998.
[14] Kamath, M.U. and Ramamritham, K. “Correctness Issues in Workflow Management”. Distributed
Systems Engineering Journal, 3(4):213–221, December 1996. Special Issue on Workflow Systems.
[15] Lei, Y. and Singh, M.P. “A Comparison of Workflow Metamodels”. Proceedings of the ER-97 Workshop
on Behavioral Modeling & Design Transformation Issues and Opportunities in Conceptual Modeling,
Los Angeles, CA, November 1997. http://osm7.cs.byu.edu/ER97/workshop4/ls.html.
[16] Mentzas, G., Halaris, C., and Kavadias, S. “Modelling Business Processes with Workflow Systems: An
Evaluation of Alternative Approaches”. Int. J. of Information Management, 21:123–135, 2001.
[17] Murata, T. “Petri Nets: Properties, Analysis, and Applications”. Proceedings of the IEEE, 77(4):541–
580, 1989.
[18] Sadiq, W. and Orlowska, M.E. “On Correctness Issues in Conceptual Modeling of Workflows”. Pro-
ceedings of the 5th European Conference on Information Systems (ECIS’97), Cork, Ireland, June 19–21,
1997. http://www.dtsc.edu.au/praxis/Publications/index.html.
[19] Sadiq, W. and Orlowska, M.E. “Analyzing Process Models using Graph Reduction Techniques”. In-
formation Systems, 25(2):117–134, 2000.
[20] Salimifard, K. and Wright, M. “Petri-Net based Modeling of Workflow Systems: An Overview”. Euro-
pean Journal of Operational Research, 134(3):218–230, 2001.
[21] Sheth, A., Aalst, W.M.P., and Arpinar, I. “Processes Driving the Networked Economy”. IEEE Con-
currency, 7(3):18–31, 1999.
[22] Singh, M.P. “Formal Semantics for Workflow Computations”. Technical Report TR-96-08, Department
of Computer Science, North Carolina State University, January 1996.
[23] Straub, P. and Hurtado, C.L. “The Simple Control Property of Business Process Models”. Pro-
ceedings of the XV Conference of the Chilean Computer Society, Arica, Chile, Oct. 30-Nov. 3, 1995.
ftp://ing.puc.cl/doc/techReports.
[24] Straub, P. and Hurtado, C.L. “Control in Multi-Threaded Information Systems”. Unpublished working
report, Computer Science Department, Catholic University of Chile, Santiago, Chile, 1997.
[26] WfMC. “Terminology & Glossary”. Technical Report WfMC-TC-1011, The Workflow Management
Coalition, http://www.wfmc.org/standards/docs.htm, 1999.
[27] WfMC – Work Group 1. “Interface 1: Process Definition Interchange Process Model”. Technical Report
WfMC-TC-1016-P, The Workflow Management Coalition, http://www.wfmc.org/standards/docs.htm,
1999.