Cse320 (Srs Document)
Cse320 (Srs Document)
Cse320 (Srs Document)
SUBMITTED BY:-
NAME:-D.SHOAIB AHAMED
REGISTRATION NUMBER:-12111440
SECTION:-K21YK.
ROLL NUMBER:-RK21YKA32
COURSE:-SOFTWARE ENGINEERING.
COURSE CODE:-CSE320
SUBMITTED TO:-
Dr. DIMPLE NAGPAL MADAM.
INTRODUCTION
Purpose
This document describes the software requirements and specification for a messenger app
Whatsapp.
Definitions, abbreviations
Definitions
• User Account
A user account is a location on a network server used to store a computer username, password, and
other information. A user account allows or does not allow a user to connect to a network, another
computer, or other share. Any network that has multiple users requires user accounts.
A mobile operating system, also called a mobile OS, is an operating system that is specifically
designed to run on mobile devices such as mobile phones, smartphones, PDAs, tablet computers and
other handheld devices.
• Database
A databse is a collection of information that is organized so that itcan easily be accessed, managed,
and updated. In one view, database can be classified according to types of content
• Distributed database
A distributed database is a database in which storage devices are not all attached to a common
processing unit such as the CPU, and which is controlled by a distributed database management
system together sometimes called a distributed database system networks.
• Entity relationship
In software and systems engineering, a use case is a list of actions or event steps, typically defining
the interactions between a role (known in the Unified Modeling Language as an actor) and a system,
to achieve a goal. The actor can be a human or other external system.
•DFD
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an
information system, modelling its process aspects. A DFD is often used as a preliminary step to
create an overview of the system, which can later be elaborated.
Project Scope
WhatsApp is an online instant messaging application that integrates user’s contacts from their
phonebook with the application and enables exchange of messages free of cost over the internet.
References
webwhatsapp.com
http://www.uianduxdesign.com/ux-designs/whatsapp-user-interface-and-user-experience-
design.html
https://www.whatsapp.com/
https://en.wikipedia.org/wiki/WhatsApp
Overall Description
Product Perspective
Whatsapp does not work independently. It works together with the internet and the mobile
operating system and its hardware services.
Communication interface
Software interface
The messages sent via the communication network are specific to the target other user's same
software (whatsapp)on the other side.
Hardware interface
The software will run on the mobile system with the help of its hardware.
User interfaces
User
Once the application is installed, it goes through the user’s phone book, and upon consenting, sends
a push invitation to connect and chat on WhatsApp. A user enters his or her phone number, and can
then change the phone name.
Product Features
The whatsapp identifies a user by a mobile number andby verifying that number. It sends intant
messages and data to the other users of whatsapp (e.g., pictures, messages, videoes,
documents,audio messages) , user can communicate to the other user of whatsapp by calling them
from whatsapp, can seen their last seen detail, user can create groups and can broadcast message in
group to the other users of group, can upload their profile picture and can set a status, users can
hide their details from other users like their profile picture , status, last seen, users can block users
and also can spam other users, users can save their chat, they can star important messages.
User Classes and Characteristics
Enhancement Requests
Last Seen
Client has requested that user be able to see the date and time when his/her contact was last using
the application.
User Profile
User should be able to set their profile picture and a status limited to 150 characters..
Operating Environment
The hardware, software and technology used should have following specifications:
• Touch screen for convenience or Keypad (in case touchpad not available)
• If not able to exchange data over network, prompt error message "Connection not available" •In
case of not able to access services of mobile hardware
• If eg.camera is not working, prompt error message, "Can’t access camera". • Lock Account • If
user failed to follow policies of whatsapp
User Documentation
For user manuals and help use help option in the main menu or visit www.whatsappweb.com and
click on contact us option.
• Power supply
Specific Requirements
Functional Requirements Functional requirement 1
• 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.
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.
Functional requirement 3
• 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.
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.
Functional requirement 5
• Description
Broadcast Message
User should be able to create groups of contacts. User should be able to broadcast messages to
these groups.
Functional requirement 6
• 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.
External Interface Requirements
User Interfaces
The whatsapp user interface should be intuitive, such that 99.9% of all new whatsapp users are able
to use whatsapp without any assistance.
Hardware Interfaces
Software Interfaces
The software interfaces are specific to the target other user's whatsapp software systems.
Scalability
WhatsApp should be able to provide instant messaging services to 1 billion users at any given time.
Privacy
Future plans include providing inline document viewer that lets users view pdf and word
attachments within the application chat window itself. Further optimizations can be made to
improve performance especially over the network. This includes making most network specific
requests as non-blocking background processes. We also aim to expand our infrastructure to include
more database servers so as to take back up of user data more frequently.
Maintenance will be handled by in house team of developers in the first 6 months post application
launch. Within this period, we aim to hit our target of 100,000 users. Once this target is achieved, we
intend to outsource maintenance and support to a third party who will be trained for 4 months on
system maintenance and troubleshooting.
Appendix A: Glossary
DB Databaase
ER Entity Relationship
Appendix B: Analysis Models
Test Cases For WhatsApp
Below we are going to mention all the possible integration testing scenarios for
WhatsApp which have also covered positive and negative test cases for WhatsApp or
negative test scenarios for WhatsApp:
Installation Testing
Usability Testing
Performance Testing
WhatsApp Group Feature
Admin Feature Of WhatsApp Group
Adding Feature Of Whatsapp Group
Delete Feature Of Whatsapp Group
Contact
Text Field
WhatsApp Status
WhatsApp New broadcast
WhatsApp Web
WhatsApp Settings
Profile Picture
Individual Chats
Group Chats
Audio Calls
Video Calls
Check if the user can download the WhatsApp app from the Play Store
or App Store or not.
Check whether the successful installation is on mobile.
Check if the user can register with a new phone number.
Check if the user can get a verification code on his mobile or not.
Check the maximum number of incorrect attempts of verification code.
Check one phone number should be registered on only one WhatsApp.
Check if successful registration on mobile.
Check if contacts are imported to the Whatsapp contact list or not.
Check if the user is able to upload a profile picture or not.
Usability Testing Whatsapp Test Scenarios
Check the contact details shows the name and profile photos of the
contacts.
Check the status of the contacts will be displayed like the status of
contact as Online or last seen with date, time Ex: last seen 10:35 PM, Last
Seen 25/12/2014 05:04 AM
Check on the click of the back button the user should be redirected to
the chat list.
Check the user is able to select contacts for the broadcast messages.
Check whether the user is able to send and receive messages from
broadcast or not.
Check the user is able to send and receive messages from broadcast in
an individual chat box.
Check the maximum number of contacts for broadcast messages.
Check whether the user is able to see the Scan code screen on the
mobile phone or not
Check whether the QR code is scanned from WhatsApp web or not.
Check whether the user can get a message for another WhatsApp
session with details or not.
Check whether the user is able to log out from all WhatsApp web or not.
Check whether the user is able to see setting options on the screen or
not.
Check the Account functionality with the Privacy option.
Check the Account functionality with the Security option.
Check the Account functionality with Two steps verification option.
Check the Account functionality with the Change number option.
Check the Account functionality with the Request account info option.
Check the Account functionality with the Delete my account option.
Check the user is able to change the Chat setting with App language,
Font size, Wall Paper, Chat back up, and Chat history.
Check the user can see and change the notification settings.
Check the user can see and change the Data and storage usage settings.
Check the How Help option is helpful for the users.
Check while hiding the last seen to other users it should not display.
Check the blue ticks should not display when sending the messages.
Check if the date time format is displaying in the wrong format.
Check the displaying date and time in the wrong format.
Try to send more than 10 images at a time. ( as it allows only 10 images
at a time)
Try to send a video having a size > than the limited size.
Copy and paste thousands of msgs at a time and observe the behavior.
Send multiple messages to multiple users and groups.
Try to send all emoticons at a time in one msg.
Conclusion
These are some of the test cases that you can use for the text field. There are many
types of text inputs so you have to test according to the specification. I hope these
test scenarios and the pointers helped you.