Build a School based application with different kind of portals to demonstrate the usage of the following tools -
- A complete CRUD application
- Usage of Spring framework
- Spring IoC
- Spring DI
- Spring MVC
- Spring Web
- Hibernate for database
- Retrieve resources from database as per request instead of a bulk request
- Usage of external properties files
- Separting the view and business logic
- Admin
- An admin can insert a new student
- An admin can update a student
- An admin can view a students record
- An admin can delete a student without deleting FAFSA records (one important business logic) and the courses
- An admin can insert a new instructor
- An admin can update an existing instructor
- An admin can delete an instructor without deleting the courses and the students
- An admin can view all courses
- Student
- A student can view all it's relevant information
- Not all of the information is loaded when a student's logged in like Course histories and Financial Activities
- A student cannot modify it's own record, only doable by an admin
- Instructor
- An instructor can update any student that is enrolled in his/her class in this term