Example Use Case 002 with sequence information

Id:UC002
Priority:high
Risk:high
Progress:100%
Description: This is an example borrowed from the "use case driven object modeling" book. It is the same example as UC001 but in this case we are including the sequence diagram information.

BASIC COURSE

The system creates a new trade with the ticket number from the order and brings up a Bond Trade Entry window. The AT uses this window to enter the appropiate values for the associated trade.

When the AT chooses to submit the trade, the system validates both general trade values and bond-specific values (for instance, it makes sure the coupon rate is "reasonable") before processing the trade.

  AssistantTrader --- onMouseClick() ---> SubmitButton
    SubmitButton --- validateGenericTradeInfo() ---> Trade
    SubmitButton --- validateBondInfo ---> Trade
     

If the trade passes all validation tests, the system submits it to the Trade Queue, from which the trade is later sent to the Back Office System for further clearing and processing.

  SubmitButton --- insert() ---> TradeQueue
     

ALTERNATE COURSE

If the validation fails, notify the user, highlight the erroneous values, and get new values from the user.

  SubmitButton --- highlightErroneous() ---> BondTradeEntryWindow