Use Case ID: UC16.0
Use Case Name: Send Peer Request Async
Created by: jwh
Date Created: Thu Jul 19 21:34:56 2001
Last Updated by: jwh
Date Last Updated: Thu Jul 19 21:34:56 2001

Actor: User Application

Goal: Send an asynchronous request

Description: Send an asynchronous request and inform the application when complete.

Preconditions:

  1. The engine must be started.
Post conditions:

None.

Priority: High

Related Use Cases:

UC15.0 - Send Peer Request
UC17.0 - Cancel Peer Request
UC27.0 - Handle Peer Request
UC29.0 - Query Request Status

Notes and Issues:

None

Event Flow:

  1. The application registers to be informed when the reply has been received.
  2. The application asks the engine to transmit a request to a peer.
  3. The engine constructs an appropriate request message.
  4. The engine sends the query message to the peer.
  5. When the engine receives the response, the response is sent to the registered application.
  6. The application removes its registration for the replies.
Alternate Flows:

UC16.1 Engine is not started

  1. The application asks the engine to transmit a request to a peer.
  2. The engine returns an error that the it has not been started.

UC16.2 The peer is not available

  1. The application asks the engine to transmit a request to a peer.
  2. The engine constructs an appropriate request message.
  3. The engine sends the query message to the peer.
  4. The engine determines that the peer is not currently available.
  5. The engine returns an error that the peer is not available.

UC16.3 Timeout

  1. The application asks the engine to transmit a request to a peer.
  2. The engine constructs an appropriate request message.
  3. The engine sends the query message to the peer.
  4. The engine determines that the timeout period has been exceeded.
  5. The engine returns an error that the timeout was exceeded.

Sequence Diagrams:

Event Flow Sequence Diagram

Revision History
Name Date Reason for Change Version
       


$Id: UC16.0.html,v 1.5 2001/07/26 17:52:19 james Exp $