0% found this document useful (0 votes)
24 views13 pages

COMSATS University Islamabad (CUI) : Software Requirement Specification

Uploaded by

abbasisaad879
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views13 pages

COMSATS University Islamabad (CUI) : Software Requirement Specification

Uploaded by

abbasisaad879
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

COMSATS University Islamabad (CUI)

Software Requirement Specification


(SRS DOCUMENT)

for

AI-Based Memory Assistant

Version 1.0

By
Abdul Ahad SP22-BCS-001/ISB
Hanzalah Ali Taj SP22-BCS-030/ISB
Muaz Ahmad SP22-BCS-046

Supervisor
Mam Qanetah Ahmad

Bachelor of Science in Computer Science (2022-2026)


Table of Contents

1. Introduction............................................................................................................................1
1.1 Purpose.........................................................................................................................................1
1.2 Scope............................................................................................................................................1
1.3 Modules........................................................................................................................................1
1.4 Overview......................................................................................................................................1
2. Overall Description................................................................................................................1
2.1 Product Perspective......................................................................................................................1
2.2 User classes and characteristics....................................................................................................2
2.3 Operating Environment................................................................................................................2
2.4 Design and Implementation Constraints.......................................................................................2
3. Requirement Identifying Technique....................................................................................2
4. Functional Requirements......................................................................................................9
5. Non-Functional Requirements...........................................................................................10
5.1 Reliability...................................................................................................................................10
5.2 Usability......................................................................................................................................10
5.3 Performance................................................................................................................................10
5.4 Security.......................................................................................................................................11
6. External Interface Requirements.......................................................................................11
6.1 User Interfaces Requirements.....................................................................................................11
6.2 Software interfaces.....................................................................................................................11
6.3 Hardware interfaces....................................................................................................................11
6.4 Communications interfaces........................................................................................................11

i
1. Introduction
1.1Purpose

The AI-Based Memory Helper aims to help users handle their daily chores, alerts, and thoughts. It does
this through smart recording, processing, and reminder functions that rely on user input. The tool will
offer features like voice task entry natural language processing to extract key details sorting based on
urgency reminders triggered by location, and ideas for activities tailored to the user.

1.2Scope

This project will help users keep track of their personal and work-related tasks and commitments. The
Memory Helper will turn everyday conversations into useful reminders, manage task priorities, and
give timely prompts and ideas based on where the user is and what they've done before. Key features
include voice interaction that's both active and triggered, reminders that can be shared, and integration
with calendars.

1.3Modules

 Voice Interaction and NLP Module: Captures and records details from speech.
 Task Ranking and Prioritization Module: Organizes tasks by urgency and importance.
 Location-Based Reminders Module: Alerts users when they're close to relevant places.
 Data Storage and Compression Module:Manages data well, with privacy-focused
encryption.
 Activity Suggestion Module:: Checks free time and suggests activities the user likes.
 Collaborative Task Management Module:: Enables shared tasks with contacts for teamwork.

1.4Overview

The document will describe the functional and non-functional requirements giving developers, testers,
and stakeholders a foundation to understand and carry out the project .

2. Overall Description
2.1Product Perspective

This AI-Based Memory Assistant brings a fresh approach to task and reminder management. It offers
smart, voice-driven help that adapts to how users interact with it. The assistant will run on mobile
platforms and work with calendars and GPS to boost its features.

1
2.2User classes and characteristics

 General Users: People who want to organize tasks and get reminders.
 Business Users: Workers who need to handle meetings, deadlines, and team tasks.
 Family and Friends: Groups who share reminders or task lists.

2.3Operating Environment

Works on Android and iOS mobile platforms. It relies on GPS features, links to calendar apps, and
internet access to store data in the cloud.

2.4Design and Implementation Constraints

 Privacy Requirements: Sensitive data needs handling and encryption because of active voice
input.
 Storage Efficiency: Data compression helps to manage storage limitations.
 Continuous Learning and Improvement: Machine learning models need updates based on
how users interact with them.

3. Requirement Identifying Technique

3.1.1 Context Diagram

The flowchart shows how the Memory Assistant interacts with the user, GPS, health app, and calendar
to manage reminders and tasks. It centralizes information from various sources, providing personalized
memory assistants. The assistant also facilitates collaborative task updates for shared users.

2
Figure A-1: Context diagram of the Memory Assistant.

3.1.2 User Classes and Characteristics


Table A-1 Shows user classes and characteristic for Cafetaria ordering system

User Class Description


The main user of the Memory Assistant app who provides voice commands or text
inputs to create tasks and reminders. The user also receives task confirmations and
User
location-based reminders. The assistant also provides health-based task reminders if
linked with health data.
An external application that provides health data to the Memory Assistant, which is
Health App used to generate health-based reminders or notifications based on the user's specific
health needs.
The GPS system provides the user’s current location to the Memory Assistant, which
GPS uses this data to send location-based task reminders to the user, such as reminding
them of tasks near a specific location.
The user's calendar is accessed by the Memory Assistant to retrieve task information
Calendar and scheduled events. The assistant can also use this information to suggest tasks or
reminders in real-time based on availability.
Enables users to share tasks with other users or collaborators. The Memory Assistant
Collaborative
handles requests for creating or updating collaborative tasks and notifies relevant users
Task
of changes or updates.
3.2.1 Use Case Diagram
3
Figure A-2: Use Case Diagram of an Memory Assistant

4
3.2.2 Detailed Use Case
The below indicate a comprehensive use case template filled in with an example drawn from the
Memory Assistant
UC-1: Schedule a Task
The User interacts with the Memory Assistant to schedule a task by providing a voice command or text
input. The Memory Assistant records, categorizes, and prioritizes the task, suggests optimal time slots
based on the User's calendar, and sends reminders accordingly.

The User interacts with the Memory Assistant to schedule a task by providing a voice
command or text input. The Memory Assistant records, categorizes, and prioritizes the
Description
task, suggests optimal time slots based on the User's calendar, and sends reminders
accordingly.
Actor User
The User initiates the scheduling process by providing a voice or text input to the
Trigger
Memory Assistant.
PRE-1.The User is logged into the Memory Assistant app.
PRE-2.The User has allowed access to calendar data (if relevant for time slot
Preconditions
suggestions).
PRE-3.The User has enabled location access for location-based reminders.
POST-1. Task details are saved in the Memory Assistant with relevant metadata (e.g.,
urgency,location).
Postconditions
POST-2. Reminders are set for the scheduled task according to the User's preferences.
POST-3. Calendar slots are updated to reflect the scheduled task.
1. User activates the Memory Assistant and states or types a task to schedule.
2. Assistant analyzes input to identify key details like task description, due date,
location and priority.
3. Assistant suggests an available time slot based on the User's calendar.
Normal Flow 4. User confirms task details.
5. Assistant finalizes the task entry, sets reminders, and syncs it with the calendar if
needed.
6. Assistant sends a confirmation notification to the User, displaying task details and
reminder settings.
1.1 Location-Based Reminder (Optional):
1. User specifies a location for tasks like “Pick up groceries when near the store.”
2. Assistant sets a location-based reminder and notifies the User when they’re near the
Alternative specified location.
Flows 1.2 Health-Based Reminder (Optional):
1. For health-related tasks (e.g., “Remind me to take medicine”), the assistant checks
relevant health data.
2. Assistant sets the reminder based on this information and notifies the User.

5
1.0 E1 No Available Calendar Slots:
1. Assistant informs User if no suitable time slots are available for the specified date
and suggests alternatives.
2a. If User accepts, the flow continues.
Exceptions 2b. If User cancels, the Assistant terminates the use case.
1.1 E2 GPS Access Denied:
1. Assistant informs User that location-based reminders need GPS access.
2a. If User enables GPS, Assistant sets the reminder.
2b. If User declines, Assistant proceeds without location-based reminders.
BR-1. Location-based reminders are available only if GPS access is granted.
BR-2. Task prioritization is determined based on urgency keywords (e.g., "ASAP" or
Business Rules
"urgent").
BR-3. Health-based reminders require linked health data.
1. User has regular access to the Memory Assistant app and enables notifications.
Assumptions 2. User’s calendar accurately reflects their availability.
3. GPS and health data permissions are granted for relevant tasks.

UC-2: Give Daily Life Task Suggestions


The User receives suggestions related to areas like productivity, wellness, financial management, and
time optimization. Based on input, context, and historical data, the Assistant suggests practical tips,
motivational reminders, or personalized recommendations to improve the User's daily routines and
habits.

Actor User
The User initiates a suggestion request or activates the Assistant’s proactive
Trigger
suggestion mode.
PRE-1: The User has provided relevant personal information and allowed access to
Preconditions necessary data (e.g., calendar, habits, preferences).
PRE-2: The User is logged into the app and has granted notification permissions.
POST-1: Suggested actions or reminders are saved in the Assistant for follow-up or
Postconditions tracking.
POST-2: The User receives context-based notifications or in-app reminders.
Normal Flow 1. User opens the Assistant and requests a suggestion or enables automatic
suggestions.
2. Assistant analyzes available data (e.g., time, location, User’s calendar, habits).
3. Assistant identifies areas for improvement or enhancement based on the User’s
goals.
4. Assistant provides a personalized suggestion (e.g., productivity tips, health
reminders).
5. User reviews and optionally accepts or adjusts the suggestion.
6. Assistant sets any related reminders or actions and sends a confirmation

6
notification.
1.1 Productivity Boost Suggestions:
1. User requests a suggestion for staying focused.
2. Assistant checks calendar, notes current tasks, and suggests productivity
techniques (e.g., time-blocking, breaks).
1.2 Wellness Suggestions:
Alternative 1. User requests a wellness recommendation.
Flows 2. Assistant suggests hydration reminders, mindfulness activities, or personalized
exercise goals.
1.3 Financial Management Suggestions:
1. User requests a suggestion for budget optimization.
2. Assistant suggests tracking expenses or provides saving tips based on spending
patterns.
E1 Insufficient Data:
1. Assistant informs User that more data or permissions are needed for effective
suggestions.
2. If User provides access, the Assistant continues; otherwise, the session is
Exceptions
terminated.
E2 Overlapping Activities:
1. If a suggestion conflicts with a scheduled event, the Assistant offers alternatives.
2. User either selects an alternative or cancels the suggestion request.
BR-1: Suggestions are prioritized based on User’s goals and current context (e.g.,
Business Rules time, location).
BR-2: Reminders and actions are set only if User permits notifications.
1. User regularly interacts with the Assistant and enables suggestions.
Assumptions
2. Data shared by User is up-to-date for relevant insights.

UC-3: Give Daily Life Task Suggestions


The User’s Assistant scans emails and messages in connected third-party apps for actionable tasks,
such as meeting invitations or task assignments. The Assistant automatically identifies, extracts, and
categorizes tasks, prompting the User for confirmation and scheduling as needed.

Actor User
Trigger The User enables task extraction or connects a third-party account with the Assistant.
PRE-1: The User has granted the Assistant access to emails or third-party app
messages.
Preconditions
PRE-2: The User is logged into the Assistant app and has allowed notification
permissions.
Postconditions POST-1: Extracted tasks are saved in the Assistant with relevant metadata (e.g.,
urgency, due date).
POST-2: The User is notified with a summary of extracted tasks and prompted for
7
scheduling or confirmation.
1. User connects email or third-party app to the Assistant for task extraction.
2. Assistant scans incoming emails or messages for keywords indicating tasks (e.g.,
“deadline,” “meeting,” “follow-up”).
Normal Flow 3. Assistant extracts key details, such as task description, due date, and priority.
4. Assistant presents the extracted task to the User for confirmation.
5. User confirms or edits task details, such as due date and priority level.
6. Assistant saves the task in the User’s task list and sets reminders if required.
1.1 Automated Task Categorization:
1. Assistant automatically categorizes tasks based on keywords or sender (e.g.,
“Client Meeting” or “Project Deadline”).
Alternative
2. User reviews categories for accuracy and makes adjustments if needed.
Flows
1.2 Task Suggestions for Missed Deadlines:
1. Assistant detects missed or close deadlines from past messages.
2. Assistant suggests follow-up actions or alternative deadlines to the User.
E1 Insufficient Permissions:
1. Assistant notifies the User if it cannot access the specified email or app for task
extraction.
2. If the User grants access, the Assistant proceeds; otherwise, the process is
Exceptions
terminated.
E2 No Tasks Identified:
1. If no actionable items are found, the Assistant notifies the User and ends the
session.
BR-1: Task extraction is restricted to apps for which the User has given explicit
Business Rules access.
BR-2: Task categorization is based on defined keywords or User preferences.
1. The User regularly checks and confirms extracted tasks.
Assumptions
2. User’s task list in the Assistant reflects updated priorities and deadlines.

8
4. Functional Requirements
Business Depen-
Identifier Title Requirement Source Rationale Priority
Rule dencies
The system shall
support both
continuous listening Privacy
Continuous
and triggered User Enables hands- settings must
FR-1 Voice None High
listening modes, request free task input be
Interaction
allowing users to adjustable.
enter tasks via
voice commands.
The system shall
use NLP to identify
and extract key NLP
Provides
NLP Task details such as task User accuracy
FR-2 accurate task FR-1 High
Extraction descriptions, input threshold ≥
identification
deadlines, and 90%
priorities from
voice inputs.
The assistant shall
rank tasks based on
urgency and user-
set parameters, Ensures Must sort by
Task Task
FR-3 assigning higher critical tasks urgency and FR-2 High
Prioritization analysis
priority to tasks are highlighted importance.
with keywords like
“urgent” or
“ASAP.”
The system shall
notify users of Improves task Accurate
Location-
reminders when User completion by location
FR-4 Based None Medium
they are near a feedback location tracking
Reminders
designated location awareness required.
relevant to a task.
The assistant shall
compress and
Data Storage Supports All stored
encrypt data to Storage
FR-5 and efficient data data must be None High
optimize storage reqs.
Compression management encrypted.
and ensure user
privacy.
FR-6 Free Time The system shall Usage Provides Must only FR-1, Medium
Activity analyze user’s data personalized suggest FR-5
Suggestions calendar to suggest suggestions relevant
activities based on activities
free time and prior
9
Business Depen-
Identifier Title Requirement Source Rationale Priority
Rule dencies
user behavior (e.g.,
similar movies or
courses previously
enjoyed).
Users shall be able
to share tasks and
reminders with Supports team User
Collaborative
other users, User and family permissions FR-1,
FR-7 Task Medium
allowing for feedback task for task FR-3
Management
collaborative coordination visibility.
planning and task
tracking.

5. Non-Functional Requirements
5.1 Reliability

The system must have an uptime of 99.5% or more and keep reminder data accurate.

5.2 Usability

The interface needs to be easy to use letting users create tasks without hands and with little input to
work well

5.3 Performance

When the internet is stable, the system should process 95% of task recordings and reminders in 2
seconds or less after input.

5.4 Security

The system must encrypt data when it's stored and when it's sent to protect user info from people who
shouldn't see it.

6. External Interface Requirements

10
6.1 User Interfaces Requirements

 Icons that make sense and buttons you can activate with your voice.
 Options to link up with your calendar and location to work together .

6.2 Software interfaces

 Works with Google and Apple Calendars.


 Has APIs to use NLP and GPS services.

6.3 Hardware interfaces

 Supports microphones to record your voice.


 Uses GPS to remind you based on where you are.

6.4 Communications interfaces

 The system shall support internet connectivity for data synchronization and cloud storage.
 Email or SMS notifications for reminders, based on user preferences.
 Integration with network protocols (HTTP/HTTPS) for secure communication with cloud
servers.

11

You might also like