Reference no: EM132388468
301038 Programming Proficiency Assignment - The Final Project - Western Sydney University, Australia
PROJECT REQUIREMENTS -
1. For this final project, you are required to develop a StudentMarks System in Java, so that student marks can be entered, edited and browsed. For the students, we need to keep track of the student ID and student name, and for the subjects, we need to keep track of the unit ID and unit name. The system should allow us to enter which student has got what mark in which unit. Although there are no specific mandatory functionalities required for the StudentMarks System, as the students are allowed to freely design their system, some of the following features may be incorporated in some ways:
- All relevant records can be entered, edited, or deleted.
- For each student, we can list the marks for all the units the student has done, and the corresponding marks average.
- For each unit, we can list the marks for all the students, and the corresponding marks averge.
- Marks records can be stored externally and reloaded back to the system.
- Other features of your own design to enhance the system as much as possible.
We also expect that the system will be largely menu-driven and the navigation on the marks display student-wise should also be as easy as possible, perhaps through additional options on the main menu, or on a submenu when displaying a particular product detail, somewhat similar to
- Current student
- Next student
- Previous student
2. We note that it is much easier to load all records from a file or files at the beginning, and save everything back to a file or files before exiting the program, rather than reading from or writing to files every time a record is added/edited/removed. In other words, it is much easier to keep all the records in the computer memory, and this will make your program work reasonbly well as well even if you don't read/write files at all.
3. A potential simplification: Before taking on a full-fledged program design and implementation, students may choose to initially simplify the problem by
- Ignoring the use of a file to save/load marks details. If this is the case, it's then best that some of such details are initialised within the Java program so that students don't have to re-enter these details every time they re-start their programs for the testing.
- Ignoring student names. This means each student just has a unique student ID, with no names.
- Ignoring unit names. This means each unit just has a unique unit ID, with no names.
- Under this simplification, one way to store the data could just take the following format, where each line contain first the unit ID, then the student ID, and finally the corresponding mark.
4. Another way to store the data records, supporting additional names, could for instance take the following more involved format, where we store 3 different parts in a single file.
But students are free to choose or design their own data file format.
5. This project is semi-open in that students are expected to have their own design, and/or additional capacity to enrich their final software system if the students are aiming for the top grades. Such additional features can be anything that would enhance the functionalities and user experience in using such a marks-keeping system in real life.
6. It is up to each student group to decide how to design and implement their StudentMarks System.
7. Students should not utilise any of the Java GUI components nor any form of database servers for their project, as these are not within the scope of this unit.
8. The final Project Report must be written to include, among all the other relevant matters, the following aspects.
- The main functionalities, along with the demonstrating examples and screen shots if pertinent.
- The design of your user interface and how it impacts on the user experience with your product.
- How and where you made use of the paradigm of object-oriented programming, if any.
- The most advanced 3 (or more) Java technical aspects, in your opinion, you have made use of in the development of your StudentMarks System.
- Brief conclusion and reflection on your experience in completing this project.
We note that your project should aim at top quality as much as possible. Your end-product, the StudentMarks System, will be judged on the achieved functionalities, the look and feel, the design methodology (e.g. ad hoc versus systematic), and the use of advanced features such as object orientation and exception handling. You should cite your design and technical evidence in your Final Report on the quality of your developed software system.
DELIVERABLES - Final project report and all the Java programs.
Attachment:- Programming Proficiency Assignment File.rar