48024 Programming 2 Assignment 1
Topics:
OO Design, Standard Patterns, Lists
Learning Outcomes:
This assessment task addresses the following subject learning objectives (SLOs): 1, 2 and 3
Due Date:
23 September 23:59
Weight:
35%
Individual Work
All work is individual. You may discuss ideas, approaches and problems, but you should write
every line of code yourself except for code copied from the lecture notes, lecture code or lab
code. You MUST NOT let another student see your solution code, and you MUST NOT look at
another student’s solution code. More information about Academic Misconduct can be found
at:
http://www.gsu.uts.edu.au/rules/student/section-16.html
Working Language:
You can choose either Java or Python to complete assignment 1. The higher mark between your
Java solution and Python solution will be counted into your final grade. However, you are only
credited with one of your solutions, either Java or Python, not both of them or the mixture.
Visualizations of the specification have been illustrated in Java. However, the requirements
remain identical between both Java and Python. A starting scaZold for both Java and Python has
been provided on Canvas and ED.
Specification
The team at the Prog2 Warehouse has hired a software engineer to develop a new management
system. The company owns many stores (referred to as suppliers) in the Sydney region, each
supplier is managed by a Manager. The main goal of the software is to be able to interact with
each supplier from both the Customer and Manager side.
Customers, when successfully logged in, can shop from any of the suppliers owned by the
company, including browsing the products and purchasing products. Customers can only see
and order products that are marked as ‘available’. Their shopping history should also be
reflected in the Customer details. The supplier should record a profit from any customer’s order.