The purpose of this program is to simulate a university affiliated login system for students and staff. There are three main components in this project that represent the university, which are the staff, student, and school. Each of them has their own menu, where they are able to add, remove, or submit elements based on their roles within the university.
The overall design of this project is focused on user interaction through different menus, whether they are staff or a student at the university. We organized the program into specific packages for modularity, which include school, staff, student, and main. The school package is structured based on real world systems, where there are departments, courses within them, and assignments that are given in those classes. By utilizing preloaded data, users are able to have access and manage different aspects of the university.
Download the .jar file from the releases page.
Open terminal and change directory to the .jar file location.
Run the command: java -jar university-CS151-Fall-2025.jar (or copy pathname to .jar file)
President ID:
- 000000001
Department Head IDs:
- 123123123
- 321321321
Professor IDs:
- 151151151
- 146146146
- 165165165
- 120120120
Student IDs:
- 015832211
- 123456789
- 987654321
- 456123789
- Run the program.
- Choose whether you are Staff or Student.
- Enter your assigned User ID when prompted.
- Use the menus to navigate available options.
Navigation commands:
- Type
Mainto return to the main menu. - Type
Backto go to the previous menu. - Type
Exitto exit the program.
- Create Department: Adds a new department to the university.
- Remove Department: Deletes an existing department.
- Create Department Head: Creates a new department head and automatically generates a staff ID.
- Remove Department Head: Removes a department head from the system.
- View All Departments: Displays information for all departments and their heads.
- Create Professor: Adds a new professor and automatically generates a staff ID.
- Remove Professor: Deletes a professor from the system.
- Create Course: Adds a new course to the department.
- Remove Course: Deletes a course from the department.
- Assign Professor to Course: Links a professor to a specific course.
- View Department Info: Displays all professors, courses, and their IDs.
- Create Assignment: Creates an assignment with a name, max score, and due date.
- View Courses: Lists courses the professor is assigned to.
- Manage Students: View or modify student enrollment for each course.
- Grade Assignments: Enter grades for students in each course.
- View Courses: Displays all courses the student is enrolled in.
- View Assignments: Lists all assignments for the student.
- Filter Assignments: Filter assignments by due date, name, or course.
- Clear Filters: Removes all active filters.
- Submit Assignment: Marks an assignment as submitted or completed.
- Drop Course: Removes the student from a course.
- The system automatically generates IDs for all new staff.
- All user interactions are handled through command prompts.
- Only valid IDs from the system can access their respective menus.
university-CS151-Fall-2025
exceptions: Thi
main
Main: Kaelen, Jordan, Thi
school
Assignment: Kaelen, Tristan
Course: Kaelen, Tristan, Thi
Department: Tristan
University: Jordan, Thi
staff
CourseManager: Jordan
Staff: Tristan
StaffMenu: Kaelen, Tristan, Jordan
staff.departmentHead
DepartmentHead: Tristan, Thi
DepartmentHeadMenu: Kaelen, Tristan, Jordan, Thi
staff.president
President: Tristan
PresidentMenu: Kaelen, Tristan, Jordan
staff.professor
Professor: Kaelen, Tristan
ProfessorMenus: Kaelen, Tristan, Jordan
student
Student: Kaelen, Jordan
StudentAssignment: Jordan
StudentMenus: Kaelen, Jordan, Thi