D-US-001- Quote Request

05 11 2003

This version:
Editor:
Abbie

Abstract

Status of this Document

This document is an editors' copy that has no official standing.

Table of Contents

1
    1.1
        1.1.1 D- US-001 - Travel Agent
            1.1.1.1 Primary Description
            1.1.1.2 Requirements
            1.1.1.3 Variation on the use case
                1.1.1.3.1 Variation 1
                1.1.1.3.2 Variation 2
                1.1.1.3.3 Variation 3
                1.1.1.3.4 Variation 4
                1.1.1.3.5 Variation 5


1

1.1

1.1.1 D- US-001 - Travel Agent

1.1.1.1 Primary Description

A travel agent wants to offer to customers the ability to book complete packages that may consist of services offered by various providers. The available services may include: air travel, train travel, bus tickets, hotels, car rental, excursions and other services such as insurance.

The goal of the consumer is to get the best combination of services and prices suiting their needs. The travel agent tries to maximize customer satisfaction and sell packages. Service providers aim to sell as many products as possible. Credit card companies guarantee and perform payments for purchased products.

In this scenario, service providers offer Web Services to that could be used by the Travel agent to query their offerings and perform various tasks such as reservations. Credit card companies provide services to guarantee payments made by consumers. The client should be able to query, reserve and purchase any available service. The basic steps of the interaction are listed below

  1. The client interact with the travel agent to request information about various services.

  2. Prices and avilability matching the client requests are returned to the client. The client can then perform one of the following actions:

    1. The client can refine their request for information, possibly selecting more services from the provider (Repeat step 2). OR

    2. The client may reserve services based on the responce. OR

    3. The client may quit the interaction with the travel agent.

  3. When a customer makes a reservation, the travel agent then check the avilability of the requested services with each service provider.

  4. Either

    1. All services are avilable, in which case they are reserved. OR

    2. For those services that are not avilable, the clinet is informed.

      1. Either

        1. Given alternative options for those services. OR

        2. Client is adiviced to restart the search by going back to step 1.

      2. Go back to step 3.

  5. For every relevant reserved service the travel agent takes a deposit for the reservation. A credit card can be used as a form of deposit

  6. The client is then issued a reservation number to confirm the transaction.

  7. Between the reservation time and the final date for confirmation, the client may modify the reservation. Modifications may include cancelleation of some services or the addition of extra services.

    1. Client is expected to fully pay for those revelant services that require full payment prior to final confirmation.

The use case is illustrated in the figure below.

Figure X - ............

1.1.1.3 Variation on the use case
1.1.1.3.4 Variation 4

During the confirmation step, it may happen that one or more of the parties fails and are not immediately re-contactable. Depending on the urgency and importance of the travel services offered by the crashed parties, some form of recovery or correction may be required. In some cases it may be necessary to wait for the crashed parties to become active again, and to replay the messages back to them from some pre-defined checkpoint. The ability to demarcate such checkpoints is required in order to support this sort of scenario.

Requirements for variation 4

  1. A CDL shall facilitate the demarcation of observable transactional behaviour.

When interacting with the various parties, a number of errors could occur. There will be system or infrastructure errors and failures that all choreographies would have to deal with, but more importantly there will be application/choreography specific errors that need to be considered and built into the choreography design. For example, between being offered services to a certain destination and confirming those services, it is entirely possible that the destination is withdrawn from sale for some travel advisory reason. When the client goes to book such services this should result in a set of error messages, that signify some erroneous state. Depending on how the actual web services are defined, these errors may simply be specific wsdl operations, or may be defined as wsdl faults; which is chosen is a web service design issue.

Additional requirements

  1. A CDL shall support the description of application exceptions.

  2. A CDL shall support the description of WSDl faults.