Implementation of Web services in AristaFlow
Abstract
The purpose of this paper is to describe ideas for combining Web Services and workflow engines (here AristaFlow 1 ), where they might fit and where they might provide the enterprise with advantages in terms of integration, dynamic processing and interoperability.
This paper also showcases guidelines for designing component descriptors using
WSDL and other XML Standards and guidelines for developing flexible application
accessing methods in AristaFlow. More understanding of how to use these techniques are explained by our sample scenarios on the basis of the Java™ Adventure Builder Reference application 2 .
Keywords
Web Services, AristaFlow, Workflow engine, Adventure Builder
1 AristaFlow: a next generation process management software based on a conceptual framework for dynamic process changes, on novel process support functions, and on advanced implementation concepts enabling realization of adaptive, process-aware information systems (PAIS). See http://www.aristaflow.de [Adept-APM] 2 A fictitious enterprise selling adventure packages using Web services to integrate with its numerous partners. (referred to as Java™ Adventure Builder [AB-Reference])
- ii -
Implementation of Web services in AristaFlow
Chair of software engineering
Contents
I INTRODUCTION 1
1 Standards Technologies - Web Service 2
2 Standards Technologies Workflow Management System 4
II ARISTAFLOW 7
1 About 7
2 AristaFlow Component Descriptor 9
2.1 AFD - Component 9
2.1.1 Component Types 9
2.1.2 Activities 10
2.1.3 Taxonomies 11
2.1.4 Workflow Elements 12
2.2 Defining the component 14
2.2.1 Example 1: Credit Card Service 12
14
2.2.1.1 An empty component definition
15
2.2.1.2 Adding an activity
16
2.2.1.3 Completing the credit card component
2.2.2 Example 2: Activity Supplier 17
2.2.3 Example 3: Weather Forecasts 20
- iii -
Implementation of Web services in AristaFlow
Chair of software engineering
III ADVENTURE BUILDER 23
1 About 23
2 Overview of Adventure Builder 24
2.1 Architecture and Design 25
2.1 Communication Architecture 26
3 Advanced Workflow with AristaFlow 27
4 Sample Scenarios 30
4.1 Scenario 1: Choose Products 30
4.2 Scenario 2:Make Order 30
4.3 Scenario 3:Customer Support 32
5 Conclusion Outlook 33
REFERENCES 34
- iv -
Implementation of Web services in AristaFlow
CHAPTER I
Introduction
Since its introduction, Web service is expanding rapidly due to the growing need for application-to-application communication and interoperability. It provides a means of integrated service combining software and services from different companies and locations. Early examples of Web services have allowed customers to find local restaurants or to check weather forecasts. Nowadays they are becoming much more complex, such as payment, traffic or tracking systems.
As the Web services are integrated in business processes more than ever, new challenges are arisen for workflow management systems due to a complicated environment and the unreliable nature of Web services. The workflow management systems do not only need to incorporate a set of fixed business processes for a specific domain or delegate a lot of people-related tasks, they also have to meet new requirements in fields like interoperability, reliability, scalability and exception handling. AristaFlow is such a next generation process management system which will face these challenges. It is based on a new conceptual framework for dynamic process changes and on advanced implementation concepts. And it enables the realization of adaptive, process-aware information systems. [Adept-APM]
In our sample scenario, a fictitious enterprise is selling adventure packages. The sample application incorporates the Web services functionality to integrate businesses of multiple partners. And with the help of Adept, the workflow engine of AristaFlow, all components are combined together. As a result, the adventure builder is now able to provide enhanced and more automated interaction experience for their customers: more efficiency and greater choices, along with more flexibility.
- 1 -
Implementation of Web services in AristaFlow
INTRODUCTION 1 STANDARDS & TECHNOLOGIES -
Web Service
In March 1991 as Tim Berners Lee, Robert Cailliau and Nicola Pellow from CERN created the first web browser supporting HTML (HyperText Mark-up Language),
HTTP (HyperText Transport Protocol) and URL (Universal Resource Location), web
sites were only plain HTML pages. [WB-Wiki] For example, a phone directory site initially provided only static pages similar to traditional phone books.
About 3 years later Common Gateway Interface (CGI) has been introduced. Since then, web application has gained the capability to generate HTML pages dynamically. Web sites like search portals begin to flourish which offered customized pages and results to the requests from the client web browser. However, web applications were still restricted. They could only used through limited user interface bound to the
HTML pages.
Web service goes beyond this limitation. A Web service is represented as XML and available via the Web. Thus, unlike browser-based applications concerning the representation of specific data themselves, a Web service can be accessed and interpreted by any kind of applications on any devices. Furthermore, applications are able to incorporate Web service functionality to combine different Web services for their own use. Yahoo!, eBay, Google, almost all big internet companies are providing Web services, such as maps, web search and traffic services. You can integrate these services in your application easily.
You might wonder at this point why Web service is got so successful and, much importantly, why it makes sense for an enterprise to use Web services as the underlying architecture for their applications. Let’s take a closer look at Web services:
Web service has emerged as an initiative of the industry to realize service oriented architecture (SOA), which is an architectural style that promotes software reusability by creating reusable services. [WS-Design] In order to enable a wide acceptance and to achieve interoperability, it is based on the existing and universally accepted standards. And it provides an open and flexible architecture. So Web services can be accessed by any client regardless of the platform on which the client is implemented. And a client is able to find and use any Web service regardless of the service’s implementation details.
- 2 -
Implementation of Web services in AristaFlow
According to the World Wide Consortium (W3C) Organization, which establishes the standards for Web services, a Web service is a software system designed to support interoperable machine-to-machine interaction over a network. [WSGloss] It is identified by a URI on the Web or intranet and has an interface that is described in a machine-processible format such as Web Services Definition Language (WSDL). Clients interact with the Web service in a manner prescribed by its interface using XML-based protocols, such as Simple Object Access Protocol (SOAP) sent over broadly accepted Internet protocols, such as HTTP.
The Web service-based architecture contains three functions: Service provider, Service requester and Service registry. (See figure 1.1 below)
Figure 1.1: Web Service Architecture [WS-Wiki]
A Service requester is a software system that makes use of Web services.
A Service provider exposes the capability as a Web service. It creates the service
description, publishes that service description to one or more means of discovery and has the Web service ready to receive messages from Service requesters.
And at last, a Service broker’s responsibility is to advertise service descriptions and to help Service requesters search through its registry to find a service description of interest.
Currently, most of the contribution in Web services standardization is driven by a few large vendors: Microsoft (.NET), IBM (WebSphere), BEA (Weblogic), Sun (J2EE), SAP, HP (multiple, mainly management), Verisign (security), plus a multitude of other companies such as CA and webMethods.
- 3 -
Implementation of Web services in AristaFlow
INTRODUCTION 2 STANDARDS & TECHNOLOGIES -
Workflow Management System
A Workflow management system (WFMS) is defined as a system that helps
organizations to specify, execute, monitor, and coordinate the flow of work cases within a distributed environment.
A WFMS maintains state information for each process execution. For this, it needs to
be informed of state-changes. At the process execution time, it receives information and descriptions about the current state of process passed from its participants. On a specified event or after a state has finished the workflow engine checks the result with the pre-defined conditions. Depending on the process definition and context information it delegates activities amongst applications, people and machines respectively, e.g. sending an email when an activity is assigned to an employee.
At the operational level the WFMS manages the process flow and defines how tasks are structured, who performs them, what their relative order is, how they are synchronized, how information flows to support the tasks and how tasks are being tracked.
Figure 1.2: Separation of process layer and application layer [AF-Overview]
As depicted in figure 1.2, the process logic and the application functionalities are separated from each other. Each software component in the application layer has its input/output descriptions and transformation rules in the application layer. I.e., a component would not execute, unless its mandatory input requirements are fulfilled.
- 4 -
Quote paper:
Ke Zhang, 2006, Implementation of Webservices in AristaFlow, Munich, GRIN Publishing GmbH
This text can be quoted and accessed from this url:
Embed
DOI
Der Einsatz von Metamodellen für die Geschäftsprozessmodellierung
Computer Science - Commercial Information Technology
Diploma Thesis, 90 Pages
Potenziale und Nutzungsmöglichkeiten von Workflow-Management-Systemen ...
Bachelor Thesis, 75 Pages
Formatvorlage (Microsoft Word) für eine Diplomarbeit, Masterarbeit, Ha...
Für MS Word 2003 - Update 2010
Presentations, Models, Tutorials, Instructions
Elaboration, 25 Pages
Formatvorlage (OpenOffice) für eine Diplomarbeit, Masterarbeit, Hausar...
Presentations, Models, Tutorials, Instructions
Elaboration, 35 Pages
Formatvorlage / Vorlage zur Erstellung einer Diplomarbeit, Bachelorarb...
Presentations, Models, Tutorials, Instructions
Elaboration, 15 Pages
Formatvorlage / Vorlage für eine Diplomarbeit / Hausarbeit
Für MS Word 2007 - dotx
Presentations, Models, Tutorials, Instructions
Elaboration, 25 Pages
Anleitung zum Erstellen schriftlicher Arbeiten: Der Aufbau einer wisse...
Presentations, Models, Tutorials, Instructions
Elaboration, 20 Pages
Erstellen einer schriftlichen Hausarbeit
Presentations, Models, Tutorials, Instructions
Termpaper, 14 Pages
Grundtechniken wissenschaftlichen Arbeitens
Bibliografieren - Reden - Schr...
Presentations, Models, Tutorials, Instructions
Script, 46 Pages
Ratgeber zur Erstellung wissenschaftlicher Arbeiten. Diplomarbeiten - ...
Presentations, Models, Tutorials, Instructions
Elaboration, 39 Pages
Ke Zhang has published the text Implementation of Webservices in AristaFlow
Ke Zhang has uploaded a new text
Managing and Implementing MS SharePoint 2010 Projects
Proven Methods and Techniques ...
Geoff Evelyn
Implementing Semantic Web Services
The SESA Framework
Dieter Fensel, Mick Kerrigan, Michal Zaremba
Implementing Public Policy: An Introduction to the Study of Operationa...
Michael Hill, Peter L. Hupe
0 comments