23 – 24 September 2006, BULGARIA
1
AUTOMATION IN BUSINESS PROCESSES
Todor Stoilov, Krasimira Stoilova
Institute of Computer and Communication Systems-BAS
1113 Sofia, Acad.G.Bonchev str, Bl.2,
e-mail todor@hsi.iccs.bas.bg; k.stoilova@hsi.iccs.bas.bg
Bulgaria
Annotation: With the rise of the Web as the major platform for making data and services available for
both, humans and applications, a new challenge has become prevalent requiring the support of workflows
management. This is a mature technology for automating and controlling business processes. A general
task of the development of the workflow system in the current business activities is the implementation of
principles of the automatic control for business systems. These systems do not consist of pure technical
components, but they integrate both human and human-computer activities and non-automatic
interactions. Thus, the implementation of the principles of the automation will benefit the exploitation
behaviour of the business systems. This paper presents an implementation of a workflow system applied
for the academic practice of a research organization. Illustrations with application of workflow design
tools for modeling and execution are given.
Key words: automation of business processes, workflow management, choreography, orchestration
1. INTRODUCTION
The workflow management systems or business process management systems developed in
the late 1980s enable the automated coordination of activities, data and resources. This coordination
is formalized in a workflow model specified at the build-time stage [1]. The architecture of
workflow management systems can be separated in a development environment (modelling with
build time component) and an execution environment (run time engine component) [10]. Workflow
Management Systems are a mature technology for automating and controlling business processes
[4,5]. One widely accepted definition of workflow comes from the Workflow Management
Coalition [9]: “Workflow is the computerized facilitation or automation of a business process, in
whole or part”.
The “workflow management system” becomes important term. Workflow can be defined as
"the sequence or steps used in business processes" [6]. A general task of the development of the
workflow system in the current business activities is the implementation of principles of the
automatic control for business systems. These systems do not consist of pure technical components.
They integrate both human and human-computer activities and non-automatic interactions. Thus,
the implementation of the principles of the automation will benefit the exploitation behaviour of the
business systems.
2. WORKFLOW MANAGEMENT
Workflow Management is supporting and controlling the workflow. An important objective in
Workflow Management is to automatically route artefacts (documents, messages, e-mails) through
a network to actors having predefined roles. The routing is done according to a set of predefined
rules, and is often controlled by the state of the artefact (e.g., the price). Business rules are
particularly important for routing of artefacts.
2
PROCEEDINGS of the 20th International Conference SAER-2006
Workflow management deals with supporting business processes in organizations and it
involves managing the flows of work through an organization [1]. Workflows are a collection of
coordinated tasks designed to carry out a well-defined complex process [7]. A workflow
management system is a generic information system that supports modelling, execution,
management and monitoring of workflow. Many different workflow management systems have
been developed that focus on different application domains and provide different functionality [2].
Workflow management lacks a standardized theory that provides a theoretical background for
workflows like the relational algebra provide for databases [1]. Despite efforts of standardization
bodies, there is no consensus on the representation or conceptual model of workflow processes [8].
In this diverse and complicated landscape, it is a challenge to evaluate and compare the
functionality of various workflow management systems and to survey the functional requirements
of workflow management systems. A number of approaches attempt to address this situation. In [3]
there are described a lot of essential perspectives and aspects of comprehensive workflow
management functionality. They provide a structure in the complex environment of workflows. In
[2] it is systematically analyzed available functionality in existing workflow management systems,
and they are categorized in a number of workflow patterns. For the evaluation of the software tools,
deploying workflow technologies, an integrated view is applied combining both qualitative and
quantitative indicators to assess them for their support in workflow management systems.
In the sixties information systems were built on top of a small operating system with limited
functionality. These systems mainly consisted of tailor-made applications. New types of product
software added new functionalities since then. Database management systems offer functionality,
which used to be in tailor-made applications. This trend leads to the shifted emphasis from
programming to assembling of complex software systems. The coding of individual modules is
already an old approach. The challenge now is orchestrating and combining pieces of software from
the different functional layers. Another trend is the shift from data to processes [2]. The same
source points out the seventies and eighties as dominated by data-driven approaches. At that period,
the information technology is associated with storing and retrieving information and as a result,
data modelling was the starting point for building an information system. The processes had to
adapt to information technology and modelling of business processes were often neglected. On the
contrary, today the emphasis is on processes, for instance business process reengineering.
3. CHOREOGRAPHY LANGUAGES
A common characteristic of choreography languages is that they concentrate on the
specification of the observable behaviour of communicating services. They describe which
messages are exchanged between services in a specific situation. Therefore they do not prescribe
how the services have to be implemented to be able to exchange the messages. Choreography
languages are not executable. The refinement of the specification to executable languages like
orchestration languages has to be supported by appropriate mappings and transformations between
both kinds of languages.
Comparing choreography languages with programming languages shows many similarities.
The definition of data types has to be supported, either explicit or implicit. The definition of control
structures has to be supported. Calls to existing functions/services have to be supported. Newer
standards are based on formal calculi like Petri nets or the Πi-calculus.
4. ORCHESTRATION LANGUAGES
The term “orchestration” was introduced to describe the flow of communication as multi-step,
long-lived business process from one party’s view. Languages used to write these processes in a
way that software systems (i.e. workflow engines) can execute them are called orchestration
23 – 24 September 2006, BULGARIA
3
languages. There has been much effort invested in orchestration languages area in the last 15 years.
The early work included XLANG designed by Microsoft for their BizTalk Server and WSDL
proposed by IBM. These two languages have been superseded by BPELWS created by Microsoft,
IBM and BEA. Another effort was made by the WfMC and resulted in the publication of XPDL in
version 1.0 in 2002. In order to reach full compliance with BPMN work, XPDL has been further
developed into version 2.0. The third important initiative in the orchestration standards area was
created by OASIS, UN/CEFACT, and commercial organizations such as Intel or SAP. As a result
of these efforts, the ebXML family of standards has been published (with CPPA as an orchestration
language). Version 2.0 has been approved as an ISO standard.
5. A NETWORKED WORKFLOW INTEGRATION EXAMPLE
To illustrate the possible integration of networked workflow components here are introduced
examples of services. It is examined the possible integration, applying the methodology of the
workflow management. These services are propriety ones, developed and used by an academic
institution like Institute of computer and communication systems, Bulgarian Academy of Sciences.
Using their integration, it is illustrated the operational rules applied with the workflow tools for
design and execution. The services applied here origin from the academic practice. They are called
service for “Scientific Citation” and service “Paper Submission”. The idea behind the examples is
to integrate these services. When a paper is accepted for publication by the service Submission, the
appropriate references from the paper have to be copied and included in the database of the service
Citation. Thus all actual and newly published and accepted papers will be referred by the service
Citation.
A choreography approach for the creation of workflow “Request for a service scientific
citation”. A customer contacts the service provider to obtain an offer for a Scientific Citation (SC).
The architecture of the service “Scientific Citations” is designed by Enhydra Java Workflow Editor
(JaWE) and it contains three hierarchical tiers.
The first functional tier defines the clients (User) of the workflow system. The user is
assumed to apply web browser for the invocation of the SC service. The service is performed by the
main server side application. The communication between the User and the SC service is
implemented by HTTP protocol.
The second tier consists in a Web server. After a User’s request for SC service, the server
starts to process the SC request.
The third level is constituted by database engine. The server side applications using the input
object of the SC service processes the request from the database and constitutes the LISTS of the
output object of the SC service.
The general functional scheme of the SC service with the main architecture blocks,
performing the service, is given in Fig.1.
To get experience with the workflow standards applied for workflow modeling and
management the Citation Service has been specified with the workflow software suite Enhydra Java
Workflow Editor (JaWE). This product supports the XPDL standard for workflow modelling. The
core functions related to searching and retrieving functionalities are implemented as:
• Specification of the structure of the objects exchanged between the client machine and the
database on the server machine.
• Specification of the results set (definition of the LIST objects).
• Application of modelling and execution objects of Enhydra workflow platform.
• Formal presentation in XPDL standard of the SC service.
PROCEEDINGS of the 20th International Conference SAER-2006
4
Users
HTTP/HTML
http://hsi.iccs.bas.bg/Citation/index.php
Internet
First tier
OS:
Windows
Web Server:
Apache
Dynamic
Pages :
PHP
Second tier
Request
Response
My SQL
Third tier
Database
Server
Fig. 1. Graphical representation of the components of the workflow “Science Citation”
The SC service in the Enhydra platform is constituted by four functional packages: Citation
Process, General Search Citation, Search Citations members only, Edit New Data. The workflow
network for the Citation Service is presented in Fig. 2, [11]. It includes four main packages:
Citation Process, General Search Citation, Search Citations members only, Edit New Data
processes. This scheme presents the workflows and the appropriate logical rules, which take place
during the SC service invocation.
Fig. 2. Science Citations as Workflow Service - basic model, Process level.
23 – 24 September 2006, BULGARIA
5
Two main sub-processes: “Enter General Search criteria” and the sub-process “Enter search criteria
Members only” are derived explicitly for the workflow modelling. The sub-processes functional
architecture is given in Fig 3, [11].
Fig. 3. Workflow sub-process “Search”
Thus, the modelling of the SC services by Enhydra platform starts with building a MetaModel Framework, which describes the functional architecture of the services. This meta-data
model identifies commonly used entities and sub-processes within the Package, their relationships
and attributes. A variety of attributes describe the characteristics of the SC sub-processes. The tool
Enhydra Java Workflow Editor allows the designer to create, manage and review workflow process
definitions and formalize them in XPDL standard. An XPDL file is created and used for the
execution at runtime by a workflow engine. In particular Enhydra Shark engine supports both
model simulation, model execution and model monitoring workflow functionalities, Fig. 4.
Usage of entities and attributes
Simulation
MetaModel
Framework
JaWE Internal
Representation
X
P
D
L
Workflow
Engine –
Enhydra
Shark
Execution
Monitoring
Import/Export of XML representation
Fig. 4. The workflow SC service execution with Enhydra platform
PROCEEDINGS of the 20th International Conference SAER-2006
6
6. CONCLUSIONS
For the implementation of workflow mangement, it is necessary to keep a common standard for the
workflow service specification and modelling. The orchestration tools, which perform execution of
the workflow services, have to support the compatibility with the Designer workflow tools.
Particularly, the SC service has been modelled with tools, supporting XPDL workflow standard.
The implementation of the service will have different instances according to the workflow engine
invocation. The general idea is to integrate the output of the Paper Submission service for the
accepted papers with the databases of Science Citation service. Thus, in an automatic way the
references of the new accepted papers can be transmitted to the repositories of the Science Citation
service. This integration can be implemented in a common workflow management system,
negotiating two workflow services.
REFERENCES
1. W. M. P. van der Aalst, The application of Petri nets to workflow management. The Journal of
Circuits, Systems and Computers, 8(1), p.21-66, 1998
2 W. M. P. van der Aalst, A. H. M. ter Hofstede, B. Kiepuszewski, and A. P. Barros, Workflow
patterns. Distributed and Parallel Databases, 14(1), .5-51, 2003
3. Jablonski S. and C. Bussler, Workflow Management: Modeling Concepts, Architecture and
Implementation, 1996. International Thomson Computer Press, London.
4. Kappel G., S. Rausch-Schott, W. Retschitzegger, A Framework for Workflow Management
Systems Based on Objects, Rules and Roles, 2000. ACM Computing Surveys Electronic
Symposium on Object-Oriented Application Frameworks, M.E. Fayad (guest editor)
5. Leymann F. and D. Roller, Production workflow: concepts and techniques, 2000. Prentice-Hall
6. Marshak R. T., Perspectives on Workflow, In T. E. White, L. Fischer (ed.): New Tools for New
Times - The Workflow Paradigm, 1994. Future Strategies, Inc., Alameda, CA, USA, pp 165-176.
7. Mukherjee S., et al., Logic-based approaches to workflow modelling and verification. In J.
Chomicki, R. van der Meyden, and G. Saake, (eds.) Logics for Emerging Applications of
Databases, 2004 chap. 5. Springer-Verlag, Berlin, 167-202.
8. Sheth A. P., W. M. P. van der Aalst, I. B. Arpinar, Processes driving the networked economy,
1999. IEEE Concurrency, 7(3), 18-31.
9. WfMC, Glossary, Terminology and Glossary, 3rd Edition. Document No WFMC-TC-1011.
Workflow Management Coalition. Winchester, 1999.
10. zur Muehlen, Michael. Workflow-based Process Controlling. Foundation, Design, and
Application of Workflow-driven Process Information Systems, 2004. Logos Verlag Berlin, 2004,
ISBN 3-8325-0388-9.
11.VISP Target Workflow Technologies, D2.3 of VISP project, IST (FP6), no. FP6-027178.
Acknowledgement
This work is partly supported by EC Project VISP IST-2004-027178 and National Scientific Fund of
Bulgaria, project № ВУ-МИ-108/2005.