Post 2: Defining Requirements for the COFB Check-In and Appointment System

Building a Lightweight Check-In System for the Central Okanagan Food Bank

This capstone project was developed to streamline the daily check-in process for the Central Okanagan Food Bank (COFB). Over 130 clients arrive daily, and volunteers manually manage check-ins, which requires unnecessary volunteer impacts and operational overhead. The COFB needed a simple, secure system to work alongside its existing Link2Feed database and operational workflow without disruption. I proposed to design and build a custom system that automates check-ins and simplifies the appointment workflow for clients and staff.
To meet the needs of the COFB stakeholders, I reviewed their operational workflows to identify where software could streamline daily processes. After the initial observation phase, it became clear that there was an opportunity to reduce the burden on volunteers by replacing the manual check-in process with a more efficient system.
During initial meetings with the COFB Director of Operations, we discussed and outlined how a customized system solution could address their organizational pain points and meet their goals. After confirming the project scope and gathering stakeholder feedback, I elicited the functional and non-functional requirements for the COFB Check-in and Appointment Software System, which are listed below.

Functional Requirements

  1. Clients will check in for their monthly appointments using their name and phone number using a client check-in system.
  2. Admins will upload and manage client appointments by importing and exporting CSV files daily.
  3. The system pulls appointment data from a daily CSV export and parses it to remove sensitive information before using it in the system.
  4. Appointments follow a 21-day appointment booking policy; clients cannot rebook their appointments sooner than 21 days from the day of their check-in.
  5. Clients can reschedule 21 days in the future.
  6. Clients can enter dietary needs and household info.
  7. Clients choose how to receive reminders via SMS, which requires the user’s mobile phone number and mobile carrier, or via email.
  8. Admins can upload, view, and export appointment data.
  9. Admins can edit client entries from a secure dashboard.

Non-Functional Requirements

  1. Simple: A modern, simple and easy-to-use UI
  2. Secure: No sensitive data is permanently stored in the app and will be imported and exported manually.
  3. Scalable: Built to handle over 130 clients per day without delay.
  4. Separate from Link2Feed Database Implementation: The system does not interact directly with the existing database. Instead, admins manually export and import CSV files into the system daily. A reusable CSV parser removes any sensitive data during processing.
  5. Low Maintenance: Designed to store minimal data and require only basic CSV import/export steps from admin users using a secure admin panel.
  6. Responsive: Software will be responsive and optimized for phones, tablets, and desktops using React and Chakra UI with reusable components.
  7. Modular: The architecture is built around reusable components and frameworks, allowing for efficient scalability using React and future scalability, such as updates and integrations.

Leave a Reply

Your email address will not be published. Required fields are marked *