Reference no: EM133127322
ASSESSMENT TASK: PROJECT A
TASK DESCRIPTION
This project requires students to create an Object Oriented design and coded solution for a chosen application, using all the concepts taught in the subject.
You may choose to complete this assessment with at most one (1) other person. To work as a pair; you and your partner MUST be in the same tutorial class. You will need to spend approx. 10 hours together working on the assessment (outside of tutorial hours). If you do not intend to spend this time working together - choose to complete the assessment on your own. Both partners must put in an equal amount of work and effort, or the group will be dissolved by the tutor.
Learning Outcome 1: Demonstrate a working knowledge of lists in Java.
Learning Outcome 2: Judge if a solution is well-designed.
Learning Outcome 3: Design a good 00 solution from a specification.
Learning Outcome 4: Use inheritance in Java.
BRIEF
This is a take home assessment to evaluate your understanding of object oriented concepts taught so far in IAPP001. The assessment will be composed of three (4) parts: the scenario, the design, the code and explanation (including proof of testing).
The scenario: (200 words)
You will decide on the topic for your project. You should choose a business for example, a café.
You will write the basic usecases for the business, including identifying the major functionality the application must provide.
The design: (200 words)
You will create a simplified class diagram for your application, which shows the attributes/methods for each class and the inheritance. You should aim to have between 6 and 8 classes for your application. The classes should be: Main/driver class, parent class (at least 1), enum, child classes (at least 2), group class (at least 1).
You will explain how your design will provide the needed functionality for the application. The code:
You will write the code for the application using the design. Make sure you follow the guidelines setout in the subject eg use camelCase for objects, LetterCase for classes, all classes have toString(). Public mutators should be used sparingly etc
Your solution will need to use either interface or implementation inheritance (or both); overloading, overriding, menus with recursion and for each loops.
The explanation: (300 words)
You will explain the code you wrote and any problems you encountered and how you fixed them. At minimum you need to identify :
All inheritance - including why inheritance was used in this/these class(es) All overloaded methods - why overloading was used in each case
All overriding methods - why overriding was used in each case
All enum classes - why enum was used in each case
Any polymorphism - how it affected the code
You also need to include at least 1 screen shot of your code being testing on the object bench.