TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

24
TRAVEL RESERVATION SYSTEM TRAVEL RESERVATION SYSTEM USING WEB SERVICES USING WEB SERVICES COMPOSITION LANGUAGE COMPOSITION LANGUAGE Pratik K Kadakia Pratik K Kadakia Adviser: Dr. Haiping Xu Adviser: Dr. Haiping Xu CIS Department, UMass Dartmouth CIS Department, UMass Dartmouth

description

TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE. Pratik K Kadakia Adviser: Dr. Haiping Xu CIS Department, UMass Dartmouth. Web Service Roles. Service Registry. Find. Publish. Service Consumer. Service Provider. Communicate. - PowerPoint PPT Presentation

Transcript of TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

Page 1: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

TRAVEL RESERVATION SYSTEM TRAVEL RESERVATION SYSTEM USING WEB SERVICES USING WEB SERVICES

COMPOSITION LANGUAGECOMPOSITION LANGUAGE

Pratik K KadakiaPratik K Kadakia

Adviser: Dr. Haiping XuAdviser: Dr. Haiping Xu

CIS Department, UMass DartmouthCIS Department, UMass Dartmouth

Page 2: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 22

Web Service RolesWeb Service Roles

ServiceRegistry

Service Provider Service Consumer

PublishFind

Communicate

Page 3: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 33

The Functions of the Travel The Functions of the Travel Reservation SystemReservation System

Search for Flights by entering source and Search for Flights by entering source and destination cities.destination cities.

Search for Hotels by entering city name.Search for Hotels by entering city name. Search for rent-a-car companies.Search for rent-a-car companies. Allow users to book flight, hotel as well as car.Allow users to book flight, hotel as well as car.

Page 4: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 44

Architecture for the Travel Architecture for the Travel Reservation SystemReservation System

Page 5: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 55

Software ToolsSoftware Tools

Java Server Pages (JSP – used as the front end)Java Server Pages (JSP – used as the front end) J2SE v1.5.0_06 SDK (used as a development J2SE v1.5.0_06 SDK (used as a development

environment)environment) Mysql 4.0.21-win. (used as the back end database)Mysql 4.0.21-win. (used as the back end database) Java Web Services Developer Pack v 1.6 ( used for Java Web Services Developer Pack v 1.6 ( used for

developing and deploying web services)(jwsdp-1.6)developing and deploying web services)(jwsdp-1.6) Tomcat Server tomat50-jwsdp (used as the server and Tomcat Server tomat50-jwsdp (used as the server and

also serves as a container for jwsdp-1.6 )also serves as a container for jwsdp-1.6 )

Page 6: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 66

Home Page of Travel ApplicationHome Page of Travel Application

Page 7: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 77

Snapshot - 1Snapshot - 1 After login, user can select one of the web services.After login, user can select one of the web services.

Page 8: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 88

Snapshot - 2Snapshot - 2 The WSDL (Web Service Definition Language) of the The WSDL (Web Service Definition Language) of the

hotel web service.hotel web service.

Page 9: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 99

Snapshot - 3Snapshot - 3 Web services result is returned to the travel agent.Web services result is returned to the travel agent.

Page 10: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1010

Travel Reservation System using Web Travel Reservation System using Web Service Composition LanguageService Composition Language

Web Services CompositionWeb Services Composition Is the task of combining and linking existing Is the task of combining and linking existing

Web services to create new Web processes.Web services to create new Web processes. It adds value to the collection of services, by It adds value to the collection of services, by

combining them according to the requirements of combining them according to the requirements of the problem.the problem.

Page 11: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1111

Advantages of using Web Services Advantages of using Web Services Composition LanguageComposition Language

The logic for composition of web services is The logic for composition of web services is modularized and is separated from the rest of modularized and is separated from the rest of the application.the application.

This logic can be re-used by different This logic can be re-used by different applications.applications.

Any changes to the business logic can be Any changes to the business logic can be directly made in the module without varying directly made in the module without varying the other parts of the application.the other parts of the application.

Page 12: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1212

Examples of Web Service Examples of Web Service Composition LanguagesComposition Languages

BPELBPEL is an XML language that supports process

oriented service composition. Developed by BEA, IBM, Microsoft, SAP, and Siebel.

Semantic Web (OWL-S) The Web Ontology Language for Services OWL-S

(previously known as DAML-S) is a ontology that enables automatic service discovery, invocation, composition, interoperation, and execution monitoring.

Page 13: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1313

Business Process Execution Language Business Process Execution Language for Web Services (for Web Services (BPEL4WS)BPEL4WS)

It stands for Business Process Execution Language for Web Services.

It provides a language for the formal specification of business processes and business interaction protocols.

It enables efficient integration of existing Web Services.

Page 14: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1414

Some Terminologies in BPEL4WSSome Terminologies in BPEL4WS

In BPEL, participating services are called partners.

Message exchange or intermediate result transformation is called an activity.

The composition result is called a process. A process consists of a set of activities.

Page 15: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1515

How to Define a ProcessHow to Define a Process

To define a process, we use a BPEL source file (.bpel), which describes

activities; a process interface (.wsdl), which enables a

process to interact partner services. an optional deployment descriptor (.xml),

which contains the partner services’ physical locations

Page 16: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1616

ActiveBPEL 2.0ActiveBPEL 2.0

The ActiveBPEL engine is an Open Source implementation of a BPEL engine.

It reads BPEL process definitions (and other inputs such as WSDL files) and creates BPEL processes.

The ActiveBPEL engine runs in any standard servlet container such as Tomcat..

Page 17: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1717

Introduction to ActiveBPEL 2.0Introduction to ActiveBPEL 2.0

There are three main areas in the architecture of the ActiveBPEL engine: the engine, processes, and activities.

The ActiveBPEL engine coordinates the execution of one or more BPEL processes.

Processes are in turn made up of activities, which may in turn contain or link to further activities.

The ActiveBPEL engine creates a process from a BPEL process definition (an XML file) and then executes this process

Page 18: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1818

A Snapshot of the ActiveBPELA Snapshot of the ActiveBPEL

The Active BPEL engine requires an installed and The Active BPEL engine requires an installed and properly configured servlet container like tomcat.properly configured servlet container like tomcat.

Page 19: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 1919

Architecture for the Travel Reservation Architecture for the Travel Reservation System Using BPEL4WSSystem Using BPEL4WS

Page 20: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 2020

An ExampleAn Example

BPEL Pseudo CodeBPEL Pseudo Code

If (Hotel provides shuttle service to airport)Then Invoke Car Services with criteria to sort

results according to cost.Else Invoke Car Service with criteria to sort results according to nearest to airport

Page 21: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 2121

ConclusionsConclusions

Our approach offers value-added Our approach offers value-added integrated services by combining existing integrated services by combining existing web services.web services.

It supports reuse and extension of It supports reuse and extension of existing services.existing services.

It is scalable in terms of increasing It is scalable in terms of increasing number of online services.number of online services.

Page 22: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 2222

Future WorkFuture Work

Show the feasibility of this approach using Show the feasibility of this approach using more complicated case studies.more complicated case studies.

Model web services composition using formal Model web services composition using formal languages such as Petri nets to support formal languages such as Petri nets to support formal verification.verification.

Use agent technique to automate the web Use agent technique to automate the web services composition process.services composition process.

Page 23: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 2323

ReferencesReferences

http://java.sun.com/webservices/docs/1.6/tutorhttp://java.sun.com/webservices/docs/1.6/tutorial/doc/index.htmlial/doc/index.html

http://www.activebpel.org/http://www.activebpel.org/ Current Solutions for Web Service

Composition, by Nikola Milanovic and Miroslaw Malek • Humboldt University, Berlin

http://www.zurich.ibm.com/pdf/ebizz/icaps-ws.pdf

Page 24: TRAVEL RESERVATION SYSTEM USING WEB SERVICES COMPOSITION LANGUAGE

12/16/200512/16/2005 CIS Dept., UMass DartmouthCIS Dept., UMass Dartmouth 2424

Thank YouThank You

QUESTIONS?QUESTIONS?