The Driving and Vehicle License Department (DVLD) is a system to mangage everything related to driving licenses and drivers This is a milestone project in the ProgrammingAdvices course roadmap.
- Manage people, users and drivers...etc, with the usual CRUD operations
- Manage local and internatinal driving license applications
- Schedule driving tests (vision, theory and practical), with the ability to retake exams
- Issue Driving Licenses with different classes
- Renew driving licenses in case the validation period has ended
- Replace lost and damaged driving licenes
- Detain and release driving licenses
My database design contained many flaws and I learned a lot from this experience, I ended up using Mohammed Abu Hadhoud's database design for the project.
- I used the key derivation function PBKDF2 and stored the password hashes and salt as fields in the database
- but the project contains multiple security flaws, it is for learning purpouses so I didn't focus too much on it.
- abstract away the data grid filtering logic into a control
- refactor the old filtering logic
- add filtering to drivers managemet form
- improve the UI