Project Description
Your project will be a small system developed using Java. You are required to use all the knowledge acquired throughout the course.
Task 1 – Project Scope
It is important that you pick your project carefully, as you will be working on it throughout the term. It is much easier and fun to work on a project that is interesting and meaningful to you.
Each student has to select one of the projects provided at the end of this document. Students are also engorged to work on other projects they would proposed but they need first to write a short description like the one given at the end of document and seek the lecturer approval.
Write an introduction (1-2 page) that concludes the project idea, its main functionality, the goal and objectives of project.
Task 2 – Project Design
Once your project proposal has been approved by your lecturer you can move to design your project. The design document usually includes the UML class diagram along with description. In your design you should:
Program Design
1) Have at least three classes.
2) List all the data and methods of each class.
3) Use different kind of relationships between classes.
4) Use at least one Inheritance relationship.
5) Describe the functionality of each method.
6) Describe the purpose of each data item
Database design
1. Have at least two tables.
2. Describe the need for each table
3. Describe each filed in each table
4. Describe the relationships between the tables. GUI design
1. Have at least three screens
2. Have used different components like text boxes, labels, buttons, list, …etc.
3. Describe the need for each screen and the use of each element
Task 3 – Project Implementation
In this task you need to write the Java code to implement your design, make sure to meet the object oriented programming principles such as:
• Objects exhibit polymorphic behaviour and persistence
• Objects interact with outside world through method invocation.
• The impact of the modification is limited by encapsulation.
• The use of method overloading to provide flexibility to users
• Inheritance is used to modify class behaviour.
• GUI elements are programmed properly to provide user friendly interface.
• JDBC is correctly used and configured to connect to database,
• Add, delete, and update operations are performed correctly on the database
• Uses language instructions that facilitate the understanding of the code (comments, indentation, code structure...)
Task 4 – Project Testing
Perform Junit testing to test the main methods in your project (at least five) and document the testing results.