Skip to main content

SASA CHAT — Software Requirements Specification (SRS)

Table of Contents

1 Document Information

FieldValue
Project NameSASA CHAT
Version0.1
Date2025-08-18
Project ManagerTBD
Tech LeadTBD
Qa LeadTester
Platforms['Android', 'iOS']
Document StatusDraft

2 Project Overview

2.1 What Are We Building

2.1.1 System Function

A real-time messaging application for users to communicate with agents and each other through one-on-one chats, groups, and communities.

2.1.2 Users

  • User / Customer
  • Sasa Chat Agent

2.1.3 Problem Solved

The application is intended to facilitate communication but is critically unstable, with a 44% pass rate. It fails to perform essential functions like multimedia sharing, voice notes, calls, and user blocking. Platform-specific issues, such as app crashes on iOS when handling files, make it unreliable for its core purpose.

2.1.4 Key Success Metric

Increase the Overall System Quality Pass Rate from 44% to over 95% by fixing all major and critical defects.

2.2 Scope

2.2.1 In Scope

  • Real-time text messaging
  • Multimedia sharing (images, videos, files)
  • Use of special characters and emojis
  • Hyperlinks & URL previews
  • Message Status & Receipts (sent, delivered, read)
  • Offline messaging
  • User and Agent profile management
  • Blocking/Unblocking users
  • Group and Community chats
  • Voice and Video Calls (individual and group)

2.2.2 Out Of Scope

  • Sharing user location
  • A dedicated Help and Support section
  • Linking multiple devices to one account
  • Custom wallpaper editing
  • Deleting read messages

3 User Requirements

3.1 Authentication User Management

Feature CodeI Want ToSo That I CanPriorityNotes
FT-BLOCK-USERBlock a userPrevent them from sending me inappropriate messages.MustCRITICAL FAILURE: The agent is unable to block a user.

3.2 Core Business Features

Feature CodeI Want ToSo That I CanPriorityNotes
FT-COMMS-CALLMake individual and group video callsCommunicate face-to-face with other users.MustCRITICAL FAILURE: Group video calls do not work; participants cannot be seen (Bug ID 006). The app also lacks camera and microphone settings to enable calls (Bug ID 009).
FT-COMMS-VOICESend a voice noteQuickly send an audio message instead of typing.MustCRITICAL FAILURE: Users are unable to send voice notes (Bug ID 008).
FT-MEDIA-SHARESend and receive multimedia files (images, PDFs, videos) on all devicesShare rich content without the app crashing.MustCRITICAL FAILURE on iOS: iPhone users cannot view files; the app crashes automatically. Videos are incorrectly appearing as files.
FT-MSG-STATUSSee message statusesConfirm if my message was sent, delivered, and read.MustCRITICAL FAILURE: The user's side of the chat does not show 'sent,' 'delivered,' and 'read' statuses.
FT-MSG-SPECIALSend messages with emojis and special charactersExpress myself fully.MustFAILED: The system cannot send messages that contain emojis.
FT-AGENT-COLLABSee which agent is currently typing or last respondedCollaborate with other agents without sending duplicate responses.ShouldFAILED: This indicator is not shown in multi-agent chats.

3.3 Additional Features

Feature CodeI Want ToSo That I CanPriorityNotes
FT-GROUP-JOINJoin a public groupParticipate in the community discussion.ShouldMajor Failure: There is no option to join a public group (Bug ID 017).
FT-UI-LEGALView the Terms of UseUnderstand the rules of the service.ShouldMajor Failure: The Terms of Use page shows a 404 error (Bug ID 003).
FT-UI-STABILITYUse the app without it disappearing or losing dataHave a reliable communication experience.MustMajor Failure: Created communities disappear over time (Bug ID 014).

4 Detailed Feature Requirements

4.1 Ft Media Share

4.1.1 Priority

Must Have

4.1.2 User Story

As an iPhone user, I want to receive and open files (like images, PDFs, videos) without the application crashing.

4.1.3 Preconditions

A user sends a multimedia file to an iPhone user.

4.1.4 Postconditions

The iPhone user can see and open the file. The app remains stable. Videos are rendered as playable videos, not generic files.

4.1.5 Test Cases

IdDescriptionWeight
MEDIA-TC-001Verify that sending an image, PDF, and video to an iPhone user is successful and does not cause a crash.High

4.2 Ft Comms Call

4.2.1 Priority

Must Have

4.2.2 User Story

As a user, I want to access camera and microphone settings within the app so that I can grant permissions and make calls.

4.2.3 Preconditions

User attempts to initiate a voice or video call.

4.2.4 Postconditions

The user is prompted to grant camera/microphone permissions, or can access these settings, and can successfully start a call.

4.2.5 Test Cases

IdDescriptionWeight
CALL-TC-001Verify that camera and microphone settings are available and functional to allow calls.High
CALL-TC-002Verify that in a group video call, all participants are visible to each other.High

4.3 Ft Msg Status

4.3.1 Priority

Must Have

4.3.2 User Story

As a user, I want to see visual indicators next to my sent messages to know if they have been sent, delivered to the recipient, and read by them.

4.3.3 Preconditions

User has sent a message.

4.3.4 Postconditions

The message displays a 'sent' status immediately, a 'delivered' status when it reaches the recipient's device, and a 'read' status when they open the chat.

4.3.5 Test Cases

IdDescriptionWeight
MSG-TC-001Verify that 'sent,' 'delivered,' and 'read' statuses are displayed correctly and in a timely manner.High

5 Technical Requirements

5.1 Performance Standards

RequirementTargetHow To Test
Image load time< 2 seconds for previewMeasure time from message receipt to image thumbnail display. Addresses Bug ID 005.
App Stability on iOSZero crashes during file handling operations.Repeatedly send and open various file types on test iPhone devices.

5.2 Platform Requirements

PlatformMinimum VersionTarget VersionNotes
AndroidAndroid 11 (API 30)API 34Testing was performed on pixel4a.
iOSiOS 14iOS 17Testing was performed on iPhone 11 and iPhone 11 Pro Max.

5.3 Security Privacy

RequirementMust HaveImplementation
User data encryptionTrueEnd-to-end encryption for all messages and calls.

6 External Dependencies

6.1 Third Party Services

ServiceWhat It DoesCriticalityBackup Plan
Push Notification Service (FCM/APNS)Delivers notifications for new messages and missed calls.CriticalEnsure robust implementation and error handling for token registration and message delivery.
Cloud Storage ProviderStores all multimedia files (images, videos, documents).CriticalUse a provider with high availability and data redundancy, like AWS S3 or Google Cloud Storage.

7 Release Planning

7.1 Development Phases

PhaseFeatures IncludedTimelineSuccess Criteria
Phase 1 (Core Functionality Restoration)['FT-MEDIA-SHARE (iOS crash fix)', 'FT-COMMS-CALL (implement settings, fix group calls)', 'FT-COMMS-VOICE (fix sending)', 'FT-MSG-STATUS (implement UI)', 'FT-MSG-SPECIAL (fix emojis)', 'FT-BLOCK-USER (implement logic)']6 weeksAll 'Must' priority features are functional. All major bugs (001-010, 013, 014, 017) are resolved. Pass rate > 90%.

7.2 Release Checklist

  • All Must-Haves complete
  • No critical or major bugs remain
  • iOS app no longer crashes when handling files
  • Voice notes and video calls are fully functional on all test devices
  • Message status indicators are working correctly

8 Risks Assumptions

8.1 Risks

RiskProbabilityImpactMitigation
The platform instability, especially on iOS, is systemic and requires a major architectural refactor, delaying fixes.MediumHighConduct a root cause analysis of the iOS crash immediately. Allocate senior iOS developers to investigate and fix.
Failure to deliver basic communication features (voice notes, calls, read receipts) will cause users to abandon the app for more mature competitors.HighHighStrictly prioritize the development backlog according to Phase 1 of the release plan.

8.2 Assumptions

  • The backend infrastructure for messaging, calls, and user management is in place, but the client-side implementation is flawed.
  • The user base expects feature parity with other modern messaging applications.

9 Market Specific Considerations

9.1 Primary Market

  • General Communication

9.2 Target Demographics

  • Users seeking a real-time chat solution

9.3 Competition

  • WhatsApp, Telegram, Signal, Messenger

10 Sign Off

10.1 Approval

RoleNameSignatureDate

10.2 Document History

VersionDateChanges MadeChanged By
0.12025-08-18Initial draft based on 'SASA CHAT' testing report.Gemini System Designer

11 Additional Context

11.1 Success Metrics

11.1.1 Customer Acquisition

Reduce user churn rate by 50% after Phase 1 release.

11.1.2 Partner Signups

N/A

11.1.3 Daily Orders

N/A

11.1.4 Customer Satisfaction

Achieve a >95% pass rate in the next regression testing cycle.

11.1.5 Order Success Rate

N/A

11.1.6 Average Delivery Time

N/A