first prototype implementation of flowpass: the ...

7 downloads 46289 Views 163KB Size Report
Model, Java programming to implement the process logic, and XML Data ... ASP.NET. / JAVA. Document Base. Data Layer. Logic Layer. Presentation. Layer.
FIRST PROTOTYPE IMPLEMENTATION OF FLOWPASS: THE PORTUGUESE PARLIAMENT WORKFLOW PROCESSES AUTOMATION Nascimento, Rogério P. C. do; Martins, Joaquim A.C.; Pinto, Joaquim M.S.; Almeida, P.M Universidade de Aveiro, Departamento de Electrónica e Telecomunicações Instituto de Engenharia Electrónica e Telemática de Aveiro gabinete 0.09, Campus Universitário de Santiago 3810-193, Aveiro – PORTUGAL

ABSTRACT In this paper we are discussing the interrelation amongst the WPA, the XM L Family and its integration with Database Legacy Systems. We built a framework called FLoWPASS. Its main idea is to separate the workflow process logic from the application components. For that, we used workflow process management techniques based on WfMC Reference Model, Java programming to implement the process logic, and XML Data Representation for data and metadata modeling. We are testing a workflow process automation prototype to be used in our case study: the information management system of the Portuguese Parliament legislative processes. We implemented a first prototype to show the laws’ workflow processes based on WfMC XPDL Schema and we suggest the implementation of some applications to show the multimedia information related to this laws, based on WfMC Interfaces, XML, XML Web Services and WSDL. For the applications components we will build XML Schemas to generate XML files and test XSL files, which will be used to format data for each possible system front -end like PDAs, third generation mobile phones and desktop personal computers. KEYWORDS

E-Government, E-Parliament, Workflow Process Automation, Java, DOM, XML Web Services

1. INTRODUCTION Through the FLoWPASS – Framework to Laws Workflow Process Automation System, we analyze the workflow processes, metadata and multimedia documents of Portuguese Parliament. Concepts related with WPA – Workflow Process Automation, e-commerce and XML – eXtensible Markup Language can be found in [1], [2] and [3] , but we did not find a solution based on open patterns using Java, XML Web Services and XML databases. In [1], the XML Nets are proposed: a new type of high-level Petri Nets to support inter organization business processes. In [2], XML architecture is discussed for distributed workflow management whose key is called XML Mediator. It is based on XSQL of Oracle and uses XML messages over HTTP to change data between the workflow and the business object servers and, on the other hand, between the workflow and the customers' activities. And [3] describes an infrastructure composed by dynamic agents based on Java for the e-commerce automation. XML is the message format chosen for the communication among those agents. In [4] and [5] we found related works that use XML to make the business logic independent from the mechanisms that support them. The work in [4] discusses the integration of the documents inside an organization and it is based on The Ultimus Workflow[6] solution. And [5] describes an architecture to support inter organization workflows through XML messages and it is based on the open pattern Wf-XML specified in the Interface 4 of Reference Model of WfMC – Workflow Management Coalition.

1026

FIRST PROTOTYPE IMPLEMENTATION OF FLOWPASS: THE PORTUGUESE PARLIAMENT WORKFLOW PROCESSES AUTOMATION

Our study is fundamentally based on WPA that can be defined as a sequence of structured tasks (or semistructured) executed in series or in parallel for two or more individuals to obtain a common goal. When we began the investigation of concepts, myths and solutions of current workflow systems, we saw that the majority of existing solutions in the industry (Diamond, icXpert Solution Suite, HighView Workflow, W4 Architecture and Ultimus Workflow [6]) confuse the essence of WPA with other concepts like cooperative and collaborative work, process representation, integration of the applications inside a company, reengineering or even with the own operating system. We investigated some proposed models for standardization of WPA and we chose the Workflow Reference Model [7] of the group WfMC, as this model readily adapted to generic solutions. Thus we discarded other standardization proposals like the complex proposal of OMG, the limited proposal of BPMI– Business Process Management Initiative [8] and the SWAP – Simple Workflow Access Protocol [9] of IETF Working Group, that, in fact, didn't become a pattern although it has its merits. XML technologies are significantly different from classic procedural programming languages in structure, syntax and nature. XML application development is also a completely different process. XML application development begins with developing the content model using XML Schema or DTD's [18]. We will use XSL – Extensible Style sheet Language files and XSLT to create style sheets of the information based on XML documents. The XSL files generated in our framework will be used in the commu nication with mobile devices front-ends, including PDA’s [10], the third generation of mobile phones, and, also, with Web browsers used by laptops and/or desktops computers.

2. FLOWPASS ARCHITECTURE Document Base Legacy Systems Videos Digital Library

XML

Data Layer

XML Search Engine XML Logic Layer

FLoWPASS Applications

ASP.NET / JAVA

SOAP

Presentation Layer

XML Web Services

HTML WAP WML VXML UMTS

Mobil Phones (VXML / WML / UMTS)

XSL

E-Mail (SMTP)

Web PDAs (WAP)

Client Browsers of Ubiquitous Applications

Notebooks (HTML)

Figure 1. FLoWPASS Framework

1027

International Conference WWW/Internet 2003

To describe the FLoWPASS we used, in figure 1, the classic logical model of three layers (Data, Logic and Presentation) to define the FLoWPASS architecture. In the Data Layer the storage services and data indexes are located. We should use a XML Search Engine as the back-end system. They are necessary for the integration and interaction of the Document Base with legacy files of data. For example, in our case study we cross referenced information with the digital library [16] of the Portuguese Parliamentary meetings [17] . These services didn't modify the stored files, maintaining the integrity of the database. The logic business services are located in the Logic Layer for the WPA. These services also include the rules and logic of the business that will generate specific ASP.NET forms or Java programs. Here we find the FLoWPASS Applications that will execute some workflow process activities of the case study specified. Finally, we have the Presentation Layer that contains the services to establish the interface with the users and manipulate the input data. Here we can use specific XSL files to transform the returned XML document into an HTML file adapted to the browser of the used front-end (PDA, mobile telephone, laptop). A XML Search Engine, a generic XML Schema – the FLoWPASS XPDL Schema and the suggested XML Web Services, composes the proposal framework, as follows:

2.1 XML Search Engines We analyzed some intermediary systems for the recovery of information in XML files. Specifically, we looked at the following solutions: Sgrep, XYZFind, eXist and TEXTML Server [11]; the Kweelt [12], an academic proposal from the University of Pennsylvania; and we also discussed some solutions with the REDIS Group [25] from Universidad de Vigo. We chose the TEXTML Server as the best back-end system to our work. It stores, indexes and looks for information in a great number of XML documents. We highlighted the main reasons of this choice: quite efficient query language, safe support for commercial applications and 100% XML database.

2.2 Generic XML Schema – the FLoWPASS XPDL Schema We investigated the WfMC metamodel and the XRL – eXchangeable Routing Language proposed in [19] and [20]. We decided to use the metadata outline of the XPDL – XML Process Definition Language [21] defined in the Workflow Process Definition Interface of Workflow Reference Model. We used, in that way, a XPDL Schema that contained generic information to model all the elements that compose the process of a typical workflow: Participants, Activities, Transitions, Applications and Important Data of Workflow. We created, thus, a generic Laws’ Workflow Process Definition based on this XPDL Schema.

2.3 XML Web Services Web Services are the emerging pattern for distributing functionality over the Internet. They are built using open patterns and protocols like HTTP, XML and SOAP – Simple Object Access Protocol defined by W3C. The functions that a Web Service makes available are defined by another pattern: the language WSDL – Web Services Description Language. These patterns allow the software components to communicate with each other, in spite of the operating system in which they reside. We used XML Web Services to offer the framework the functionality of a ubiquitous systems (anywhere, anytime, any media, any device syndrome and context -aware). Because each front-end needs a different view of the data and has a different hardware architecture, it can have guaranteed access to the system thanks to Web Service’s interoperability.

3. CASE STUDY: THE PORTUGUESE PARLIAMENT Based on PRA – Portuguese Republic Assembly Rules – Regimento da Assembléia da República [22] – and WfMC patterns we generated an XML document: the FLoWPASS XPDL Schema. Inside this metadata

1028

FIRST PROTOTYPE IMPLEMENTATION OF FLOWPASS: THE PORTUGUESE PARLIAMENT WORKFLOW PROCESSES AUTOMATION

document we defined a template workflow of all possible activities involved in the approval of a CLP – Common Legislative Process from Portuguese Republic Assembly.

3.2 First Java Prototype Recently, Microsoft© launched Visual Studio.NET™ that includes, among others, an architecture for Web applications –ASP.NET [13] – much better than the previous ASP and new resources for Visual Basic, creating the VB.NET [14]. We began the research on ASP.NET and VB.NET to implement a prototype of our study. Thus, we could use the new integrated concepts related to XML Web Services and .NET Framework [15] (platform independence, debugging, security services, inheritance, garbage collection, etc). Following the Portuguese government guidelines, we resolved to work with an open source solution. So, we started to research about the Sun’s technologies [20]. The first idea was to use the JAXB to manipulate the FLoWPASS XPDL document, but we had critical problems because XPDL is quite complex. After, we used the DOM tree and we analyzed each XML element from FLoWPASS XPDL document.

Figure 2: Activities and Transitions from FLoWPASS XPDL Document of a CLP Example

Figure 3: Java Program showing the Portuguese Parliament Workflow Process of a specific CLP

In Figure 2 we showed a FLoWPASS XPDL partial view of a CLP example. This document was generated from the Workflow Processes explained before in a prior section. In figure 3 the first interface of our prototype is shown. This window composes a friendly view of data information present in figure 2. The folders represent the main activities of this CLP example. Inside each activity we can see a description of its “status” or another activity that represents a sub process according to FLoWPASS XPDL Schema.

4. CONCLUSION The effective interrelation between the XML family and the WPA facilitates a great variety of data queries in XML documents. The resolution of these subjects leads us to the key point of our research: the capacity of cross-reference in XML documents with other files or legacy databases. We continue testing these concepts with the Portuguese Parliament (http://debates.parlamento.pt) legacy system. We are working with the FLoWPASS XPDL Schema and XML Web Services suggested to improve the prototype shown and to design FLoWPASS Applications to manipulate the main workflow process of the Portuguese Republic Assembly. At the moment we have not found any academic work that uses a synergy solution involving XML Web Services, XML databases and Java to implement a WPA systems. Or any academic work that uses similar solutions to the e-parliament systems. Our next step is the effective integration of the proposed framework with ubiquitous applications [23] and front-ends [24] of the new wireless world, which includes mainly PDAs and the third generation of mobile

1029

International Conference WWW/Internet 2003

phones that already facilitate the use of MP3 audio files, images and video. As an immediate future work project, we intend to describe the inherent aspects of the integration of heterogeneous systems based on XML Web Services.

REFERENCES [1]

Kirsten Lens: Modeling Interorganizational Workflows with XML Nets. Proceedings of IEEE International Conference on System Sciences, 2001. [2] German Shegalov: XML-enable Workflow Management for E-Services across Heterogeneous Platforms. The VLDB(Very Large Data Bases) Journal, Vol 10, Issue 1, pp 91-103, 2001. [3] Qiming Chen et ali: Dynamic-agents, Workflow and XML for E-Commerce Automation. Proceedings of Electronic Commerce Automation, pp 314-323, 2000. [4] Lerina Aversano et ali: Integrating Document and Workflow Management Tools using XML and Web Technologies: a Case Study. 6th European Conference on Software Maintenance and Reengineering, 2002. [5] Michael zur Muehlen: A Framework for XML-based Workflow Interoperability – The AFRICA Project. Americas Conference on Information Systems, 2000. [6] Ultimus, Inc.: Groupware, Workflow and the role of Ultimus. www.workflowzone.com, 2001. [7] WfMC – Workflow Management Coalition: WfMC Workflow Reference Model. www.wfmc.org/standards, 2001. [8] BPMI – Business Process Management Initiative: BPML Specification. http://BPMI.org, 2001 [9] Gail Kaiser and G. A. Bolcer: SWAP: Leveraging the Web to Manage Workflow. IEEE Internet Computing. http://computer.org/internet, jan-fev, 1999. [18] Larry Kim. XML integrated development Environments, White Papers and Analyst Reports at www.xmlspy.com, 2002. [10] A. Riera et ali: Entorno Docente Basado en PDA (PDA based Learning Environment). Actas del Simposio en Informática y Telecomunicaciones, 2001. [16] Joaquim S. Pinto et ali.: Modelização e Concepção de uma Biblioteca Digital (Concepts and Modeling of A Digital Library). 2º Congresso Luso-Moçambicano de Engenharia, FEUEM/FEUP, 2001. [17] Joaquim S. Pinto et ali.: Portuguese Parliamentary Records Digital Library. ICEIS’2001 International IEEE Conference on Enterprise Information Systems, 2001. [11] IXIASOFT, Inc.: IXIASOFT White Paper. www.ixiasoft.com, 2001. [12] Arnaud Sahuguet: Kweelt, the Making-of: Mistakes Made and Lessons Learned. http://db.cis.upenn.edu/Publications/, 2000 [25] Manuel J. F. Iglesias: Aplicaciones XML para la gestión y recuperación de información. Tutorial apresentado nas III Jornadas Iberoamericanas en Telecomunicaciones y Telemática, em Cartagena de Indias, Colômbia, 2001. [19] W.M.P. van der Aalst et ali.: XRL/Woflan: Verification and extensibility of an XML/Petri-net based language for inter-organizational workflows, Proceedings of the 6th Informs Conference on Information Systems and Technology , 2001. [20] W.M.P. van der Aalst et ali.: XML Based Schema Definition for Support of Inter-organizational Workflow, University of Colorado and Eindhoven University of Technology Report, 2001. [21] WfMC – Workflow Management Coalition. XML Process Definition Language. www.wfmc.org, 2001. [22] Assembéia da República de Portugal. Regimento da Assembléia da República (Portuguese Parliament Laws). Assembléia da República – Divisão de Edições, 2000. [13] Dave Sussman et ali: Professional ASP.NET, Wrox Press, 2001. [14] Craig Utley: A Programmer’s Introduction to Visual Basic.NET. Sams Publisher, 2001. [15] Microsoft, Inc.: Microsoft Visual Studio.NET Professional. DVD-ROM, 2002. [20] Armstrong, Eric et ali. The Java Web Services Tutorial. Sun Microsystems Inc., 2003. [23] Anthony C.W. Finkelstein et ali.: Ubiquitous Web Application Development – A Framework for Understanding. 6th World Multiconference on Systemics, Cybernetics and Informatics, 2002. [24] Richard Han et ali. WebSplitter: A Unified XML Frameworl for Multi-Device Collaborative Web Browsing. ACM Conference on Computer Supported Cooperative Work, pp221-230, 2000.

1030