Due Week 5 and worth 100 points
In this project you will bring together everything you have learned in this class, including both programming techniques and non-technical skills.
Tiny Distributors is a small brick and mortar store that sells various items. The owners feel they are at the point in their growth where they would benefit from a presence on the Internet. They have hired Web developers to create the website and pages, but need a Java developer to create underlying functionality.
The owners have listed the following as the minimum functionality required for this project.
- The ability to add, modify, and delete customers
- The ability to add, modify, and delete inventory items
- The ability to add, modify, and delete customer orders; a customer order is comprised of two parts: the order header and one or more line items
- The ability to create and print a customer report
- The ability to create and print an individual customer order
- The ability to create and print an inventory report listing all inventory items in stock
- The ability to create and print an order report listing all orders currently open
PHASE 1 REQUIREMENTS:
This phase is the discovery phase, no coding is required. You will be using your knowledge of object oriented principles to complete this phase.
- List all of the classes you will need to capture the data required for the project. Be sure to label each class as concrete or abstract as well as all child classes that will inherit from a parent class. Be sure to include the following for each class:
- The name of the class and whether it is concrete or abstract
- If the class is inheriting, the name of the parent class
- A list of all properties in the class
- A list of all methods in the class and a brief description of the functionality of the method. You do not need to include the signature at this time. Some examples:
- GetCustomer is a method that will retrieve all customer data for a given customer
- UpdateInventory is an abstract method used to update the various types of inventory items
- In order to flush out the requirements, developers need to do research as well as ask questions from users to ensure the requirements are correct. For the purposes of this project, I am the user you will be contacting. Any questions should be directed to me and I will provide the information needed.