Title: Realtime%20Commercial%20Bidding%20System
1Realtime Commercial Bidding System
- Team 6
- Brenda HarveyJohn JohnstonJason
LaBumbardPeter Tirrell
2Realtime Commercial Bidding System
- Provides realtime bidding capabilities
- Motivation for project
- Strong market demand for e-commerce systems
- Few existing B-2-B commodities brokerages
- Low market pricing means automation needed
- System fills a market niche and does so cost
effectively
3Overview of Features
- Standard and reverse auctions
- Realtime bidding and viewing
- Self-serve auction setup
- Administrator
- Distributed auctioneer attributes operations
- Account management functions
- Combined account functionality
4Overview of Features continued
- Users may participate in multiple auctions
- Forgotten password retrieval
- On the fly account setup
5Prototype
- Login screen
- Existing and new users
- Auction list view/select
- Join, bid in, and view an auction
- Bid history, withdrawing
- Client-side view of reverse auction
6Login Screen
7Auction Information Screen
8Regular Auction Screen
9Regular Auction Screen 2
10Regular Auction Finished
11Withdrawing a Bid
12Auction Information Screen 2
13Reverse Auction Screen
14Reverse Auction Finished
15Create Auction Screen
16Grey Areas
- What is an Auctioneer?
- Automated piece of code
- One approach handle as distinct class
- Second approach divide functionality to other
classes
- Why an Administrator?
- Can all site maintenance be automated?
- What can be handled by auctioneer or user
account functions and what cannot?
17How Problems Were Solved
- Auctioneer
- Logically divide auctioneer data and
functionsinto auction and user account classes - Avoid redundancy and simplify design
- Site Administration
- Create an administrator class
- Administrator basically a special type of user
account
18Description of Class Model
- Aggregated under Realtime Auction Site
- Makes use of Administrator
- Abstract classesAuction
- User account aggregated for client and bidders
- Client side login, sign-up, get password
- Auctioneer attributes and functionality
distributed among several classes
19Class Model
20Sequence Diagrams
- Generalized overall sequence diagram
- Many possible object interactions
- Not a single stepwise progression of events
- Most possible interactions presented
- Use specific sequence diagrams
- Depict major interaction scenarios
- Single stepwise progression of events
- Ack used to denote acknowledgement of messages
21Sequence Diagram
22Bidding in a Standard Auction
23Bidding in a Reverse Auction
24Setting up a Reverse Auction
25Setting up a Standard Auction
26Use Case Diagrams
- Generalized use case diagram
- Many possible actor/activity interactions
- Actors include bidder, client, and administrator
- Specific use case diagrams
- Client interactions w/ in progress auctions
- Setting up an auction
- Bidder auction participation scenarios
27Main Use Case Diagram
28Seller Use Case Diagram
29Bidder Use Case Diagram
30State Diagrams
- Used to show possible states of major objects
- Administrator state diagram
- Fail-safe site intervention capabilities
- Auction state diagram
- Describes progression of auction behavior
- User state diagram
- Describes user interaction in realtime
- User account state diagram
- On the fly account maintenance
31Administrator State Diagram
32Auction State Diagram
33User State Diagram
34User Account State Diagram
35Critical System Properties
- Summary of critical system properties
- No distinct auctioneer class
- Administrator
- One user account, both client and bidder
capabilities - Self-serve account maintenance
- Auction abstract class and inheritance
- Client-side functionality
36Promela and XSpin
- Analysis of two client-supplied state diagrams
- Performed initial visual analysis of diagrams
- Coded state machines in promela
- Developed basic test case scenarios
- Future work
- LTL
- Additional scenario analyses
37Client State Diagram
- Spin Analysis
- Issue of end_auction signal in any state other
than Idle results in deadlock - Failure of auctioneer to send bidok results in
deadlock in User_Bid state - Dropped bids on timeout
- Non-Spin Analysis
- No bid-not-ok signal (timeout?)
- What happens when client bid is not high bid?