CSC8016: Advanced Programming Coursework, NU, Malaysia We want to implement a virtual shopping system, whether the threads are either clients using the web app
University | Newcastle University (NU) |
Subject | CSC8016 : Advanced Programming |
We want to implement a virtual shopping system, whether the threads are either clients using the web app or clients buying products on the physical shop using the mobile app. The lifecycle of any client interaction is summarised by ClientLifecycle: Each client interacts with the shop through
the RainforestShop via the login method, through which each client can add items to its basket and perform re-shelving operations.
Each client can get a list of available items at the time of the query, basket a given product by name, (re)shelf the product (thus removing it from the basket), checkout, and proceed with the payment (thus either buying all the items on the basket or none of those entirely), and logging out of the system while losing the information of all the items being previously put in the basket from the real/virtual shelf.
Each time an allowed user logs in, a non-empty transaction will be created with a unique transaction ID. The unavailability of the product shall be confirmed not while basketing the items, rather than after purchasing those. At this stage, the shop supplier might be notified that some products are missing and refurbish the show with a non-zero amount of products of the same type. For simplicity’s sake, the refurbishWithItems method will be in charge of creating the number of desired products and placing them on the shelf.
As in any industrial setting where teams split up the duties, you are assigned an API that you need to implement. This will then require finalizing the implementation of RainforestShop and the integration of concurrency
mechanisms in ProductMonitor; the Transaction class shall not be changed! The Testing solves a twofold task: showing how Clients, Suppliers, and the Shop system are communicating, as well as providing some preliminary guidelines on how the coursework is going to be assessed.
The student is free to choose whichever is the best way to pass the tests (not fully disclosed to the students) in the Testing class. E.g., the RainforestShop could be either modeled as a finer-grained monitor, but inside this monitor at least one thread per logged user should be running; also, such a Rainforest Shop could be also implemented as consumer threads handling all of the client’s messages.
Get Help By Expert
Are you finding it difficult to tackle the requirements of your Advanced Programming Coursework? Fear not, Assignment Helper MY is here to assist you. Our dedicated team of writers understands the intricacies of programming and can provide you with the necessary guidance and support to excel in your coursework. So, without any hesitation get Programming Assignment Help at a low price.
Recent Solved Questions
- CMA6134 Queue Simulation Assignment: petrol station brand Case Study for Peak vs Non-Peak Traffic Management
- Marketing Assignment, UNM, Malaysia Classify firms according to the 4 different roles they might play leader, challenger, follower, and niche
- Accounting Assignment, UM, Malaysia Mantera Bhd was incorporated in 2002 and the company’s core businesses are manufacturing, importing, exporting, distributing
- Big Data and Ethics Essay, APU, Malaysia The U.S. firm Apple operates a digital ecosystem with its own hardware and software. Part of this ecosystem is an app store
- Information Technology Assignment, APU, Malaysia Octra Solutions is a privately owned, well-known software company located in Southern Malaysia
- Data Science Coursework, APU, Malaysia Explain your dataset in detail: source, number and types of attributes
- Select any one of Malaysia’s public listed firms from the sector of construction/plantation/ property only: Finance Assignment, AUTI, Malaysia
- International Business Assignment, UON, Malaysia The COVID-19 Pandemic has impacted International Business in a big way. Please discuss the main features of this
- MSBA7113: Your Task is to choose between a quantitative, qualitative, or mixed-methods research approach: Understanding Research Methods Assignment, CUM, Malaysia
- Create an application named TestMethods whose main() methods holds two interger varieble: Object Oriented programming 2 Assignment, SU, Malaysia