Use Case ID: UC18.0
Use Case Name: Send Peer Message
Created by: jwh
Date Created: Thu Jul 19 21:55:56 2001
Last Updated by: jwh
Date Last Updated: Thu Jul 19 21:55:56 2001

Actor: User Application

Goal: Send a message asynchronously

Description: Send a message asynchronously to a peer.

Preconditions:

  1. The engine must be started.
Post conditions:

None.

Priority: High

Related Use Cases:

UC19.0 - Cancel Peer Message
UC25.0 - Build Peer Message

Notes and Issues:

  1. The message is not guaranteed unless specified by the peer-to-peer library.

Event Flow:

  1. The application registers to be informed when the message has been sent.
  2. The application builds a generic message (see UC25.0 - Build Peer Message).
  3. The application asks the engine to transmit a message to a peer.
  4. The engine constructs an appropriate message.
  5. The engine sends the message to the peer.
  6. When the transmission is complete, the engine informs the registered application.
  7. The application removes its registration to listen for the message sent confirmation.
Alternate Flows:

UC18.1 Engine is not started

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

UC18.2 The peer is not available

  1. The application registers to be informed when the message has been sent.
  2. The application builds a generic message (see UC25.0 - Build Peer Message).
  3. The application asks the engine to transmit a message to a peer.
  4. The engine constructs an appropriate message.
  5. The engine determines that the peer is not currently available.
  6. The engine returns an error that the peer is not available.

Sequence Diagrams:

Event Flow Sequence Diagram

Revision History
Name Date Reason for Change Version
       


$Id: UC18.0.html,v 1.5 2001/07/26 01:58:10 james Exp $