Activity and State Modeling

DUE: 11:59PM, Wednesday 5 December 2012

15 points


Objectives

  • Practice modeling using activity diagrams and state machine diagrams

Tasks

A high level description of an auction application is provided below. Read the description and answer questions 1 and 2 that follow. Feel free to use your imagination to fill in specific details in case they are not provided or if you aren't familiar with the auction domain.

An auction application involves buyers, sellers, and other users. Buyers and sellers must have accounts in order to place bids, purchase items, create a new auction, or ship items. Other users may use the auction application to search for items or browse through categories.

An auction must be created for an item to be sold in a certain category. According to Wikipedia, an English auction "is the type of auction commonly used by the English auction houses like Sotheby's, Christie's, and Phillips. Participants bid openly against one another, with each bid being higher than the previous bid. The auction ends when no participant is willing to bid further (and the auction time is over), or when a pre-determined buy-out price is reached, at which point the highest bidder pays the price. The seller may set a reserve price and if the auction fails to have a bid equal to or higher than the reserve, the item remains unsold."

  1. Draw an activity diagram showing a typical workflow for a buyer and seller in the same diagram. Use separate swimlanes for the buyer and seller.
  2. Draw a state machine diagram showing the state of an auction (i.e., instance of the auction concept). Show the states starting from the initialization of an auction to its finalization. Show all the events and transitions, possible guard conditions, and actions (if needed).

Deliverables

Create a single PDF document, yourEID.pdf that contains the following:

  • An image of the activity diagram.
  • An image of the state machine diagram.
  • A brief overview explaining your diagrams, especially your rationale behind the decisions you made when you created them.

Submit

  • Submit the document using Assignment Submission in RamCT.