Project
• Apply an object-oriented approach to the design and development of a small
software application.
• Apply the concepts and techniques introduced in lectures, tutorials and labs to the
design and development of a small software application.
System Requirements:
You are required to develop a student records system for a university. The system is
required to maintain student details, records of student results, records of the modules
that must be taken on programmes that the university offers and information for the
lecturers and course directors in the university. All records should be held in .csv files for
persistence. In other words if the system is shut down and restarted, then the data is
maintained in the files and is read into the application when it starts up again.
A student must be registered on exactly one programme. Only an administrator can
register a student. Student details such as id number, name address and email must be
stored in the system. A student will be able to log in to the system to check the grades
they have received in the modules that they have taken and also be able to check which
modules they have still to take before they can complete the programme and graduate. If
a student has taken a module more than once, then only the best result that a student has
achieved in a module is recorded. If a student has grade C or higher (A or B) in all the
modules on a programme, then the student can graduate.
A programme will have a list of modules that must be taken in order to complete the
programme. Each programme will have a course director who will be registered by an
administrator. A lecturer will be registered by an administrator as the lecturer for a
number of modules.
The grades of students on a module will be viewable by the module lecturer. A lecturer
will also be able to add student results for a module to the system. These should be
appended to existing results in the system for that module. Results can be submitted one
by one via the interface of the system or by providing a .csv file with each line of the
form: ‘student id, grade’.
A course director will be able to retrieve a list of all students that have taken or are
currently taking their programme. A course director will be able to view the grades of
students on any module on their programme. A course director will be able to retrieve a
list of all students that have graduated (received grade C or higher on all modules).
Please note that information with regard to the academic year or year of a programme is
not required. The system that is being implemented here is a simplified student records
system and thus temporal (time-related) information is not required.
A command line interface and a GUI should be provided. The system should be designed
in a way that makes it easy to replace one interface with the other.
Sample csv files:
[login to view URL] should look something like this (obviously additional
modules can be added/removed):
LM110,CS4111,CS4012,CS4211,CS4013,CS4567
LM338,CS4568,CS5709,CS5703,CS5701,CS5741,CS5467
[login to view URL] should look like this:
13123456,CS4111,C
13234567,CS4012,B
12345678,CS4568,A
11234567,CS4111,C
12347890,CS4111,F
10987643,CS5709,A
[login to view URL] (file that a lecturer uses to submit grades for CS4111 for example)
should look like this:
11234567,C
12347890,F
HI
Contact me for an efficient, well documented and perfect solution
and development of your project. I ensure quality work with always
on time delivery of project and dedicated support and follow up.
Thanks
Farah Saif
Hi
I have 6+ years experience in Java, MySQL/Oracle, Linux. I have completed more than 100 projects so far. I have understood the requirements and the sample csv files you have mentioned. Please send me a message so that we can discuss once.
Thanks
Hi, I'm a very experienced software architect and i can do your work as perfect as the Java best practices says.
You will not have only a running program acording your requests, you will have quality and standards matching.
I hope we can work together.