Академический Документы
Профессиональный Документы
Культура Документы
Assignment 4 – Models
1. System Overview
The OTrack System is intended to provide a reliable online auction platform, where customers
place bids on the company's items and can track them, and the orders they may bring to
existence as well. On the company side, the system controls the whole bid processing workflow,
which includes:
• Bid Acceptance: A bid clerk is notified of a new winning bid, verifies it, and can approve
or reject it. Every bid has a unique identifier.
• Order Fulfillment: Accepted bids originate new orders. Orders contains one item which
may have several parts. The system provides information to the fulfillment department, in
order to allow proper retrieval of item's parts from stock, packaging, labeling and shipping.
Stickers with the bid identifier are added to each part of the order's item, so that they can
be precisely bound together.
• Billing: Once an order has shipped, a bid clerk verifies the order and shipped items and
sends a bill electronically to the bidder.
2. External Actors
Bidder: The value OTrack delivers to a bidder is the capability to place bids on company's items,
through the Internet. The system also provides them with tracking features for bids and orders,
and an electronic billing functions.
Bid Clerk: A bid clerk uses the system to receive, review, accept or reject bids. Additionally, the
clerk interacts with the system in order to process bills of completed orders, by verifying
information and adding details if needed.
Order Fulfillment Worker: These users receive information on orders that should be fulfilled,
prints the labels and sticks them to each part of the order's item; and notify the system about the
completion of orders (after they are shipped).
Label Printer: A printer is used by the system, to print the Bid Label IDs. These labels are used
to identify the parts of an ordered item.
3. Enumerate and describe each of the key processes in the use case including display and
approval of the winning bid, handling and shipping the item, and billing the bidder. Name them in
such a way that you can use them in your diagrams (e.g., Display Winning Bid).
• Display Winning Bid: The system detects an online bidder has placed a winning bid. The
bid clerk refreshes the “Pending Winning Bids” list. The system shows the new winning
bid as pending.
• Bid Approval: The bid clerk opens the new winning bid, verifies it and if everything looks
good, approves it, otherwise the bid is rejected and a notification sent to the user.
• Fulfill Order: Once a winning bid is marked as accepted, anyone in the fulfillment
department is able to open it by refreshing the “Pending Shipment” list, retrieve materials,
print labels, stick them to the items, package and submit to shipping. After that, an order
fulfillment worker marks the order as “fulfilled”.
• Bill Bidder: The bid clerk refreshes the “Pending Billing” list and finds the recently fulfilled
orders. The clerk opens and order, verifies payment history, payment options, and
shipment, and submits the bill electronically to the bidder.
4. Draw a system sequence diagram showing interactions between the system and the external
actors
Submit Winning Bid The "Reject Winning Bid " action is also
possible here , but it's been ommited
"You Win " Message for simplicity .
Approve
Order Fulfillment Worker
"Bid Approved " Message
Open Order
Order Details
Label Printer
Print Labels
Labels
Order Shipped
Open Order
Order Details
Submit Bill
Billing Notification
5. Enumerate all candidate classes for a class model; describe why you are rejecting the classes
that you do not select for your model
• Bidder
• Bid
• Bid List – Synonym of Bid
• You Win Message – Synonym of Message
• Winning Bid List – Synonym of Bid List
• Bid Details – Synonym of Bid
• Bid Approved Message – Synonym of Message
• Pending Shipment List – Synonym of Order List
• Order List – Synonym of Order
• Order
• Order Details – Synonym of Order
• Label – Built based on Bid and Item Parts associated to an order
• Item
• Item Part
• Bill
• Billing Notification Message – Synonym of Message
• Message
6. Select your entity classes (business classes, domain classes) for your class model, and explain
your selections. Describe their class responsibilities, attributes, relationships and multiplicity.
◦ Name
◦ User name
◦ Password
◦ Address
◦ E-mail address
◦ Identifier
◦ Amount
◦ Status
◦ Time stamp
◦ Item
◦ Acceptance date
◦ Message body
◦ Subject
◦ Recipient
• Order: Contains data about the Item of a bid. The separation between item and order was
kept in order to address the future possibility of multiple items per order.
◦ Bid
◦ Item
◦ Shipping & Handling fee
◦ Shipping Address
◦ Bill
• Item: Contained by the order, represents a single company item, which may be
associated to a bid. Contains Item Parts.
◦ Code
◦ Description
◦ Parts
• Item Part: Contained by an Order Item. Represents one of the parts of an Item.
◦ Code
◦ Description
◦ Model
◦ Serial number
◦ Location
• Bill: Conveys data about the amount owed, payment details. Contained by Order.
7. Select your design classes (including interface and GUI classes) for your class model, and
explain your selections. Describe their class responsibilities, attributes, relationships and
multiplicity. Define operations.
Interface Classes
• Bidding Page
• Pending Winning Bids List
• Bid Details
• Pending Shipment Orders List
• Order Details
• Pending Billing List
• Bill Details
Controller Classes
The items listed for each class in this section are operations.
1
Bid Bidder
Bill
Order 0..1 -identifier -name
-paymentDueDate 1 0..* 1
-amount -username
-totalAmount -shippingAddress
-status -password
-paymentType -shipAndHandFee
1 1 -timestamp -address
-billingAddress
-acceptDate -email
Message
-body
-subject
-recipient
+send()
1
«controller»
«controller» BiddingHandler
«controller» «controller» OrderFulfillmentHandler
BillingHandler OrderHandler
+getPendingWinningBids ()
+printLabels() +placeBid()
+sendBilling () +create() +setShipped() +accept()
+reject()
Data Stores
Processes
Data Flows
Bid
Order with
Updated Order with
New Bid Pending Item Parts
Order Pending
Shipping
Shipping
Bid Clerk