Page 1 of 1

1. Brief Task Description Design and implement 'Store automatic system' similar to the Apple store, allowing the staff t

Posted: Fri Jul 01, 2022 5:35 am
by answerhappygod
1. Brief Task Description
Design and implement 'Store automatic system' similar to theApple store, allowing the staff to communicate and provide anexcellent customer experience. You should build a Client/Server-side software system in Python to interact with the user(shop assistant) on the client-side and add, remove or update dataon the server-side. The client-site part of the program should havean intuitive user interface to start a client request, viewavailable items and prices, create order (add, remove item), manageorder and payment, close the request, and view the client(shopkeeper) record for the day. The software should interact withthe current stockpile of a product and update the inventory basedon the orders done by the client. The server program shouldinteract with one client or multiple clients for the advancedversion of the software.
Scenario
'Shop automatic system' allows the staff/shopkeeper tocommunicate and provide an excellent customer experience. When apotential customer arrives at a store, he/she is asked by theshopkeeper for a name and the customer is added to the system.Then, next available staff member can approach the customer andproceed with the service. The shopkeepers are the primary users ofthe system, and they can view the current stock, create orders, addmore items into a basket, submit the order, and make a payment.Each client/shopkeeper will see his/her daily activity.
Scope
The Shop automating system must have four main options: a. Newcustomer request
b. Current stock
c. Order
d. Client/Shopkeeper dashboard
a) The ‘New customer request’ option should allow theclient/shopkeeper to;
 Enter the customer’s name and mark the geographical place(position in the shop) where the customer is. (The list will besent to a server for all shop assistants to see)
 Show list of current customers waiting to be served (Includingname and location of the clients).
 Option to add the Client/salesperson name when the customerget to be serve by a salesperson (This should be sent to a serverfor the customer to be removed from the list of customers waitingto be served)
b) The 'Current stock' option should allow viewing of all of theavailable stock. The stock should be stored in databases (text, csvor MySQL) on the server-side and can be retrieved by the client.Each item should have its name, price, colour and number of itemsavailable. c) The 'Order' functionalities should be available inthe 'current stock' option. (Feel free to suggest yourimplementation) When a customer wants to make an order, there is anoption of;
 adding an item to a basket,
 adding more items to a basket and/or finish and pay
 cancel/delete the item in the basket
 finish and pay
The receipt should be displayed on the client-side of theapplication for the customer to see it. The order should be sent toa server-side where; stock, orders and shopkeeper data storageshould be updated accordingly.
d) The 'Client Dashboard' option should allow theclient/shopkeeper to see his/her daily summary including amount ofmoney their make in a day and commission.
Software Description
Start by designing your shop system using a UML diagram. The UMLdiagram does not have to be using precise UML notations; however itshould have a graphical illustration of the whole system.
Data storage:
You could have a simple .txt file or .csv file or fullimplementation of MySQL data containing the following: Customer:customer name, geographical position, status (start, finish),shopkeeper’s name. Available stock. The file should contain theproduct id number, name, colour, price (more attributes if youwish). Shopkeepers including; shopkeeper id, name, surname,date/workday, sold item-name, item price and commission amount.Each order contains all data from the receipt. For example, orderid, item name, item price, tax, buyer’s name, surname, and if thepayment was cash or card. Server Design and implement a (commandline) server program that connects to the previously implementeddatabase (in text or CSV or MySQL). The Server should have methodsto add, remove, or update the data described above and communicatewith the client accordingly. Client Design and implement Pythonfile to be used as the client. The client should contain theShopping system user Interface (UI), in GUI or text-based. This GUIor text-based program should allow the user/shopkeeper to implementall four functionalities described above in the scope (point 4) andconsequently communicate with the server