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.