CSC113 Project Phase 1
CSC113 Project Phase 1
Phase 1
Due date: 17/10/2024
The goal of this project is to provide you with hands on experience with creating your own
java program from design to implement. This project is to be completed in groups of 3
people at most.
Project Title: Java project
Project Description: In this project, you will create a Java program using all the skills and
topics learned during the course so far. You should come up with an idea for a system that
support user interaction and provide several services for the user. Some examples of Java
project ideas are:
- Hotel reservation system
- Library management system
- Online restaurant ordering system
- Online school management system
You can be as creative as you want as long as you follow the project requirement.
Remember Programming is not typing Java code, it involves planning and careful designing.
Project Requirements:
Your system should have at least four different classes.
Your system should have at least two relation (Composition OR Aggregation , it can
be with same classes or different classes) , based on your design you should select
the appropriate relation.
You should have at least three classes with an inheritance relation between
them, you must select the appropriate classes for this relation ( the inheritance must
be two levels ).
Your system must support polymorphism with at least one polymorphic method.
At least one class must be an (Abstract class).
There must be at least one array of objects with methods that support: add ,
remove and search for object.
All the classes must have the necessary attributes and methods to work properly.
Submission Guidelines:
• You are expected to work in teams, each team must contain at most 3 students.
• you will submit a report that includes the following:
o A cover sheet including the names and IDs of your team members and the division
of work among them.
o Introduction about your program
o Full UML showing the different relations between all your classes.
o Implementation and design details describing all methods that the user uses , their
input, output, and what they do. In addition to submitting your source code
(compressed in ZIP format).
o Screenshot of your sample run.
• All submissions, should be made through LMS.
• The submitted work should be your own work. Any case of unethical conduct will result
in an F in the class.
Note:
Your code should be written with: proper indentation, comments, and proper
naming of the variables, methods, and classes. All of these points will be graded.
The system you design in this phase will be used in phase 2 as well , so make sure
you design it properly.
each team should have a leader , the leader responsibility is to submit the work
note: this is an abstracted UML , you need to add more details such as attributes , methods ,
multiplicity ( this is only to give you an idea of what is expected )