1. The user can be served as the user login. It can be an administrator or a student.
2. The administrator can download or view the voting results.
3. A student can decide which semester will run for the coming school year.
4. A student can run for any positions available for the election and also if the student runs for a department representative, it should match based on the course. E.g IT – Programming Department
5. Only the students can vote on the election.
6. Only the administrator has the permission to add, remove or modify the candidates list.
If you're in one of those predicaments where cls.__private attributes just aren't enough since they can easily be accessed through inst._cls__private, and you need something a little more secure, here's ...