Agent-based Approach to Workflow and

YUNHE LIAO, HINNY P. KONG School of Electrical and Electronic Engineering Nanyang Technological University Block S1, Nanyang Avenue Singapore 639798

Abstract:- Enabled by the evolution in technology, companies are constantly trying to re-engineer their business processes to be more productive and efficient to respond to the quickly changing environment. A number of workflow management systems (WFMSs) have been developed by various research groups and companies to meet these requirements. After decades of evolution, they are moving from centralized to distributed mode and have become more and more flexible. However, in executing processes of different enterprises, flexibility and distributed processing capability are still the main challenges. In this paper, we propose an agent-based WFMS (aWFMS), which is designed to be flexible, distributed, easily integratable, and capable of executing processes enterprise-wide. XML is chosen as our agent communication and process definition language. The proposed model is applied to Supply Chain Management (SCM) applications.

Keywords: - Workflow, Workflow Management System, Agent, XML, Supply Chain Management

1. Introduction restricted functionality are the main reasons that preventing companies from investing in workflow. Workflow as a concept has been existed for Another interesting phenomenon is that despite the decades. The earliest known WFMS is Officetalk large number of technical users who need to developed by Ellis and Nutt [1] in the Xerox PARC. customize their own workflow solutions, most existing In the 1980s, some office automation and document WFMSs target only at non-technical users. Besides imaging workflow product have been developed [2]. workflow functionality they also provide high level Since the early 1990s, workflow has been the focus visual tools that support workflow configuration, but of intense activity in terms of products, standards and are close-ended system that are not extendable or research work [3]. There are various definitions been programmable [6]. The functionality gap between the proposed for Workflow and WFMS over the years. current WFMSs and requirements of inter-enterprise In 1993, some workflow vendors, Analysts and applications and technical users suggests the future Research Groups came to form the Workflow direction of research for workflow management. Management Coalition (WfMC) [4]. WfMC now is the major group that involves in workflow In this paper, we propose an aWFMS model based management standardization. on IBM’s Aglet Software Development Kit (SDK) (http://www.trl.ibm.com/aglets/). The proposed Despite the potential benefits that workflow aWFMS consists of various types of agents. We technology can bring to companies and the large define the abstract class for each type of agent. New number of WFMSs available in the market, Amit and agents can be built by developers and plugged into his colleges from Georgia [5] observed that current the aWFMS to support various applications. By using WFMSs were not quite successful. And they component agents to build an aWFMS, great concluded that lack of flexibility, real standard, and flexibility and integrability can be achieved. Workflow

1 process can be executed distributively over a few The new system is named Exotica/FMQM. In the aWFMSs that cooperate with each other using new system, execution of is agents. XML is chosen as our agent communication distributed. Each node of the process maintains the language. required persistent storage.

The rest of this paper covers a review of some of the This information is used to recover from failures better known WFMSs (Sect. 2), IBM’s ASDK and occurred at this node. A messaging system called XML technologies (Sect. 3), our proposed WFMS MQSeries is used in Exotica/FMQM to support model (Sect. 4), and demonstration of this model in asynchronous communication between different SCM applications (Sect. 5), and opportunities for parties of the WFMS. further work (Sect. 6). · The Mentor-lite WFMS 2. Review of Existing WFMSs The Mentor (Middle ware for Enterprise- wide Workflow Management) is a collaboration A good number of WFMSs were offered in the project of the University of Saarland and the Union market in the 1990s, such as I-Flow from the Fujitsu Bank of Switzerland. The early version of workflow Software Corporation [7], Emailflow for management system models workflow with state and Exchange/SMTP from Docman [8], EntireX from activity charts [14]. Initially it focused on deriving Software AG [9], Exitoca/FMQM from IBM [10], distributed workflows starting from formal FloWare from Plexus [11], JetForm Workflow from specifications. An that transforms a Jet Form [12], Livelink Workflow from the Open centralized state and activity chart into a provably Text Corporation [13], Mentor-lite from University of equivalent partitioned one and is suitable for Saarland [14], WIDE from the WIDE research group distributed execution was developed. As work went [15], Workflow Suite from the Ultimus Corporation on, the researches realized the limitations of the [16]. The number is estimated to be between 200-300 workflow architectures. in 1999 [5]. Herein, four of the WFMSs that have deeper impacts on workflow technology are Consequently they continue to work on Mentor-lite, a reviewed: Exitoca/FMQM, Mentor-lite, WIDE and second-generation Mentor system. Mentor-lite is a EntireX. lightweight WFMS. It separates the workflow kernel functionality from the additional functionality of · Exitoca/FMQM From IBM workflow systems, and it supports the incremental FlowMark is the initial workflow product from IBM integration of workflow technology within existing [9]. It is built based on the client/server architecture. business environments. System components like The server, in turn is a client of a centralized history management and worklist management are , ObjectStore, where both runtime and extensions of the kernel. An invocation interface for buildtime workflow information is stored. At runtime, application programs is provided by a generic IDL information flows from the database to the server, interface on the engine side and specific wrappers on from the server to the runtime client, and vice versa. the application side. The centralization of database forces the clients to be connected to the server at all times to be able to The workflow engine kernel consists of three progress in their work, thus it is vulnerable to server components: (i) the workflow specifications failures and offers limited scalability due to the interpreter, (ii) the communication manager potential performance bottleneck caused by the (ComMgr), and (iii) the log manager (LogMgr), centralized server. To overcome these problems, which are closely integrated with the interpreter. IBM designed a distributed architecture for a WFMS They use state and activity charts for process with improved reliability and scalability. definition. A workflow process can be executed in a distributed manner over several workflow engines at

2 different sites. A separate workflow log is used at manages interactions between XML-enabled and each site where a Mentor-lite workflow engine is non-XML-enabled systems, EntireX Adapters are running. And a few workflow engines at different pre-build adapters that enable software integration sites can share the same worklist database for with standard applications such as Siebel, SAP and workflow process definition (workflow repository). Vantive. It also can integrate with various such as Oracle, Adabas; and other technologies such · The WIDE WFMS as CICS and MQSeries. WIDE is an European Esprit project involving Sema Group, Politencnico di Milano, University of Twente, The four WFMSs reviewed in this Section have ING Bank and the Manresa Hospital[15]. This successfully separated application logic and process project has focused on extending distributed and logic, and they evolved to support distribution active database technologies to the workflow arena. execution of processes. They have different The WFMS system architecture consists of three emphasizes. Exotica/FMQM has focused on using layers, the workflow server layer, basic access layer persistent messages for communication between and the database layer. The workflow engine distributed workflow engines. In the Mentor-lite, provides functionalities to run locally the tasks and attention is concentrated on separating the workflow their activation according to the Workflow schemas kernel functionality from the additional functionality stored in it, including exception support. It also typical of workflow systems, thus supports the interacts with other servers to perform tasks like task incremental integration of workflow technology distribution, remote execution and global transaction within existing business environments. The WIDE management. While Workflow specific data and has focused on extending distributed and active application data are provided by a database database technologies to the workflow product. management system. The interaction between the EntireX is XML-based, and can integrate different workflow engine and the database is through the databases and applications residing in different basic access layer module. platforms. EntireX also provides graphical user interface to enable workflow user to define · EntireX from Software AG processes. EntireX from Software AG is an XML-based workflow product. It claims to have over 1000 However, none of them has illustrated how to solve customers by the end of year 2001 [9]. And it the cross-enterprise boundary problem. It is difficult consists of three components, EntireX Orchestrator, for other WFMSs to communicate with them, EntireX Communicator, and EntireX Adapters. The particularly because of the different message formats Orchestrator allows systems to read and interpret used. And they are initially designed for certain data in different database (Oracle, SQL). Workflow applications, thus the functionalities are quite user can perform real-time data transformation by restricted. Out solution is presented in Section 4. graphical point-and-point click approach without coding. EntireX Communicator provides support for 3. Review on IBM’s Aglet SDK and simultaneous request and reply messages, it also

HTTP, WAP & Other Applications Workflow Workflow Administrative Data Control Data

Role Agent Workflow Control

Administration Agent Process Agent Definition Agent

Workflow Workflow Application Data Definition Data Mobile Agent 3 XML Format Messages Figure 1 The aWFMS Architecture XML Technology architecture that allows all applications on various machines on different platforms to interact. It is A software agent is a program that works on behalf quickly implemented by major vendors such as IBM, SUN aWFMS A aWFMS B and Microsof Local Remote Messages Local Workflow Workflow t since Other Messages Messages Other Control Control Agents Agents Agent Agent its Mobile release. Agent(s) Now nearly all Figure 2 aWFMSs Interoperability commer of a human user. A mobile agent has the added cial ability to travel autonomously from machine to DBMSs have been extended to handle XML machine on a network. An agent usually exhibits the documents [19]. For its open standard, XML is characteristics of autonomy, social ability and believed to be able to eliminate the need for customer reactivity [17]. Since workflow is concerned with the interface with every customer and supplier, allowing automation of procedures where documents, buyers to compare products easily across many information or tasks are passed between participants, vendors [20]. Thus, in our aWFMS, mobile agents using of agents especially mobile agents in WFMS carry XML-formatted messages to communicate to will greatly enhances its flexibility, efficiency and other agents residing in other aWFMSs. XML is also scalability. chosen as our process definition language, which is conforming to the XML process definition interface IBM Aglet SDK was chosen based on the strength proposed by WfMC [21]. of its features and our in-house experiences. Aglet SDK is a Java-based framework for implementing 4. The Agent-based WFMS (aWFMS) mobile agents. The SDK provides a comprehensive model object-oriented programming interface for developers. Process state is maintained when mobile agent travels from one site to another. An aglet can The proposed aWFMS model (Figure 1) consists of be created within the specified context from the four types of stationary agents and one type of specified class, it can be cloned, dispatched to mobile agent. All of them are implemented using the another host or be retracted from there. It also can base agent class defined in the aglet class library. be de-activated and temporally stored into disk and The stationary agents are: Workflow Control Agent, activated again into the same context when needed. Process Definition Agent, Role Agent, and It uses the delegation event model introduced in the Administration Agent. Process execution is JDK, and it adds three event listeners, which are: coordinated by various types of agents interacting clone listener, mobility listener and persistent listener with one another through message passing. Detailed to support various operations. Aglets can description of these agents is presented below: communicate with each other via message passing. MAgNET [18] is an e-commence product built with · Workflow Control Agent - This agent plays a ASDK. Their experiment results have demonstrated very important role in an aWFMS. It is the ‘brain’ of the feasibility and flexibility of Aglet SDK. a workflow engine. It interprets the process definition at run time, observes the execution state of process, XML is an ideal language for agent communication checks the transition conditions and assigns roles to and process definition for its open standard. XML the respective parties. It controls the instantiation of document is a truly simple, flexible and open all other agents and applications.

4 · Process Definition Agent – This agent helps carried by mobile agents that travel on the network to translate a business process from real world into a can only be of Java type that implements the formal, computer processable definition, which can java.io.Serializable interface [23]. XML is chosen as be interpreted by the workflow control agent at run the agent communication language, Document Object time. Model (DOM) as defined by W3C is used to · Role Agent – This agent is instantiated by represent a XML message and JAXP from SUN is the workflow control agent to perform various roles, chosen as the parser. However a DOM object itself such as analyzing data and performing calculations. is not serializable, it must go through a process Once activated, a role agent can keep listening to namely object-serialization before transfer. At the wait for next instruction from the workflow control receiver side, the serialized XML message is agent, it can also check the worklist maintained by converted back into an XML document object to be the workflow control agent regularly, pulling jobs handled by the agents. from the worklist. · Administration Agent - This agent allows the In our aWFMS model, the process definition agent administrator to add/modify parameters of the helps to translate a problem to a computer aWFMS. It presents a GUI to allow administrator(s) processable form, ensuring the separation of process to perform functions such as user management, role logic from application logic, thus the proposed is quite management and resource management. flexible. Workflow activities can be performed using · Mobile Agent - This is a special agent that various role agents which can be easily built from the can move from host to host under its own control, it abstract class we defined, ensuring the aWFMS to be helps realize the distribution execution of workflow scalable and integrable. Mobile agent is used to carry process. A mobile agent can be used to perform the data, process information to talk to agents in other role of data collection from many places, data aWFMSs, and open standard language XML is searching and filtering, dynamic data monitoring, chosen as the agent communication and process targeted information dissemination, negotiating, and definition language, making it possible to execute parallel processing [22]. processes across enterprise boundaries.

Each type of agent has its own database to support Security is essential to any WFMSs. As our aWFMS its operation (Figure 1). Agents in the aWFMS can consists of various types of agents, the security issue communicate by using mobile agents, remote of the aWFMS becomes the issue of agents. In our messages as well as local messages (Figure 2). Local system, domain authentication and agent authorization messaging can pass any kinds of objects as are used to prevent unknown agents from attacking arguments, while remote messaging and message

Buyer aWFMS

Receive Issue Get Query for Issue Receive Make product initial approval product order product full payment request payment

Query Issue Confirm Issue Issue Provide Receive Check Execute for transp. buyer buyer transp. product order stock order Info transp. order order payment payment Supplier aWFMS

Provide Receive Schedule Confirm Receive Execute order schedule Order transport order payment 5 Transport Provider (Logistics) aWFMS Figure 3 The Order Fulfillment Process in SCM the system. information it wants, or when all sites have been visited, it will return to the buyer aWFMS. 5. A Supply-Chain Workflow Meanwhile, if there is an offer found to be good enough, it will make a reservation. Management System 7. Buyer’s workflow control agent initializes a role agent to analyze all the information the querying The aWFMS model proposed in previous section is agent collects and issues an order. applied to Supply Chain Management (SCM). There 8. A supplier aWFMSs then checks the inventory are two predominant reasons for choosing SCM to level and sends a querying agent to distributors’ sites demonstrate: (1) SCM presents significant challenges to arrange the delivery schedule. in executing processes across enterprise boundaries 9. Now steps 4-6 are repeated between the suppliers [5]; (2) SCM plays a vital role in a modern and their respective transport (logistics) providers. enterprise. According a recent survey [24], supply- 10. A supplier then places an order for chain problems cost companies between 9 and 20 transportation and confirms the purchasing order percent of their value. With the overall B2B market from the buyer. estimated to reach $7 trillion in 2004 [25], it is 11. The buyer makes initial payment to the supplier. obviously that effective SCM solutions could save 12. The supplier makes initial payment to the companies billons of dollars and also make them transport (logistics) provider. more competitive in the new economic environment 13. The transport (logistics) provider confirms the [26]. delivery order with the supplier. 14. The supplier confirms the purchasing order with A SCM system usually consists of the following the buyer. parties: the buyer who initiates the order by 15. The buyer presents the result to the purchaser, specifying the purchasing criteria, the supplier who informs the respective parties, and records the analyses customer’s orders, verifies product storage purchasing order in its database. and schedules the delivery, and the transport 16. Now the three parties wait for the scheduled time (logistics) provider who distributes the goods. For the to execute the order. purpose of demonstration, our focus is on the order fulfillment process. Our system will handle this As each party in the supply chain has its own process process as shown in Figure 3. The detailed operations definition, the supplier itself can be a buyer and vice involved in this process are: versa. A multi-level supply chain process can be easily realized by using our aWFMS (Fig. 4). 1. A purchasing request is entered through an interface provided by the buyer aWFMS users through HTTP, WAP, or GUI as provided by the 6. Summary and Future Research workflow control agent. 2. The request is approved by a person in charge. Workflow technology remains an area that receives 3. A querying agent is dispatched with the buying much attention and evolving very fast. Observing that criteria to the destination(s) specified. existing WFMSs are not quite successful in the 4. A supplier aWFMS receives a querying agent and market, particularly due to lack of flexibility, provides the requested information. distributed processing capability, and interoperability, 5. Querying agent may continue to travel to the next an agent-based WFMS (aWFMS) model is hereby site and send a remote D message to the buyer Supply A I aWFMS to report the S Supply 1 T status. R Supply B 6. Once the querying I agent gets the Buyer B Supply Y U T Supply n O R 6 Supply Z S proposed in this paper. The proposed model has workflow management system,” 16th Int’l Conference demonstrated great flexibility, distributed processing on Data Engineering, 2000, pp. 685—686, 2000. capability and intergrativity. Agent and XML [15] S. Ceri, P. Grefen & G. Sanchez, “Wide - a distributed technologies enable the system to execute processes architecture for workflow management,” Public Documents from the WIDE Group, Dec. 1996. enterprise-wide. The aWFMS model was http://dis.sema.es/projects/wide/documents/ride- demonstrated successfully in the SCM application. pap.ps.gz. Next, it will be applied to project management. [16] The Ultimus Corporration. http://www.ultimus.com./ [17] M.J. Wooldridge & N.R. Jennings, “Intelligent Future research will focus on enhancing the security agents: Theory and practices,” The Knowledge of the proposed model, e.g., encrypt the data carried Engineering Review, vol.10, pp. 115-152, 1995. by mobile agents. For SCM applications, there is a [18] P. Dasgupto, N. Narasimhan, L.E. Moser & P.M. Melliar-Smith, “MAgNET: Mobile Agents for need to study how negotiation should be carried out Networked Electronic Trading,” IEEE Tran. between the buyer and suppliers using mobile agents. Knowledge and Data Engineering, vol.11, No.4, Aug 1999. References: [19] E. ertina & B. Catania, “Integrating XML and [1] C. Ellis & G. J. Nutt. “Computer science and office Databases”, IEEE Internet Computing, vol.5, Aug. information systems,” ACM Computing Surveys, vol. 2001. 12, pp. 27-60, Mar 1980. [20] J.G. Robert, M.T. Jay, & M. Bart, “An xml framework [2] R. Allen: Workflow, an Introduction. The Workflow for agent-based e-commence,” Communication of the Management Coalition, 2001. http://www.wfmc.org/ ACM, vol.42, Mar 1999. information/ Workflow- An Introduction.pdf. [21] Work Group 1: Interface1: Process Definition [3] C. Mohan, “Recent trends in workflow management Interchange Q&A Examples. The Workflow products, standards and research,” IBM, Aug 1997. Management Coalition, Jan. 1999. http://www.almaden.ibm.com/cs/exotica/ wfnato97.ps. http://www.wfmc.org. [4] The Workflow Management Coalition. [22] B. Venners, “Under the hood: Solve real problems http://www.wfmc.org. with aglets, a type of mobile agent,” Javaworld, 1999. [5] P.S. Amit, W.V. Aalst & B.A. Ismailcem, “Processes http://www.javaworld.com/javaworld/jw-05-1997/jw- driving the networked economy,” IEEE Concurrency, 05-hood.html pp. 18-31, July 1999. [23] D.B. Lange & M. Oshima: Programming and Deploying [6] D.A. Manolescu, “Micro-workflow: A workflow Java Mobile Agents with Aglets. Addison-Wesley, architecture supporting compositional object oriented vol.10, 1998. software development,” Ph.D. Thesis from the [24] T.J. Becker, “Putting a price on supply chain University of Illinois at Urbana- Champaign, 2001. problems: Study links supply chain glitches with http://micro-workflow.com/PhDThesis/. falling stock prices,” Georgia Tech Research News, [7] Fujitsu Software Corporation. http://www.i-flow.com/ . Dec 2000. [8] DocMan-Emailflow for Exchange/SMTP. http://www.gtresearchnews.gatech.edu/newsrelease/CHAI http://www.emailflow .com/Default.asp NR.html [9] Software AG Corporation. http://www.software [25] C.Pettey, “Future of online marketplaces and agusa.com/products/entirex/entirexframe.htm. Gartner’s B2B eMarketplaces [10] G. Alonso, C. Mohan & R. Giinthor, “Exotica/fmqm: A Conference, Oct. 2000. persistent message-based architecture for distributed http://gartner11.gartnerweb.com/public/static/aboutgg/pre workflow management,” IBM System Journal, Aug ssrel/pr20001004b.html. 1997. [26 M.N.Huhns & L.M.Stephens, “Automating Supply [11] BancTec‘s Plexus products. http://www.plx.com/ Chains,” IEEE Internet Computing, vol.5, Aug 2001. html/floware_scaleable/workflow.html. [12] Jet Form Corporation. http://www.jetform.de/. [13] Open Text Corporation. http://www.opentext .com/livelink/. [14] J. Weissenfels, M.Gillman, O. Roth, G.Shegalov & W. Wonner, “The mentor-lite prototype: A lightweight

7