Use Case ID: UC23.0
Use Case Name: Invoke Network Service (Async)
Created by: jwh
Date Created: Fri Jul 20 11:00:55 2001
Last Updated by: jwh
Date Last Updated: Fri Jul 20 11:00:55 2001

Actor: User Application

Goal: Invoke a network service asynchronously

Description: Invokes a service asynchronously that was previously located using a find service call.

Preconditions:

  1. A service has been located.
Post conditions:
  1. The service is invoked on a remote peer.
Priority: High

Related Use Cases:

UC22.0 - Invoke Network Service
UC24.0 - Cancel Service Invocation
UC26.0 - Build Service Invocation Message
UC31.0 - Find Network Service

Notes and Issues:

  1. The invocation is not guaranteed unless specified by the peer framework.

Event Flow:

  1. The application registers to be informed when the invocation response has been received.
  2. The application locates the service (see UC31.0 - Find Network Service).
  3. The application constructs the invocation message (see UC26.0 - Build Service Invocation Message).
  4. The application asks the engine to perform the invocation.
  5. The engine connects to the peer and sends the invocation message.
  6. The engine waits for the response.
  7. The engine, upon receiving a response (success or error), informs the registered application of the response.
  8. The application removes its registration to listen for the invocation response.
Alternate Flows:

UC23.1 Engine is not started

  1. The application registers to be informed when the invocation response has been received.
  2. The application locates the service (see UC31.0 - Find Network Service).
  3. The application constructs the invocation message (see UC26.0 - Build Service Invocation Message).
  4. The application asks the engine to perform the invocation.
  5. The engine returns an error that the it has not been started.
  6. The application removes its registration to listen for the invocation response.

UC23.2 The peer is not available

  1. The application registers to be informed when the invocation response has been received.
  2. The application locates the service (see UC31.0 - Find Network Service).
  3. The application constructs the invocation message (see UC26.0 - Build Service Invocation Message).
  4. The application asks the engine to perform the invocation.
  5. The engine attempts to connect to the peer but determines that the peer is not currently available.
  6. The engine returns an error that the peer is not available.
  7. The application removes its registration to listen for the invocation response.

UC23.3 Timeout

  1. The application registers to be informed when the invocation response has been received.
  2. The application locates the service (see UC31.0 - Find Network Service).
  3. The application constructs the invocation message (see UC26.0 - Build Service Invocation Message).
  4. The application asks the engine to perform the invocation.
  5. The engine connects to the peer and sends the invocation message.
  6. The engine waits for the response.
  7. The engine, upon receiving a timeout, informs the registered application of the timeout.
  8. The application removes its registration to listen for the invocation response.

Sequence Diagrams:

Event Flow Sequence Diagram

Revision History
Name Date Reason for Change Version
       


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