System Overall Description
The Volunteer Work System is a system for students, the Department of Voluntary at IUG, and Institutions. To help get and finish the volunteer work in an easy way and online, without going to the Department of Voluntary Work at the university and using papers and letters to communicate. The student will be able to choose the place to volunteer in and send a request to that institution, he/she can create initiative and also will be able to suggest institutions too. Institutions will see all the new forms form students who requested to volunteer in it, send reports to the university when a student finishes all the hours required to pass the volunteer work course, and it will have statistics about the number of students who are still volunteering, finished, and requesting to volunteer there. The University will keep tracking of all the operation that happens in the system, it will approve or deny the requests for students to volunteer in an institution, the requests of institutions to be in the system, and the reports of the students who finished the volunteer work, it will have statistics for all the number of students who still volunteering, finished, requesting to volunteer and need approve of finishing the volunteer work, put news and announcements about the department, and it can be able to add new institutions too.
What was implemented in this project:
- An MVC Architecture system in Java.
- All the functionality described above.
- Different design patterns like MVC, Singleton, Factory, Façade, and Strategy.
- Appropriate collections and functional programming to process data.
- Apply object-oriented concepts.
- A look-and-feel GUI using JavaFX.
- Connect to MySQL database throw JDBC and by using MySQL Workbench.
- A full report about the system with different diagrams like Use Case Diagram, Sequence Diagrams, Application Architecture, Inter- Package Dependencies, ER-Digram, and Packages Detailed Design