**Volunteer Work System - VWS**
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 from 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.
For this project, I was the System Analyst, Team Leader, Back End Developer, and Database Developer. My jobs were:
- Identified, understand, and planed the systems.
- Planned the system flow from the ground up.
- Designed and provided use cases, Sequence Diagrams, flowcharts, UML, Application Architecture, Inter- Package Dependencies diagrams.
- Wrote technical requirements from a critical phase.-
- Designed ER-Diagram for the database.
- Created database tables, structures, schemas, and dictionaries
- Created indexing, scripts, functions, triggers, and procedures that support application development.
- Created an MVC back end using Java and used many different design patterns.
- Connected the database with the back end using JDBC.
- Connected the front end with the back end.
- Tested and maintained the system.