This assignment is designed to test your ability in applying object-oriented programming techniques. By completing this assignment, you demonstrate that you can:
This is an individual assignment.
CQ Solar Power System Installers (CQS) undertake installations of Solar Power systems in their customers’ buildings. Each of these installations has the pre-approved design showing the following details:
Each of these installations is carried out by a technician and it takes generally more than a day to complete an installation. CQS has approached you to design a JAVA Application (hereafter called as system) to maintain the records of Solar Power installations.
The system should have necessary GUI forms to enable data entry of the following details:
Note: It follows from the above description that a Building can be related to/have a Solar Power system installation; and an Installation is done by a technician.
The system should be able to perform the following:
In the initial stage, in assignment 1, you don’t have to store the data in files or in database. So, every time when the application runs the user must input the data.
Suggestions: For data entry, you can use appropriate controls such as TextFields, ComboBoxes, etc., You can use Labels to display error messages and TextArea/Tables to display the list of entries. You can use any other controls that are appropriate to data entry and for displaying outputs and error messages.
The application should have at least the following command buttons to enable user interaction.
The application’s GUI layout is left to your choice. The application should also be user-friendly and is expected to validate the data entered and display appropriate error/exit messages. For the application development, you need to create appropriate Java classes. Each of the classes should have appropriate constructors, suitable accessors and mutators and toString method. Wherever necessary, you need to use the inheritance and/or aggregation concept of OOD. You might have to create your own super class and sub classes that are relevant to the above requirements. Please note that extending the available built-in Java classes such as JFrame will not be considered, as inheritance usage, for assignment marking purpose. The application should also show your Student ID and Full name.
The data type for each of the inputs has not been mentioned purposely. You need to use the appropriate data type accordingly.
FAQ and Answers (important to read)
You are also encouraged to discuss any other related questions with your lecturer/tutor and design your application accordingly.
Note:
If you submit an interactive Java application without any GUI controls, you will be given only partial marks.
In order to avoid plagiarism, complete list of classes, fields, methods and GUI layout have not been provided specifically in this assignment so that you are encouraged to develop your own classes appropriately.
You should submit the following files:
Asignment 1- Marking criteria
Item |
Description |
Maximum marks |
1 |
Program compiles (0.5) and runs (0.5) |
1 |
2 |
Used Inheritance and/or aggregation |
1 |
3 |
Displays student id and student name |
1 |
4 |
Displays necessary controls for data entry |
2 |
5 |
Creates and stores relevant details of technicians (1.5) and installations (1.5) |
3 |
5 |
Implemented Clear (0.5) and Exit/Stop (0.5) aspects |
1 |
6 |
Validated inputs (1.0) and displayed error messages (1.0) |
2 |
7 |
Classes’ implementation complete and adequate: Suitable fields and appropriate data types (1.0) Appropriate constructors (1.0) Appropriate methods (2.0) |
4 |
8 |
Quality: Code quality (meaningful names, indentation, comments, etc.,) (1.0) GUI (appropriate controls, good layout, user friendly, etc.,) (2.0) |
3 |
9 |
Word file contains actual output screen shots (1) including error messages (1) from the application |
2 |
Less late penalty (5% per day) |
||
Less Plagiarism |
||
Total |
20 |
This section presents information on setting standards and assessing teamwork, setting assessment specific academic integrity guidelines for programming assignments.
This assignment is your chance to obtain the learning outcomes as given under objectives. It is important that you develop skills and deeper understanding of the concepts. You are permitted to use certain resources for completing this assignment as given in the table below. Use of resources outside of what is listed below will be a hurdle in your learning and required development of skills.
The scale of assistance students can get is clearly marked based on the students’ level of mastery and expected learning at various levels.
Note: You can use these as appropriate to the unit you are writing assessments.
The objective is to understand several concepts and apply those concepts to design and build a software solution. At this level you can use the provided materials, online resources for further reading and take assistance from your classmates or teammates to develop deeper understanding of the concepts. You can also sort help to debug the implemented program. But you should implement and test your program on your own.
Unit Textbook, Unit notes and examples |
Understanding concepts, design |
|
Instructors |
Understanding concepts, design, debugging |
|
Teammates (in case of teamwork) |
Understanding concepts, debugging |
|
Classmates, Online resources |
Understanding concepts, |
|
Everyone else |
Understanding concepts |
|
No help acceptable |
Implementing code |
Follow Us