Travel agency solution

Published:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

1. Functional Description

The functionality of Travel Agency Solution has been divided in two components.

I. WSServer

This WSServer acts as a server component and provides the following major functionalities.

a) Major Functionality

* Reads the flight information from an XML file using JAXB.

* Reads the hotel information from an XML file using JAXB.

* Flight Information Service Implementation that gets the flight information for a given city.

* Hotel Information Service Implementation that gets the hotel information for a given hotel.

* Service Implementation that books the flight.

* Service Implementation that books the hotel.

b) Main Classes

FlightHelper.java

This class provides the flight information by working with flight.xml data source.

HotelHelper.java

This class provides the hotel information by working with hotel.xml data source

FlightWS.java

This class provides the following functionalities as part to FlightWS web service

· It provides the function to get the flight information.

· It provides the function to book the flight using the information provided by the end user.

HotelWS.java

This class provides the following functionalities as part to HotelWS web service

· It provides the function to get the hotel information of particular city provided as parameter.

· It provides the function to reserve hotel room using the hotel city and room type as parameter provided by the end user.

c) JAXB Generated Classes

Since the data source of our web services is based on xml, therefore we have used JAXB tools to generate helper classes to represent the xml schemas.

Flight Information Classes

* Flight.java

* Flights.java

* AirlineFare.java

* ObjectFactory.java

Hotel Information Classes

* Hotel.java

* Hotels.java

* HotelFare.java

* ObjectFactory.java

II. WSClient

This WSClient act as client component and provides the following major functionalities.

a) Major functionality

* Provides the end user interface to view the flight information and hotel information.

* Provides the end user with interface to providing flight and hotel booking information.

b) Main Classes Functionalities

a) IndexServlet.java processes the index page.

b) FlightBookingServlet.java processes flight booking using web services.

c) HotelBookingServlet.java processes hotel booking using web services.

d) CurrencyServlet.java Servlet processes currency conversion using web services.

e) ComboBookingServlet.java process flight and hotel booking using integrated service.

f) ComboBookingServlet.java is the servlet that processes flight and hotel booking using integrated service. It uses a helper class (FlightHotelCombo) to hold the flight and hotel information.

g) FlightClient.java consumes the FlightWS webservice to provide flight information and to provide the function to update flight information using flight booking details.

h) ComboClient.java consumes the FlightWS and HotelWS service to provide combined information of flight with its corresponding destination city hotels. It also provides the feature of filtering the hotel list related to particular flight destination city, if hotel proximity from the city centre is greater than 15.

i) CurrencyClient.java consumes the currency web service provided by "http://webservicex.net/currencyconvertor.asmx?WSDL" and converts the currencies.

j) HotelClient.java is the client class that consumes the web service HotelWS to provide the hotel information.

2. Design Decisions

Travel agency solution is designed using following factors in mind.

a) Software Architecture

In order to achieve flexible design the functionalities are implemented in the form of well defined classes. By doing so reusability, low coupling and high cohesion has been achieved.

* Web Services implemented as part of WSServer provides low coupling.

* Helping classes are introduced which provide clean separation of functionality so that it can be reused resulting in low coupling.

* The user web services to build an integrated solution provide high cohesion by keeping in low coupling and high reusability.

b) Development tools

a) The implementation will take advantage of Java EE6 features - especially generics and annotations.

b) Web Service implementation will be implemented as a stateless session bean.

c) JDK 1.6 Update 17, Glassfish v3 and Netbeans 6.8 were used to develop the solution.

3. Evaluation

Travel Agency solution is implemented using SOA architecture which focuses on reusability and rapid development of software applications using existing services. Web Services provides one of the ways of implementing SOA architecture. Travel Agency solution is an attempt to design application using newly designed plus existing web services. But overall it's a good achievement. It has helped me to get familiar with basic implementation of Service Oriented Architecture through web services.

4. Workflow vs. Semantic Composition

1. Discuss the attributes of web services that allow to build a SOA (Service Oriented Architecture) consisting of composable enterprise application components.

Web services are software building blocks that can be accessed over the Internet in a standard programmatic way using SOAP messaging. They allow programmers to access data from remote providers without extracting it from HTML web pages or using proprietary protocols. Web services are used in various areas: product search and ordering, address validation, currency converter, and so on.

The integration of web services is called 'web service composition' and is feasible to achieve because of being platform, language neutral and loosely coupled. Web services composition techniques use the business workflow-management mainly based on the Business Process Execution Language (BPEL). Using BPEL, a programmer formally describes a business process that will take place across the web in such a way that any cooperating entity can perform one or more steps in the process the same way. The BPEL techniques have capabilities that fulfil the needs of a business environment.

Composition techniques based on the semantic web, such as OWL-S use ontology's to provide a mechanism to describe the web services functionality in machine understandable form. This makes it possible to integrate web services automatically.

2. Contrast the workflow based and semantic-based approach to Web services composition. Justify why the Industry remains faithful to the workflow approach despite the clear advantages of the semantic-based composition.

Recently, web service composition has been clearly developing in two similar approaches. Firstly the 'workflow-based composition', approaches web service composition as a Business Process Management (BPM). Business processes includes, customer orders, order status and verifying orders. BPM deals with these individual applications integrating to achieve a business process view. WS-BPEL is the main industrial to achieve such composition of web services, which uses WSDL at length to compile the composition scheme.

Secondly the 'semantic web-based composition' is to extend web's currently human-oriented interface to a design that is understandable to software program's, which can lead to automation of services selection and execution. The web service is described semantically to achieve the automation, therefore allowing software agents to make all the decisions related to the composition on behalf of the user. Normally these decisions involve the selection of appropriate services, their actual composition and examination of how they meet the user's criteria. OWL-S (Ontology Web Language for Web Services) is the top semantic composition research effort. Its ontologies allow it to describe the web services functionality in machine understandable form. This makes is possible to find out and integrate web services automatically.

Although large actions have taken place to attempt to automate composition web description through semantic web based approach, they have been attempted mainly in isolation to developments in the workflow-based approach, that are preferred by commercial organisations. Most business organisations favour a composition technique that allows for their business requirements to be met more often and more efficiently. The semantic alternative is considered by these organisations to be somewhat undeveloped and that the dynamic composition techniques are too focused on its automatic capabilities. The business industry remains faithful to the workflow approach rather then the semantic approach could be because a number of factors. The standards are built on top of workflow management theory, making it ideal to model business processes interaction. Also BPEL and its components are now mature standards that provide a lengthy scale of features for business processes. Overall the workflow approach is preferred by organisations as they are better suited to the business objectives of their organisation.

5. References

Bridging the Semantic Web - Article

Web Services Composition - Article

6. Appendix

Screen Shots

i) Web Service 1 - Flight Booking

ii) Web Service 2 - Hotel Booking

iii) Web Service 3 - Currency Converter

iv) Web Service 4 - Combo Booking

Writing Services

Essay Writing
Service

Find out how the very best essay writing service can help you accomplish more and achieve higher marks today.

Assignment Writing Service

From complicated assignments to tricky tasks, our experts can tackle virtually any question thrown at them.

Dissertation Writing Service

A dissertation (also known as a thesis or research project) is probably the most important piece of work for any student! From full dissertations to individual chapters, we’re on hand to support you.

Coursework Writing Service

Our expert qualified writers can help you get your coursework right first time, every time.

Dissertation Proposal Service

The first step to completing a dissertation is to create a proposal that talks about what you wish to do. Our experts can design suitable methodologies - perfect to help you get started with a dissertation.

Report Writing
Service

Reports for any audience. Perfectly structured, professionally written, and tailored to suit your exact requirements.

Essay Skeleton Answer Service

If you’re just looking for some help to get started on an essay, our outline service provides you with a perfect essay plan.

Marking & Proofreading Service

Not sure if your work is hitting the mark? Struggling to get feedback from your lecturer? Our premium marking service was created just for you - get the feedback you deserve now.

Exam Revision
Service

Exams can be one of the most stressful experiences you’ll ever have! Revision is key, and we’re here to help. With custom created revision notes and exam answers, you’ll never feel underprepared again.