Font Size: a A A

The Implementation Of XPDL Workflow Process Engine Based On SOA Technology

Posted on:2010-05-24Degree:MasterType:Thesis
Country:ChinaCandidate:G X WuFull Text:PDF
GTID:2178360272995994Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the evolution of information technology, the diversification of enterprise service and the increasingly improvements of the service interaction style, the development methods of enterprise application system has been vitally changed, from the requirements based bottom-to-up development in the past, to the combination of some low coupling, reusable service. in the nearly past 20 years, service oriented architecture has made a profound progress. From the originally Common Object Request Broker Architecture, to the XML based web service, then to the nowadays SCA/SDO component module and the enterprise service bus technology. The SOA is engaging at settling the problem of the service integration and the interaction of heteromerous software system, and motivating the development of SOA based enterprise application system.To be the container of service integration, workflow process system has been used in many Large and medium-sized enterprise. Focusing on resolving the staff cooperation mechanism, and proved especially significant of helping enterprise to improve the efficiency and competitiveness. There are two parts of workflow process technology: the workflow process meta-module and the workflow process engine. The workflow process meta-data should define the process module and their relationships. Currently there are two criterions: the XPDL process modeling language proposed by Workflow Management Coalition and BPEL criterion drafted by IBM. The workflow process engine provides the workflow process a runtime environment, and according to the workflow criterion to formulate, monitor and run the process, organize the extend resource to give the process a data support. Formerly a lot of workflow process engine has made enough achievements in process modeling and managing, but lack of service integration, and resulted in the information islands. The proposal of SOA lets the workflow process system take on an entirely new look, so if there would be implementation of SOA in the process system, it will make use of external resource effectively, and invoke the heteromerous services with the same method, so as to promote the enterprise adaptability, and implement the "business on demand".As a common framework, the XPDL provides a uniform criterion and interface that can implement the division of software development and runtime environments. We can generate the process definition by modeling tools like JAWE, and this definition can be operated in difference workflow products. Currently, the light-weight, SOA based XPDL process engine is not so familiar, and the IBM products: WebSphere Process Server and FileNet P8 as a heavy-weight process engine usually needs a high cost and training investment. Base on those problems, this paper researched on the XPDL process module, and proposed an implementation of SOA based workflow process engine. In the process engine, key point of SOA implementation should be the "calling manner" when the engine invokes a service or when the client invokes the engine. Combining the existing technology, we import the notion of enterprise service bus. As the combination of mediation ware and tradition technology like XML and web service, ESB is the key element of building the enterprise nervous system. The word of"bus"is originally used in the data transformation in the physics compute system. Standing in a high level, the enterprise service bus provides the nearly same function; the service will be unified in the ESB. it provides a reliable data transformation, service injection, the switching of protocol and data format, the content based route, etc. when building a map between the XPDL process definition and ESB configuration file, unify the client invoking with the ESB message, and process activity node definition with the ESB service, so as to invoke the external service with the same method. When the process starts, the initial process data flows into the ESB message pipe, navigates to each bus service according to the pre-defined route, and "permeates" into the external services, finally gathers the response data, till the process completes. At the same time, outside the ESB we should deal with the controlling of the workflow dispatching, the persistence and updating of workflow process data and the management of the workflow activity lifecycle with J2EE component technology. When comes to the process state module, this paper proposed an implementation of process state machine based on state pattern, used to resolve the process conflicts, got the information of process invoking time and process management like process hanging on and backtrack.Lastly, this paper lists an decision process example to verify the engine's performance. By assigning difference role, defining external service that will be invoked to build up the process module. And invoking the web service which exposed on the server to implement the process data query, data input and dispatching function.Nowadays, the workflow process technology has been improving increasingly. Till now, it has acquired a big success in the office automatic system, and gradually step into the other enterprise application. As the progressing of the workflow theory, the workflow process will be able to meet the human's requirements: automatically meets the variation of business requirements, integrates the resource and service, saves cost and improves the efficiency. With the development of SOA technology, the workflow still has many functions to achieve. And we should deeply dive into the implementation mechanism and extend functions of process engine which like: support for transferring multi-type document, the mutex, and synchronization of process data.
Keywords/Search Tags:Workflow process engine, SOA, ESB, XPDL
PDF Full Text Request
Related items