Software Requirements
Specification for
Watts app
Name: Dondapati Sirisha
Section : Rk18lc
Roll no: 28
Submitted to:Dr.prinayaka chawla
Table of contents
1.introduction
1.1 purpose
2.Definitions and abbreviations
3.Overall description
3.1 product perspective
4.functional requirements
5.non functional requirements
6. Dfd
7. Test cases
1.introduction
This document is a Software Requirement Specification (SRS)
for the DEVCLOUD Web Based IDE project. ... Integrated
Development Environment is an application which provides
facilities to programmer for software development such as code
completing and fixing, source code editing and management,
automated testing, etc.
1.1 purpose
This document describes in substantial detail, the software
requirements of WhatsApp, an online instant messaging
application. This document will describe the problems
WhatsApp intends to address, the functional requirements and
non-functional requirements of the proposed system.
2. Definitions and
abbreviations
A User must have a device on which he can run the
Application. Device can either run on Android, IOS,
Blackberry, Windows or Symbian.User Account is linked to the
contact information he provided during the initialization of the
application. User can be contact only with that information.
2.1 last seen,Profile picture, status ,receipts
User can put up a profile picture to indicate his appearance.
Last seen of a user indicates the last point in time when the
user used the application. Status indicates the written
statement about himself or his state or mood depending in the
usage to all his recipients. Receipts indicate the status the
message sent to any recipient. Single receipt indicates that the
message has been sent from the user’ end. Double receipt
indicates that the message has been received by the other party.
Blue colored receipt indicates that the recipient has read the
message.
2.2 Network usage
In order to enjoy seamless benefit of WhatsApp, User is
supposed to be connected to Internet at any given point of time.
WhatsApp uses considerably lesser network resources than any
other chatting application available in the market. WhatsApp
also provides the user with the option to limit resources to
incoming media.
2.3 recipient
WhatsApp can be used to converse with more than a single
user at any given point of time. The recipient must also use the
application on the other end of the conversation. The Contact
information to which the Whatsapp Account is linked is to be
saved in the user contacts in order to start a new conversation
with the recipient.
2.4 Group
A Group of users ranging from 1-256 can be added into a
group and caconversed with at the same time. Any group user
can add new members into the group not exceeding 150. Only
the Group Admin has the executive permissions to remove a
member of the group. Group admin can also provide other
members of the group with Admin permissions.
2.5 Broadcast messages
A user can broadcast same message to 1-150 user at the same
time with the broadcast option. Users with his contact
information can only receive the message.
2.6 privacy
Whatsapp provides seamless ways to save the user’s privacy.
User can decide which information is available for other users
to view and which information isn’t. Information like Last
seem, Profile Picture, Status can be put out for view to
everyone or only to contacts or no one
.2.7 backup
An Encrypted Backup of all the conversations is saved in
Internal Memory in case of an Android device, BlackBerry
devices and in Cloud in case of an iOS device. Backup is
encrypted in order to avoid misusage of the metadata of the
Application.
2.8 project scope
WhatsApp is a proprietary, cross-platform, encrypted instant
messaging client for smartphones. It uses the Internet to send
text messages, documents, images, video, user location and
audio messages to other users using standard cellular mobile
numbers .As of February 2016, WhatsApp had a user base of
one billion, making it the most popular messaging application.
WhatsApp Inc., based in Mountain View, California, United
States, was acquired by Facebook Inc. on February 19, 2014,
for approximately US$19.3 billion
3.Overall description
3.1 product perspective
WhatsApp does not work independently. It works together
with the internal servers and sending and receiving application
on either end devices.
Communication Interface :WhatsApp
communicates with the internal servers via a communication
network.
Soft ware interface: The messages sent via the
communication network are specific to the target recipient. At
any point, two known users will participate in the application.
Hard ware interface :he software will run on any
device running on iOS, Android, Symbian, BlackBerry
operating systems.
User interface :The GUI of the Application is user
friendly and [need no external assistance to understand the
application.
Customer :The customer user interface should be
intuitive, such that 99.9% of all new WhatsApp users are able
to use the Application without any assistance.
Message Processing : Every message send through
the application is processed by the internal servers and sent to
the recipient. Message processing is done at very high
processing rates so as to avoid delay in the conversations
between the users. A maximum of 27 billion messages are
processed in a single day by WhatsApp internal servers
4. Functional requirements
Functional requirement 1
Description :Send a message function sends a text
message to another user of app.
Inputs: Inputs are characters, including numbers and the
receiver contact from contact list. (Name of the receiver in this
case)
Processing :Reads the message from the buffer, stores it
in the sender`s device DB, pass it to the Central DB and passes
the message to receiver and stores it in the receiver`s device
DB. Sender then gets indication of receiving the message by the
receiver and indication of reading the message by the receiver.
(Sender gets mark on the message when receiver gets the
message and double mark when receiver opens the message)
Output :Mark at the sender`s side – when receiver
gets the message in his device. Double mark at the
sender`s side – when receiver opens the message.
The message itself – stored in Central DB, Stored in the
sender`s and the receiver`s devises DB for history. Notification
at sender`s side if the message wasn`t transferred to receiver.
Functional requirement 2
Description : User Registration User must be able to
register for the application through a valid phone number. On
installing the application, user must be prompted to register
their phone number. If user skips this step, application should
close. The user’s phone number will be the unique identifier of
his/her account on WhatsApp.
Input:Mobile number is entered
Processing :Verify number
Output:Verified proceed further
Functional requirement 3
Description :Adding New Contacts The application
should detect all contacts from the user’s phone book. If any of
the contacts have user accounts with WhatsApp, those
contacts must automatically be added to the user’s contact list
on WhatsApp. If any of the contacts have not yet registered on
WhatsApp, user should be provided with an invite option that
sends those contacts a regular text message asking them to join
whatsapp along with a link to the whatsapp application on
Google Playstore.
Input:Mobile number is entered
Processing :Saves number to contact list
Output:Shows in whatsapp contact list
functional requirement 4
Description :Send Message
User should be able to send instant message to any contact on
his/her WhatsApp contact list. User should be notified when
message is successfully delivered to the recipient by displaying
a tick sign next to the message sent.
Input :Message typed
Processing :Message send to other user
Output:Tick on message
Functional requirement 5
Description :Send Attachments User should be able to
send audio, video and images as attachments. Audio formats
that the application should support : mp3 wav Video formats
that the application should support : avi mp4 flv gif Image
formats that the application should support: jpg png File size
must not exceed 2MB per message.
Input: File attached
Processing : sent to other side user
Output: Tick on file
Functional requirement 6
Description : Broadcast Message User should be able to
create groups of contacts. User should be able to broadcast
messages to these groups.
Input:Message is entered
Processing :sent to all contacts of group
Output:Tick on message
Functional requirement 7
Description :Message Status User must be able to get
information on whether the message sent has been read by the
intended recipient. If recipient reads the message, 2 ticks must
appear next to the message read.
5.non functional requirements
51.Performance requirements :
It must be able to perform in adverse conditions extremely
slow internet connections and low battery on
device.Uninterrupted connections High data transfer rate
5.2 Security requirements :
WhatsApp provides encryption so as to prevent unauthorized
access to a message midway. It use 256-Bit SSL encryption to
secure data between two users.
5.3 software quality attributes:
5.3.1 Availability
The WhatsApp internal Server has to be available 24 hours a
day.
5.3.2 : security
The Application should provide maximal security in order to
make that much more transparent there are the following
requirements It must be impossible to plug into the internal
server network
5.3.3 : maintainability
Only maintainers are allowed to connect into internal servers.
6.Data flow diagrams
7. Test cases
S.no Test cases Input Expected Actual output Remake
Output
1 Test case for Valid phone ADD contact Add contact Pass
adding valid number and
contact name
2 Test case for Invalid phone Invalid Invalid Fail
adding invalid number and contact contact
contact name deleted deleted
3 Test cases for Group name Group created Group created Pass
creating group
4 Test cases for Channel name Channel Channel Pass
creating created created
channel