A-Level Computer Science NEAWatch this thread
- Build the quiz app as a Web Application using the Python Flask framework: https://blog.miguelgrinberg.com/post...-i-hello-world
- Build some OO structures into the app - e.g. use the Repository pattern for database logic classes, or create a set of classes for input validation.
- Create a non-trivial relational database to store your questions, quizzes, categories, users, their attempts/answers, groups of users, etc.
- Introduce an authentication (identity) system with security features - e.g. password complexity, password reset, automatic lockout/retries,
- Add authorisation (permissions) depending on a user's role - e.g. student-vs-teacher-vs-administrator. (e.g. administrator to create/manage/delete users or create/manage/delete quizzes/questions, teacher able to view stats for their class or year, control access to different questions, etc.)
- Create some non-trivial database queries which involve Joining tables together - e.g. generate statistics for individual students, classes, year groups, etc. list the questions in-order by most right/wrong answers, number of attempts per-student, calculate grades, show a 'scoreboard', feedback report, etc. Reports/graphs could perhaps be downloadable or viewable on a page/screen in a graph/chart.
- Consider writing some 'hand-rolled' algorithms - e.g. encryption/hashing for password security, or writing some code to do some statistical analysis on your users' quiz answers.