Web-based Workflow Framework with CORBA

Workflow is an important class of applications in the daily business. A number of web-based workflow systems have been de veloped recently as a natural extension to traditional workflow systems to exploit the growing popularity of the Internet. However, most of them are designed based on the specific application at hand. In this paper, we distill out the fundamental elements of a workflow system into a general workflow framework. The framework provides appropriate application programming interfaces for programmers to fill in the application specific requirements of a workflow system at hand. This is realized through two object-wrappers: the Task interface and the Resource interface, which support the specification of the tasks involved in the workflow schedule and the resources accessed re spectively. A major characteristic of the framework is that the particular workflow schedule under execution is fluid, in the sense that the tasks involved as well as their precedence relationships can be modified dynamically. Consistency constraints will be examined in this paper which determine when such modifications are allowed. To maximize flexibility, we adhere our design to the CORBA architecture, which has been becoming highly popular in recent years, thus allowing tasks and resources of different types to interoperate in our framework. We demonstrate the feasibility of our framework with a small prototype that allows tasks in a workflow system to be sched uled and executed.

[1]  Mathias Weske,et al.  The WASA2 object-oriented workflow management system , 1999, SIGMOD '99.

[2]  Gail E. Kaiser,et al.  Collaborative Work: SWAP: Leveraging the Web To Manage Workflow , 1999, IEEE Internet Comput..

[3]  Paddy Nixon,et al.  Bridging Boundaries: CORBA in Perspective , 1997, IEEE Internet Comput..

[4]  Divyakant Agrawal,et al.  Relative Serializability: An Approach for Relaxing the Atomicity of Transactions , 1997, J. Comput. Syst. Sci..

[5]  Robert E. Strom,et al.  Optimistic recovery in distributed systems , 1985, TOCS.

[6]  Scott C. Burleigh,et al.  WWWorkflow: World Wide Web based workflow , 1997, Proceedings of the Thirtieth Hawaii International Conference on System Sciences.

[7]  Michael McCaffery,et al.  The official VisiBroker for Java handbook , 1999 .

[8]  Christopher Martin,et al.  How the Internet helps build collaborative multimedia applications , 1999, CACM.

[9]  Silvia Mara Abrahão,et al.  Web-enabling legacy systems through software transformations , 1999, Proceedings of International Workshop on Advance Issues of E-Commerce and Web-Based Information Systems. (Cat. No.PR00334).

[10]  Santosh K. Shrivastava,et al.  A CORBA Compliant Transactional Workflow System for Internet Applications , 1998 .

[11]  James R. Larus,et al.  Cooperative shared memory: software and hardware for scalable multiprocessors , 1993, TOCS.

[12]  Abraham Silberschatz,et al.  Database System Concepts , 1980 .

[13]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[14]  Andreas Geppert,et al.  Event-based distributed work-flow execution with eve , 2009 .

[15]  David Flanagan,et al.  Java in a Nutshell , 1996 .

[16]  Hong Va Leong,et al.  An extended CORBA event service with support for load balancing and fault-tolerance , 2000, Proceedings DOA'00. International Symposium on Distributed Objects and Applications.

[17]  Dennis Heimbigner,et al.  A generic, peer-to-peer repository for distributed configuration management , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[18]  Maurice Herlihy,et al.  Hybrid Concurrency Control for Abstract Data Types , 1991, J. Comput. Syst. Sci..

[19]  Geoff Fellows The Essential Client/Server Survival Guide , 1998 .

[20]  Calton Pu,et al.  Dynamic restructuring of transactional workflow activities: a practical implementation method , 1998, CIKM '98.

[21]  Klaus R. Dittrich,et al.  How to share work on shared objects in design databases , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.