You are on page 1of 10

PublicAuction Project

CS 351 PROJECT #4

G R U I A - C ATA L I N R O M A N

6 NOVEMBER 2017
Distributed Auction
AUCTION AUCTION
BANK •••
CENTRAL HOUSE k

Each entity is logically located


on a different server in the
AGENT i network

CS 351 PROJECT #4 2
Stakeholders
• Auction Central (static known address)
• Bank (static known address)
• Agents (dynamically created)
• Auction House (dynamically created)

CS 351 PROJECT #4 3
Auction Central
• It is static and at a known address
• Registers and deregisters auction houses
• Accepts client requests to participate in the auctions
• Mitigates all financial transactions between the bank and the auction houses

CS 351 PROJECT #4 4
Bank
• It is static and at a known address
• Accepts client requests to open new accounts with a fixed initial deposit
• Accepts auction central requests to block/unblock funds on a particular account
• Accepts auction central requests to move funds from the bank to the auction
house, when a bid is successful

CS 351 PROJECT #4 5
Agent
• Agent is dynamically created
• opens a bank account by providing a name and getting back (account number, bank key, fixed
deposit)
• registers with the auction central by providing (name, bank key) and getting back a bidding
key
• asks the auction central for a list of auction houses
• asks an auction house for a list of items being auctioned (auction house id, item id, minimum
bid, current bid)
• uses the bidding key to make a bid and receives back
• acceptance
• rejection
• pass (higher bid in place)
• winner

CS 351 PROJECT #4 6
Auction House
• Auction house is dynamically created
• it registers with auction central by providing a name and by receiving a (public id, secret
auction key)
• it has a fixed list of items to sell and auctions at most three items at a time
• auction house id, item id, minimum bid, current bid
• it receives bids and acknowledges them
• for each bid it asks auction central to place/release a hold on the bidder’s bank account for an
amount equal to the bid in question
• for a successful bid, auction central is requested to transfer the money to the auction house
• a bid is successful if not overtaken in 30 seconds

CS 351 PROJECT #4 7
Instructions
• Form four-person teams.
• Each person is fully responsible for developing one of the components.
• The entire team is responsible for
• interface specification
• integration and testing

CS 351 PROJECT #4 8
Special Instructions
• An incremental approach to the program development is mandatory.
• The following phasing of the project is recommended
• full specification of all interfaces
• logical view
• coding view
• interactions between agent and bank
• interactions between agent, bank, and auction central
• addition of the auction houses

CS 351 PROJECT #4 9
Other Instructions
• The auction house offerings may be scripted
• The auction house should terminate graciously
• The agent should terminate graciously
• The agent interface with the end user can be
• textual
• two separate windows (auction status & commands)
• JavaFX display

• Testing should involved at least two auction houses and two agents

CS 351 PROJECT #4 10

You might also like