A JavaFX-based module selection system implementing Object-Oriented Design principles. This application allows computing students to create profiles and select their final year modules based on their course of study.
- Create student profile
- Select optional and reserved modules along with mandatory modules
- Generate student profile overview
- Save student profile overview into file
- Save student profile data
- Retrieve previously saved student profile data
- Load course data from text file
- Computer Science and Software Engineering courses supported
- 120 total credits required
- 90 compulsory credits for both courses
- Block/Semester-based module organization
- Reserve module selection system
- Compulsory modules are automatically assigned based on course
- Optional modules must be selected according to course requirements
- One reserve module must be selected from available options
- Total credits must equal 120
- Modules are organized by blocks and semesters
The courses data in the file should follow the standard input data schema as the line of string separated by comma as shown below: 'Course name, Module code, Module name, Module credits, Is mandatory, Run plan'. Check the 'courses.txt' file to see the courses and modules data which was loaded into the application dropdown field.
- Profile data can be saved and loaded
- Course data is loaded from structured text files
- Overview generation for selected modules
- Validation for module selection rules
- Java JDK 17 (LTS)
- JavaFX
- Eclipse IDE
- MVC Architecture Pattern
- Java JDK 17 or higher
- IDE supporting JavaFX development (e.g., Eclipse, IntelliJ)
- Properly configured Java environment variables
- Download and install JDK 17 from BellSoft
- Install Eclipse IDE from Eclipse Downloads
- Configure Java environment variables
- Import project into Eclipse
- Run the application