Citizen Management System coded in Java as part of the Object Oriented Programming (OOP) course.
Project in collaboration with Marwa MOHAMED : https://github.com/marwa-mohamed-dev
The software should allow a town hall to manage its citizens. A person is characterized by their unique identifier number, last name, first name, date of birth, sex, marital status (married, divorced, single or widowed), and the ID number of her spouse (if she is married).
Objectives: Create a menu allowing to choose among the following functions: Marriage of a person, divorce of a person, knowledge of the condition of a person, display the list of all people. It comes down to the development of marriage, divorce, search and display functions as well that the smooth running of each of its functions.
The main program offers an on-screen menu that allows you to:
- Mariage
- Divorce
- Birth
- Civil status of a citizen
- Display of the list of citizen
- Entering a new citizen
- Exit the program
While we respected the different objectives asked by our professor, we made what we believe are improvements and added further options. Age and civil status are characteristics taken into account to enable or not, the access to different options. A backup system was implemented, as well as a graphical interface. Adoption is now possible, and deaths are saved in the database. An important aspect is the existence of multiple townhalls we are able to naviguate between, each with their own set of citizens.
Here is then our updated Menu :
- Mariage
- Divorce
- Birth
- Adoption of a new child, or one already in the system
- Death
- Civil status of a citizen
- Display of the list of citizen in a town hall
- Entering a new citizen in a town hall
- Exit the program