0% found this document useful (0 votes)
78 views8 pages

SRS Twitter Example

The document is a Software Requirements Specification for a microblogging application similar to Twitter, detailing both functional and non-functional requirements. It outlines user functionalities such as registration, posting tweets, and real-time notifications, as well as technical specifications including system architecture and performance metrics. The intended audience includes developers and project managers, and it emphasizes compliance with standards and security measures.

Uploaded by

reyhanfeb163
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)
78 views8 pages

SRS Twitter Example

The document is a Software Requirements Specification for a microblogging application similar to Twitter, detailing both functional and non-functional requirements. It outlines user functionalities such as registration, posting tweets, and real-time notifications, as well as technical specifications including system architecture and performance metrics. The intended audience includes developers and project managers, and it emphasizes compliance with standards and security measures.

Uploaded by

reyhanfeb163
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/ 8

Software Requirements Specification

Microblogging Application (Twitter-


like)
Version 1.1

Prepared by:
John Wick
Black Widow
Alexander McQueen

Published on……

Based on IEEE Std 830-1998


IEEE Computer Society
Sponsored by the
Software Engineering Standards Committee
Table of Contents
1. Introduction................................................................................................................... 3
1.1 Purpose.................................................................................................................................... 3
1.2 Scope......................................................................................................................................... 3
1.3 Definitions, Acronyms, and Abbreviations..................................................................3
1.4 References.............................................................................................................................. 3
1.5 Overview................................................................................................................................. 3
2. Overall Description...................................................................................................... 3
2.1 Product Perspective............................................................................................................ 3
2.2 Product Functions................................................................................................................ 4
2.2.1 Function of the Software..............................................................................................................................4
2.2.2 User Access Right............................................................................................................................................4

2.3 User Characteristics............................................................................................................ 4


2.4 Constraints............................................................................................................................. 4
2.5 Assumptions and Dependencies.....................................................................................5
3. Specific Requirements................................................................................................. 5
3.1 External Interface Requirements................................................................................... 5
3.1.1 User Interfaces..................................................................................................................................................5
3.1.2 Hardware Interfaces......................................................................................................................................5
3.1.3 Software Interfaces.........................................................................................................................................5
3.1.4 Communications Interfaces........................................................................................................................6

3.2 Functional Requirements..................................................................................................6


3.2.1 Usecase Diagram..............................................................................................................................................6
3.2.2 Diagram Context..............................................................................................................................................7
3.2.3 Data Flow Diagram.........................................................................................................................................7

3.3 Performance Requirements............................................................................................. 7


3.4 Design Constraints............................................................................................................... 7
3.5 Software System Attributes (Non-functional Requirements)...............................7
3.5.1 Reliability............................................................................................................................................................7
3.5.2 Availability......................................................................................................................................................... 7
3.5.3 Security................................................................................................................................................................ 7
3.5.4 Maintainability................................................................................................................................................. 7
3.5.5 Portability...........................................................................................................................................................7

3.6 Other Requirements............................................................................................................ 8


Appendices (Optional)..................................................................................................... 8
Index...................................................................................................................................... 8
1. Introduction

1.1 Purpose
This document specifies the requirements for a microblogging application similar to Twitter.
It defines both functional and non-functional requirements to guide development. The
intended audience includes software developers, testers, project managers, and clients.

1.2 Scope
The system allows users to register, post short messages (tweets), follow other users, like
and comment on posts, and receive real-time notifications. This specification covers the
backend API, basic frontend functionality, and integration points. It does not include third-
party mobile client development.

1.3 Definitions, Acronyms, and Abbreviations


 API: Application Programming Interface
 UI: User Interface
 Tweet: A short text message posted by a user (up to 280 characters)

1.4 References
 IEEE Std 830-1998 Software Requirements Specification
 OAuth 2.0 Specification
 REST API Design Guidelines

1.5 Overview
This document is organized into sections detailing general system context (Section 2),
specific functional and non-functional requirements (Section 3), followed by supporting
materials.

2. Overall Description

2.1 Product Perspective


Describes the system's context, components, and interfaces (system, user, hardware,
software, communication).
The microblogging application is a standalone web-based system. It consists of a frontend
client (browser-based UI) and a backend RESTful API. The system interfaces with external
services such as email providers and push notification services. It is deployed in a cloud
environment and uses a relational database to store user data, tweets, and social
interactions.
2.2 Product Functions
Summarizes major functions of the software and describes the system users and defines
their access privileges or roles within the system.

2.2.1 Function of the Software


 User registration and login
 Posting and deleting tweets
 Following and unfollowing users
 Liking and commenting on tweets
 Real-time notifications
 Viewing personal and public timelines

2.2.2 User Access Right


Users/Actors User Access Right/User Roles
End users are authorized to access their
accounts, manage their own content, and use
General user
the system’s features for searching and
interacting with available content.
 Manage user accounts
Administrator
 Manage system settings

2.3 User Characteristics


Describes general user profiles, skills, and experience levels.
The system targets general internet users with basic web browsing skills. No technical
knowledge is required. Administrators will require moderate technical knowledge to manage
user reports and platform settings.

2.4 Constraints
Lists limitations (e.g., hardware, legal, regulatory).
 Maximum tweet length is 280 characters
 Only modern web browsers are supported (Chrome, Firefox, Safari)

2.5 Assumptions and Dependencies


Lists factors assumed to exist or external systems the software depends on.
 Stable internet connection is available for all users
 The system relies on external services for email verification and push notifications
 Backend server and database will be deployed on a cloud provider such as AWS or
Azure

3. Specific Requirements
3.1 External Interface Requirements
Detailed description of all inputs into and outputs from the software system.

3.1.1 User Interfaces


UI design expectations.

Web-based UI with responsive design. Users can view timelines, post tweets, and manage
profiles.

(in this section insert the design; such as wireframes, mockups or a Figma link.)

3.1.2 Hardware Interfaces


Interfaces to hardware (e.g., sensors, devices)
 No specific hardware required;
 Operates on standard desktops, laptops, and mobile devices.

3.1.3 Software Interfaces


Integration with other software or APIs.
 Integrates with email service Amazon SES
 Push notifications used Amazon SNS

3.1.4 Communications Interfaces


Network protocols, ports, message formats.
 All communication uses HTTPs.
 Backend API follows REST principles
 uses JSON format.

3.2 Functional Requirements


Detailed “shall” statements describing what the software must do.
 FR-01: The system shall allow users to register using email and password.
 FR-02: The system shall send a verification email after registration.
 FR-03: The system shall allow users to log in using verified credentials.
 FR-04: The system shall allow users to post tweets up to 280 characters.
 FR-05: The system shall allow users to delete their own tweets.
 FR-06: The system shall allow users to follow and unfollow other users.
 FR-07: The system shall display a timeline of tweets from followed users.
 FR-08: The system shall allow users to like and comment on tweets.
 FR-09: The system shall send push notifications for new followers, mentions, and
likes.
 FR-10: The system shall allow users to edit their profiles.

In this section, also describe the product functions visually using such as a use-case
diagram (provide the corresponding scenarios), Diagram context and DFD.

3.2.1 Usecase Diagram

only for example

3.2.2 Diagram Context

3.2.3 Data Flow Diagram

3.3 Performance Requirements


Speed, throughput, response time, capacity, etc.
 The system shall respond to user requests within 2 seconds for 95% of all
interactions.
 The backend shall support at least 10,000 concurrent users.
 The system shall handle up to 100 tweets per second during peak usage.

3.4 Design Constraints


Standards, platform limitations, mandated technologies.
 The system must use OAuth 2.0 for authentication.
 The backend must be built using Node.js and the frontend using React.
 The database must be PostgreSQL.

3.5 Software System Attributes (Non-functional Requirements)


3.5.1 Reliability
Required reliability of the software system at time of delivery.
 The system shall have a mean time between failures (MTBF) of at least 1 month.

3.5.2 Availability
Availability level for the entire system such as checkpoint, recovery, and restart.
 The system shall be available 99.9% of the time, excluding scheduled maintenance.

3.5.3 Security
Protection from accidental or malicious access, use, modification, destruction, or
disclosure.
 All user data must be encrypted using AES-256.
 User passwords must be stored using bcrypt hashing.
3.5.4 Maintainability
Ease of maintenance of the software itself.
 The source code must follow clean coding standards and include automated tests.
 The system must allow hotfix deployment without restarting the entire system.

3.5.5 Portability
Ease of porting the software to other platforms.
 The frontend must be responsive across mobile, tablet, and desktop browsers.

3.6 Other Requirements


Any other requirements not covered above.
 The system must support multi-language UI (English and Bahasa Indonesia).
 All user activity must be logged and auditable.
 The system must comply with data privacy laws (GDPR).

Appendices (Optional)
Supporting material, glossaries, sample inputs/outputs.

Index
To help locate key sections or requirements.

You might also like