Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

2. An online take-out food selling system is used to help restaurants sell food to customers. Restaurant managers and customers need to register in the

image text in transcribed

2. An online take-out food selling system is used to help restaurants sell food to customers. Restaurant managers and customers need to register in the system by creating an account in the system with a unique username and password. Then, restaurants managers could submit different types of dishes into their Account. Each type of dish has a name, a picture, a price and a description. Each customer could login into the system and add dishes of different restaurants into their shopping trolley. After customers have finished the selecting of dishes, they could place an order including dishes in the trolley providing the delivery address, and pay for the order. Each order require an deliveryman to take foods from restaurants and send them to customers according to the delivery address. Each deliveryman need to create an account in the system. After there are orders need to be deliveryed, deliverymans could apply to take the order and delivery foods for the order. Each order have Unpaied, Paying, AssigningDelivery, Deliverying, Deliveryed states and Canceled. (1) Build a domain class diagram for the application (following are some suggested classes: Customer, Restaurant manager, Deliveryman, Account, Dish, Order, etc.) (15') (2) Build a state diagram for the status of an order in the system. Tips: After an order is placed, the state is "Unpaid". If the customer is paying for the order, it changes to "Paying state. If the payment fail, it return to "Unpaided" state. If the order is payed successfully, the restraurant manager will trigger the delivery of the order and the order changes to "AssigningDelivery" state. If the order is applied by a deliveryman, it changes to Deliverying" state. If the deliveryman takes and send the order successfully, it changes to Deliveryed" state. However, if the order is not deliveryed successfully, it returns to "AssigningDelivery" state and waits for the applying of deliveryman. If the customer cancels the order, the order is canceled. The order could be canceled only when the state of the order is not in Deliverying" and "Deliveryed" states. (15) (3) "Dishes Management", "Account Management", "Order Management", and "Delivery Management"are four use cases for this system. Draw a use case diagram for this software. (5) (4) Write a normal and an exception scenario for the "Order Management use case. (10') Tip: In this use case, customers need to place order and pay for the order. And the deliveryman need to apply for the order and the manager need to assign the order to a deliveryman. Finally, the deliveryman finish the delivery of the order. (5) Draw a sequence diagram for the exception scenario in question (4). (10') (6) Build an activity diagram to describe the process of executing an order in question (2). (10) 2. An online take-out food selling system is used to help restaurants sell food to customers. Restaurant managers and customers need to register in the system by creating an account in the system with a unique username and password. Then, restaurants managers could submit different types of dishes into their Account. Each type of dish has a name, a picture, a price and a description. Each customer could login into the system and add dishes of different restaurants into their shopping trolley. After customers have finished the selecting of dishes, they could place an order including dishes in the trolley providing the delivery address, and pay for the order. Each order require an deliveryman to take foods from restaurants and send them to customers according to the delivery address. Each deliveryman need to create an account in the system. After there are orders need to be deliveryed, deliverymans could apply to take the order and delivery foods for the order. Each order have Unpaied, Paying, AssigningDelivery, Deliverying, Deliveryed states and Canceled. (1) Build a domain class diagram for the application (following are some suggested classes: Customer, Restaurant manager, Deliveryman, Account, Dish, Order, etc.) (15') (2) Build a state diagram for the status of an order in the system. Tips: After an order is placed, the state is "Unpaid". If the customer is paying for the order, it changes to "Paying state. If the payment fail, it return to "Unpaided" state. If the order is payed successfully, the restraurant manager will trigger the delivery of the order and the order changes to "AssigningDelivery" state. If the order is applied by a deliveryman, it changes to Deliverying" state. If the deliveryman takes and send the order successfully, it changes to Deliveryed" state. However, if the order is not deliveryed successfully, it returns to "AssigningDelivery" state and waits for the applying of deliveryman. If the customer cancels the order, the order is canceled. The order could be canceled only when the state of the order is not in Deliverying" and "Deliveryed" states. (15) (3) "Dishes Management", "Account Management", "Order Management", and "Delivery Management"are four use cases for this system. Draw a use case diagram for this software. (5) (4) Write a normal and an exception scenario for the "Order Management use case. (10') Tip: In this use case, customers need to place order and pay for the order. And the deliveryman need to apply for the order and the manager need to assign the order to a deliveryman. Finally, the deliveryman finish the delivery of the order. (5) Draw a sequence diagram for the exception scenario in question (4). (10') (6) Build an activity diagram to describe the process of executing an order in question (2)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Accounting questions