Midterm test

Objective

Create a SOA flight booking application which has two basic functions:

  1. Searching for flights: customers can search flights based on departure and arrival airports, departure and return dates, number of passengers and flight class (First, Business or Economy).
  2. Reserving a flight: customers can reserve a flight by providing flight ID.

Web service functionality requirements

  1. Client requests a service and gets a response.
  2. Interactions between two services.

Technique requirements

  1. Using Axis2, Eclipse WTP, Restlet to create services.
  2. Test the library functions with Web Service Explorer in Eclipse or client Java classes.

Scenario

  1. Let:
    • A SOAP-based service A: a flight reservation service that handles the flight searching and reservation requests.
    • A REST based service B: a flight filtering service that checks flight availability based on departure and arrival airports, departure and return dates, number of passengers and flight class, and update flight availability based on incoming reservations (First, Business or Economy) (see the figure below)
    • Each flight has information about: departure and return dates, departure and destination airports, available places (First, Business and Economy).
  2. A customer (client) sends a request to service A to check flights that are available. When service A receives the client request, it will call service B to filter only flights that are matched to client request.
    • Input: flight departure and destination, flight dates (departure and return), number of passengers, flight class (First, business or Economy) ; Output: list of available flights (Flight ID and related information) that matched the user's request or “No available flight.”
  3. Based on the list of available flights, the client can make a reservation by providing a flight ID. After receiving a flight ID, service A will request service B to update the reservation information. If the reservation is successful, service B will return to A a value “true”. Otherwise (for example, the ID is not corresponding to an available flight) it returns a value “false”.
  4. If A receives a “true”, it will return the client a message: “Reservation successful”. Otherwise, it will returns a message: “Reservation error or the flight”+ID+“ is not available”.
  5. If the client make another search, the service B should return the results with the updated information about the previous reservation.

Evaluation

# Requierments Marks (20)
1 Create SOAP service 4
2 Create REST service 4
3 Interaction between two services 6
4 Test with Web service Client (instead of using Eclipse's Web service Explorer) 2
5 Work with complex data type (class, table, etc.) 2
6 Work with database (in text file, xml, in mysql, etc.) 2

How to submit

  1. Create a text file, named readme.txt, present: student names; how to install and run your services. The content can be in either English or French.
  2. Go to your Workspace, select and compress your projects into only 1 file.
  3. Compress the readme.txt file and your project file in .zip format.
  4. Upload the compressed file in Moodle deposit.
teaching_assistant/web_services/noted_test_2020.txt · Last modified: 2020/12/13 20:14 by IT Courses (NNC)
Back to top
CC Attribution-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0