Requirement Specifications & Functional Requirements - NTNU-IE-IIR/prosjekt-idata1005-2025-abc GitHub Wiki

Requirement Specifications

Functional Requirements

Task Management

  • The user should be able to add new tasks to the system.
  • The user should be able to edit existing tasks (change description, time, responsible person, etc.).
  • The user should be able to remove tasks that are no longer needed.
  • The system should be able to store all tasks so that they do not disappear upon restart or logout.

Responsibility Assignment and Sorting

  • The system should be able to assign tasks to different household members.
  • The user should be able to filter or sort tasks based on who is responsible for them.
  • It should be possible to display all tasks or only the tasks that a specific user needs to complete.

Status Management

  • The user should be able to mark a task as completed.
  • When a task is completed, it should either be removed or moved to a "completed tasks" history.
  • The user should be able to see a log of previously completed tasks.

Usability and Accessibility

  • The system should have an intuitive and user-friendly interface.
  • Navigation should be simple and clear.
  • The system should support both desktop and mobile devices.

Operational Requirements

Uptime and Availability

  • The system should be available 24/7 with minimal maintenance.
  • Planned downtime should preferably occur at night to minimize the impact on users.

Performance

  • The system should respond quickly to user actions, with a page/action load time of no more than 2 seconds.
  • Tasks should be stored and retrieved efficiently to avoid delays.

Security

  • User data and tasks should be stored securely, with access restrictions where necessary.
  • Users should be able to log in securely, potentially using authentication via email or other methods.

Backup and Disaster Recovery

  • The system should regularly back up task data to prevent loss of information.
  • In the event of a system crash, data should be easily recoverable from the latest backup.