Get Instant Help From 5000+ Experts For
question

Writing: Get your essay and assignment written from scratch by PhD expert

Rewriting: Paraphrase or rewrite your friend's essay with similar meaning at reduced cost

Editing:Proofread your work by experts and improve grade at Lowest cost

And Improve Your Grades
myassignmenthelp.com
loader
Phone no. Missing!

Enter phone no. to receive critical updates and urgent messages !

Attach file

Error goes here

Files Missing!

Please upload all relevant files for quick & complete assistance.

Guaranteed Higher Grade!
Free Quote
wave
Tutor Marked Assignment (TMA) - A Supermarket Self-checkout System
Answered

Completing the TMA

Topic: A Supermarket Self-checkout System

Completing the TMA

The TMA is a substantial task that requires planning and effort to complete satisfactorily. You should begin work on it as early as possible.

You must complete tasks 1 to 7 below.�

You are required to design algorithms for a supermarket self-checkout system. To do this, you will use the constructs and techniques taught in sessions 1-5 of the module.

Sellmore supermarket wants to develop its own self-checkout system. The system will look and work much like other competitor systems work (figure 1). You have been asked to develop the software for the system. This software will allow customers to check out baskets of products.

Problem Decomposition

a. Using the approach to problem solving learned in class, identify:

  • The principal parts (sub-problems) of the problem.
  • Any assumptions you are making with regards to the problem.�

b. In pseudo code, outline the basic steps (no more than six) involved in checking out a single product (Do not include any choice or iteration at this point).

The process of checking out will begin only if a customer presses a �Start� option on the system touch screen. Add an IF/ENDIF statement to your pseudo code that will account for the customer pressing the start option. Please note that if the customer does not press start, then NONE of the steps in the checkout process should happen.

Add an IF/ELSE/ENDIF statement to show the different payment methods available to the customer. The system should prompt the customer for their payment method (card or cash). Depending on the payment method it should prompt the customer to enter their card or to enter cash. Create and initialize variables as appropriate.

Task 4 � Checkout (15%)

Use a WHILE loop to extend your solution to account for a customer checking out multiple products. Please note that there is no maximum number of products that can be checked out at Sellmore�s self-checkout. Create and initialize variables as appropriate.

Adapt your solution so that after each product is scanned, the system displays a �Pay Now� option. If this option is selected by the customer (e.g. pay now = true), then the loop exits at the next iteration and program proceeds to the payment part. Create and initialize variables as appropriate.

Task 6 � Transaction Total and Product Count (15%)

As part of the requirements of the system, it should be able to produce a transaction total price and a count of the number of products in the transaction. Extend your solution to (1) Read the product price each time a product is scanned (2) Calculate a transaction total, and display the updated total each time a product is scanned (3) Create a count of the products in a transaction, and display the updated count each time a product is scanned. Create and initialize variables as appropriate.

Task 7 � Bagging Area (25%)

In typical self-checkout systems, as a security measure, a transaction is only allowed to continue if a customer places a scanned product into the bagging area. The bagging area, in reality, is actually a set of weighing scales. The system uses these scales and the product weight to determine whether the product has been placed in the bagging area or not. If the product has not been placed in the bagging area, then a message that says something like �Please place product in the bagging area� is displayed and the user cannot continue his/her transaction. If the product is detected in the bagging area, then the transaction is allowed to continue. Using the following variables expand your solution to force customers to place products into the bagging area.

  • productWeight (the product weight)
  • currentScaleWeight (the current scale reading)
  • previousScaleWeight (the scale reading before the current reading)

support
close