Requirements

Functional Requirements

  • definite
    • Application’s dependencies must be updated (replace react-pose with motion and findOne with findOneBy() or find() in typeORM queries).
    • Application must be hosted in CloudApps.
    • Application must integrate Airtable for employee information management.
    • Application must allow users to opt in or opt out of shift types for scheduling.
  • perhaps
    • Application must include new shift types for tutoring and virtual office hours.
    • Application must integrate Slack to send notifications when changes occur to the schedule.
    • Application must allow users to swap shifts and drop shifts that are not understaffed.
  • improbable
    • Application must allow users to add scheduling limitations, such as being scheduled for no more than 5 consecutive hours.

Non-functional Requirements

  • definite
    • Application’s codebase must be clean and well documented with comments.
  • perhaps
    • Improvements must be made to the user interface for a better user experience.
  • improbable
    • Improvements must be made to the scheduling algorithm to optimize shift scheduling.