CSE 222/505 Homework 1 automation system

$30.00

Category: You will Instantly receive a download link for .zip solution file upon Payment || To Order Original Work Click Custom Order?

Description

5/5 - (4 votes)

This homework is designed for you
– to review OOP concepts and Java programming,
– to get used to reporting conventions that will be used in the course.
In this homework you are not allowed to use any data structure other that simple arrays.
Later, we may reuse the same scenario and ask you to implement the same system using
some data structures introduced during this course.
SCENARIO:
Design and implement an automation system for a company that sells office furnitures.
An example requirement set is defined as follows: The company has 4 different branches and
sells both in-store and online. The store sells office chairs (7 models and for each, 5 colors),
office desks (5 models and for each, 4 colors), meeting tables (10 models and for each, 4
colors), bookcases (12 models) and office cabinets (12 models). The automation system has
users such as administrators, branch employees and customers. Administrators manage the
system by adding and removing branches and branch employees. They can also query
whether there are any products that need to be supplied. A special customer number is
defined for each customer in the system. When a person subscribes to the system, he/she
uses his/her name, surname and e-mail address, and defines a password. When the
registration is completed, the customer number is automatically defined in the system and
the user is informed about it. When the customer logs into the system, they can search for
products, see the list of products, see which store a product is in, shop online by entering
address and phone information, and view their previous orders. Branch employees can
inquire about the products in stock, inform the manager that the product should be
purchased when any product is less than the requested amount, add / remove products, make
sales, access the information of the previous orders of a customer by using the customer
number and add new order to this section. Branch employees should update the customers’
previous orders section during their sales from the store. If the customer is shopping for the
first time, then they should create a new subscription.
You should define your own set of requirements and design and implement a system for
them. Note that your system should include the features in “grading” section. Do not
overextend the requirements that makes the implementation harder. Similarly, do not
oversimplify the requirements; the software system should be a complete automation system
and your implementation should include all required features.
RESTRICTIONS:
– Use only Array
– Can be only one main class in project
– Don’t use any other third part library
GENERAL RULES:
– For any question firstly use course news forum in Moodle, and then the contact TA.
– You can submit assignment one day late and will be evaluated over sixty percent (%60).
TECHNICAL RULES:
– You must write a driver function that demonstrates all possible actions in your homework. For
example, if you are asked to implement an array list and perform an iterative search on the
list then, you must at least provide the following in the driver function:
o Create an array list and add items to the list. Append items to head, tail, and k
th index
of the list.
o Perform at least two different searches by using two items in the list and print the
index of the items.
o Perform another search with an item that isn’t in the array list and inform the user
that the item doesn’t exist in the array list.
o Delete an existing item from the list and repeat the searches.
o Try to delete an item that is not on the array list and throw an exception for this
situation.
The driver function should run when the code file is executed.
– Implement clean code standards in your code;
o Classes, methods and variables names must be meaningful and related with the
functionality.
o Your functions and classes must be simple, general, reusable and focus on one topic.
o Use standard java code name conventions.
REPORT RULES:
– Add all javadoc documentations for classes, methods, variables …etc. All explanation must be
meaningful and understandable.
– You should submit your homework code, Javadoc and report to Moodle in a
“studentid_hw1.tar.gz” file.
– Use the given homework format including selected parts from the table below:
Detailed system requirements X
The Project use case diagrams (extra points) X
Class diagrams X
Other diagrams
Problem solutions approach X
Test cases X
Running command and results X
GRADING :
– No OOP design: -100
– No interface: -95
– No method overriding: -95
– No error handling: -50
– No inheritance: -95
– No polymorphism: -95
– No javadoc documentation: -50
– No report: -90
– Disobey restrictions: -100
– Cheating: -200
– Your solution is evaluated over 100 as your performance.
CONTACT :
– Teaching Assistant : Başak Karakaş
– bkarakas2018@gtu.edu.tr