1 a distributed and flexible workflow management system (wfms) maryam tehrany information science...

35
1 A Distributed and Flexible Workflow Management System (WfMS) Maryam Tehrany Information Science Department University of Otago at Dunedin, New Zealand

Upload: tyrone-anthony

Post on 23-Dec-2015

219 views

Category:

Documents


1 download

TRANSCRIPT

1

A Distributed and Flexible Workflow Management System (WfMS)

Maryam Tehrany

Information Science Department

University of Otago at Dunedin, New Zealand

2

Distributed Systems Technology (http://secml.otago.ac.nz/agents/dct&a-obj1.html)

Objective:Develop the infrastructure and a set of tools that facilitates the integration of disparate information sources and processing modules to form a dynamic and loosely coupled system.

 Projects:• Software agent platform (Opal)• Trust and commitment mechanisms for agent societies• Agent negotiation • Ontology representation• Modelling conversational protocols • Agent-enhanced workflow system

3

Outline

• Definition and motivation for a flexible WfMS

• System architecture

• Simulation results

• Monitoring and feedback

• Conclusion and Future work

• References

4

Acknowledgement

This work was supported by Otago Research Grant and the following students/researchers were involved in developing the system:

• Lars Ehrler – a fourth year exchange student from Germany.

• Martin Fleurke – a Master degree student visiting from Netherland.

• Bastin Tony Roy Savarimuthu – a PhD student

currently studying at Otago.

5

What is a workflow ?

" The automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant/resource to another for action, according to a set of procedural rules.” (www.e-workflow.org)

A workflow definition specified in colored Petri nets (from: van der Aalst, van Hee: “ Workflow management models,methods and systems”, MIT Press)

6

What is the benefit of workflow management systems (WfMS) ?

• Ability to visualize the overall process and inter-dependencies between tasks

• Automation of some processes

• Manages resources

• Coordination and collaboration between various business entities

• Monitoring the status of the system and analyses the data

(from: van der Aalst, van Hee: “ Workflow management models,methods and systems”, MIT Press)

7

Why adaptable and distributed WfMS?

Most of the existing Workflow Management Systems are:

• Rigid and support only well defined activities specified in advance

• Centralised architectures which allows single point of failure

A desirable workflow management system should be:

• Adaptable – in order to accommodate the rapidly changing business environment.

• Distributed – so that various branches of a distributed organization can communicate.

• Capbable of analyzing and monitoring the system performance in order to improve the process.

8

Components of Workflow Management Systems

WFMC95 “Workflow Reference Model ”

9

Design approach

Our WfMS uses coloured Petri nets (CPN) as worfklow process definition formalism and software agents as architectural platform.

Why coloured Petri nets?• Formal notation with a graphical

representation• Can be used for analysis• Can model states and events

Why software agents ? • Offer distributed and open platform architecture• Loosely coupled and can be dynamically created as they are

needed which supports adaptability requirement

10

An example: The CPN model for an order processing activity.

11

Basic Features of Agent Systems

•Useful for abstraction, decomposition, and organisation of complex systems.

•Loosely coupled collection of ‘specialists’ can cooperate to achieve a common goal – they are autonomous

•Allow for scalability by dynamically being able to integrate new components. Also, individual agents can be modified or replaced ‘on-the-fly’.

•Communication is asynchronous (i.e. method calls do not ‘block’, waiting for return value).

•Agent can be distiributed across the net.

12

Agent Interaction

• For agents to interact effectively they must share an understanding of– possible message types (request, inform, accept, …)– terms used in message content (ontology).

• To enable this common understanding, Foundation for Intelligent Physical Agents (FIPA) specifies standards for agent communication.

• A typical message includes the following elements: performative, sender,receiver, ontology, protocol, content etc.

13

Agent Framework

We are using OPAL system as our agent communication framework which is compliant to FIPA standards. It is a Java based framework. It was developed by NZDIS research group at Information Science Department of University of Otago (http://nzdis.otago.ac.nz/servlet/Dis/).

14

Architecture of the system

15

Sequence diagram for process execution

16

Process adaptability

- The ability to change a process definition of a worklow on the fly

17

Process adaptability– test for correctness

• Algorithm based on work of van der Aalst

• Comparing old an new net – where are changes made ?

• Find the smallest area (“component”) around which follows the following requirements

• The component connects to the rest of the net by only one input and one output place. the change does not affect the rest of the net outside the component.

• All cases with no token inside this component can safely be transfered unsafe

Example:Change parallel tasks to a set of tasks in sequence

Billing

Shipping

Billing

Shipping

?

18

Process adaptability Agent interaction in adopting a new process

Alt

ManagerA.

submit new process model()

ProcessAgent

startCase()

executing case

check correctness

transfer not possible() continue withold definition

result()

result()

continue withnew definitioncheck = true

check = false

19

Features of the agent-based framework: Distribution

• It supports distribution from two perspectives:– It enables the distribution of various program components such as

distributed resource management by using federated resource brokers

– It supports distributed process models as follows:• a process can be divided into multiple sub-processes

• for each sub process, a new process agent is started

• these sub-processes can be distributed over different hosts

MainProcess

Sub process 2Sub process 1

New Zealand

Germany Netherlands

Sub process 3

India

20

Features of the agent-based framework: Reliability

In a WfMS there are usually two central points of failure:

Resource management

Storing persisten data

StorageAgent StorageAgent

StorageAgentDatabase

Database

Database

ResourceBroker

ResourceBroker

ResourceBroker

Resource

Resource

Resource

ResourceResource

Resource

• Every resource is registered with one broker

• If a broker is not reachable another broker can be contacted

• Several storage agents, updating each other automatically• If one database fails, another one can be contacted

21

Features of the agent-based framework: Adaptibility

Most WfMS are static – the possibility of changes is not well supported.

• Process perspective: e.g. tasks are added or deleted or their ordering is changed, or a new process is introduced.

• Resource perspective: e.g., resources are classified in a different way or new resources are made available,

• Control perspective: e.g., changing the number and type of resources that are allocated to process a task.

Changes can be:

22

Display of agent communications

agents

messages

23

Monitoring the WfMS

The user could choose any of these graphs to visualize the state of the process

• Case Arrival Rates

• Case completion times

• Resource Utilization

• Comparison of various process models

24

Rate at which different cases arrive

• Case arrival rate = number of cases per unit time.

• Case arrival rate influences the waiting time of the tasks in the queue and also the process completion times

25

Resource utilization – Resource busy time

• Bears direct relationship with the idle time of resources and also how effectively the tasks are allocated to the resources.

26

Overall waiting time

• Inference : The waiting time in the queue is more when the arrival rate of cases is high.

27

Comparison of completion times when varying the number of cases and number of resources

Job Token / Number of each kind of resource (R)

R =1 R = 2 R = 5 R = 10

Case(s) = 1 9 9 9 9

Case(s) = 2 12 10 10 10

Case(s) = 3 17 12 11 11

Case(s) = 4 23 13 12 12

Case(s) = 5 27 15 13 13

Case(s) = 8 45 22 16 16

Case(s) = 10 53 28 18 18

28

Comparison of Old model vs new process

29

• Human manager specifies certain criteria (Say, completion time for a particular process X should not be more than twice the average completion time of similar cases).

• The controlling agent constantly looks for the anamolies to these criteria

• When the controlling agent senses anamolies

Logs the error messages into the error log

Sends feedback message to the management agent

Management agent displays the error message in the console

For primitive errors such as the process completion time being too high the management agent requests for more resources as a feedback action.

For certain criteria which need the human intervention to take appropriate action the human manager decides what corrective measures to be taken.

The feedback mechanism

30

Integration of Web Services with our existing WfMS (work in progress)

What are Web Services ? Web Services are loosely coupled software components delivered over internet via standard technologies like XML and SOAP

- Gartner

Why use Web Services?To take advantage of these freely available services such as:

Weather monitoring systems Stock quotes/Price quotes of products Currency converters

31

Dynamic Discovery of Web Services

There are few UDDI repositories available such as IBM, Microsoft and HP.

These repositories can be accessed to find the appropriate Web Services.

Process Agent Broker Agent UDDI Server

get resource()

discover a service()

return service providers()

return the resource as well as the service to be invoked()

32

Invocation of Web Services

• The WSDL document shown below describes an operation called checkCredit. In order to obtain the credit of a particular customer the variable named customerID is assigned with a string value and this information is sent as a creditRequest message. After the request is submitted to the service provider, it processes the request and returns the result to the variable called creditResult as specified in the creditResponse message.

•  

Process model for a ordering a book

33

Conclusion

In summary a description of the architecture for a flexible WfMS using software agents and Web Services was outlined. This architectures supports the following:

• Distribution of process execution, resources, and WfMS components

• Adaptability in terms of Process perspective (changing process models dynamically), Resource perspective (changing resources dynamically), and Task perspective (integration of Web Services)

34

Future Work

• Design and implementation of an intelligent resource broker for allocating resources appropriately .

• Integration of one of the analysis tools for analysing the Petri net models for certain conditions such as deadlock and possible bottlenecks.

35

ReferencesW.M.P. van der Aalst, T. Basten, H.M.W. Verbeek,P.A.C. Verkoulen, and M. Voorhoeve. Adaptive Workflow: An Approach Based on Inheritance . In M. Ibrahim and B. Drabble, editors, IJCAI’99 Workshop on Intelligent Workflow and Process Management: The New Frontier for AI in Business, pages 36–45, 1999.

•Mariusz Nowostawski. JFern - Java-based Petri Net framework , 2003.Systems Engineering: 14th International Conference

• Martin K. Purvis, Stephen Cranefield, Mariusz Nowostawski, and Dan Carter. Opal: A Multi-Level Infrastructure for Agent-Oriented Software Development. The information science discussion paper series no 2002/01, Department of Information Science, University of Otago, Dunedin, New Zealand, 2002.

• Martin Fleurke. JBees, an adaptive workflow manage-ment system - an approach based on petri nets andagents. Master’s thesis, Department of Computer Sci-ence, University of Twente, P.O. Box 217, 7500 AE En-schede, The Netherlands, 2004.

• Martin Fleurke, Lars Ehrler, and Maryam Purvis. JBees - an adaptive and distributed framework for workflow systems. In Ali Ghorbani and Stephen Marsh, editors, Workshop on Collaboration Agents: Autonomous Agents for Collaborative Environ-ments (COLA), Halifax, Canada, pages 69–76, http://www.cs.unb.ca/˜ ghorbani/cola/proceedings/NRC-46519.pdf, 2003. National Research Council Canada,Institute for Information Technology.