Skip to content

Requirements

A functional requirement describes functions or features developers design to enable users to complete desired actions to reach a specific objective, in other words, you can define functional requirements as the system’s basic behaviours (Beaton, 2024). The functional requirements for Clubs Connect are as follows:

  • Users can only sign up or sign in using Wits email addresses.
  • Users can follow CSOs.
  • Users can accept or reject CSO event invitations.
  • CSO executives can post on their CSO pages.
  • Users can update their profile pages.
  • Users can like posts on their newsfeed.
  • Users can view CSO pages.
  • Users can add upcoming events to the calendar.
  • CSO executives can add events to the calendar.
  • CSO executives can remove events from the calendar.
  • SGO officers can add CSOs to the platform.
  • SGO officers can assign roles to users.
  • SGO officers can disable or delete CSOs.
  • SGO officers can add members to a CSO.
  • SGO officers can remove members from a CSO.

A non-functional requirement defines the specifications that describe a system’s constraints (limits) or operational abilities (capabilities), (Beaton, 2024). The non-functional requirements for Clubs Connect are as follows:

  • The system should be available 99.9% of the time, excluding scheduled maintenance.
  • The system should be accessible across major browsers (e.g., Chrome, Firefox, Edge, Safari).
  • The system should be responsive and usable on multiple devices, including desktops, tablets, and mobile phone.
  • Pages should load within 3 seconds under normal network conditions.
  • The system should handle concurrent requests efficiently without noticeable degradation in performance.
  • The system should scale to support 50,000+ staff and students at Wits University.
  • User authentication must be secure and limited to Wits email addresses.
  • Data should be protected against malware, unauthorized access, and data breaches.
  • All sensitive information should be encrypted in storage and transmission.
  • The system should provide an intuitive and user-friendly interface.
  • Navigation and key actions should require no more than three clicks from the home page.
  • The system should be designed with modular components to allow for easy updates and fixes.
  • Documentation should be provided for future developers to maintain the system.