junyan-tang / AttendanceTracker

A system to record attendance for prof and students
0 stars 0 forks source link

requirement for evolution2 #5

Open junyan-tang opened 5 months ago

junyan-tang commented 5 months ago
  1. client server. a centralized server to store student attendance
  2. server deployed on linux
  3. front-end and back-end separate (input process in front-end, all other in back-end
  4. using MySQL to store data
  5. authentication(log in/log out) for account, user can update(What does add/remove mean? Who has the right to add/remove?)
  6. two user identity(faculty and student)
  7. what does "User administration will not go through client/server application, should be run on a standalone user admin app" mean?
  8. one student in multiple class. each class have one or more sections. each section one instructor(Does it mean only could be one?)
  9. Add/Remove/Update classes and sections.Remove a class/section will be destructive. Think on UX. may have prompt or revalidation?
  10. Enroll students into classes (one particular sections). Enrollment can be manual (one by one) or batch (e.g., reading from a csv file
  11. Faculty should be able to select which class to take attendance. A faculty may teach many classes/sections
  12. Student names will be displayed and the instructor will record the attendance for each one.
  13. Faculty can optionally record the attendance for a previous day, or modify the attendance for a student on a particular day in a class.
  14. Attendance report can be generated for the faculty, showing, for each student in a class the attendance participation. Tardy students will count towards 80% of participation that day.
  15. Students should be able to change notification preferences. Notifications will go through email.
  16. They should be able to obtain a summary and detailed report of attendance for each of their classes. Constraints
    • No frameworks or pre-existing solutions may be used.
    • E.g., Hibernate, jakarta, etc.(But when we ask professor, she said we could use spring boot.
    • Data Management should be implemented by the team. Consider impact of changing the RDBMS to another or a Non-SQL storage system. Hint: review DAO pattern(if use spring boot, it will be easy to handle)
Tono-vacn commented 5 months ago

What is DAO pattern? And can we still use Spring this time?