Sunteți pe pagina 1din 10

SOFTWARE REQUIREMENT

specification(SRS)
For
Facebook.

Prepared by:
NAME: Vamsi Krishna
Roll no: B30
Reg no: 11603615
Section: k1608
1. INTRODUCTION
This document is prepared in order to determine a software requirement
specification for Facebook. Facebook is a social network on which
people can add their friends, share videos and photos, send and receive
messages, comment on the links etc. In order to gain an overview about
the report, firstly, the purpose and scope of this document will be given,
then an overall description of Facebook system is followed. In addition
to these, system features such as uploading photo, sharing video, adding
friend etc. are described deeply. After mentioning about the introduction
of the software system, the specific requirements will be addressed for it.
In the final part, functional and non-functional requirements will be
addressed.

1.1 PURPOSE

The SRS is needed to evolve as the development of the software product


processes. The purpose of this document is to give a complete
description about how Facebook social network system can be
developed. This document is to provide information about what the
software product is to do to customers and establish an agreement
between customers and suppliers and also become helpful for
development. In addition to these, it provide a basis for validation and
verification. The issues which are basically addressed are functionality
such as adding friends, uploading photos, external interfaces,
performance, attributes and the design constraints of the system.
1.3 SCOPE

The name of the software product is Facebook. Facebook is a social


network that connects people. The aim of Facebook is to provide
information to the users about the events and the people whom they
know. The users of Facebook can add friends, share videos which they
want their friends watch; upload photos, comment on their friends
sharings, chatting with their friends and become informed about their
friends. Moreover, people can create social groups for such as university
clubs, football clubs or for social awareness. People can be informed
about the events by the help of these groups or their friends.

1.4 DEFINITIONS, ACRONYMS and ABBREVIATIONS

When the user logins Facebook, they can see their home page, which is
named as News Feed that provide users to see what their friends share,
what their friends write their status. Moreover, at the left of this page,
the user can see the event invitations and the birthdays of their friends.
Therefore, News Feed is the main page which combines daily friend
interactions.
2.FUNCTIONAL REQUIREMENTS

In Software engineering, a functional requirement defines a function of a


system or its component. A function is described as a set of inputs, the
behavior, and outputs. ... This should be contrasted with non-functional
requirements which specify overall characteristics such as cost and
reliability.

List of functional requirements:


2.1 User Login:
Input: User enters details for login.
OUTPUT: User gets / or dont get loggedin.
Processing: User detail are verified.
2.2 Event performance:
REQ. 1: System shall check whether the name of the event is
entered.
REQ. 2: System shall check whether the time of the event is
entered.
2.3 Searching Friends:
REQ. 1: System shall not view the users who do not want to
show themselves at search results.
2.4 Adding Friends:
REQ. 1: If the other user has set privacy level to prevent others adding
as a friend, system shall not let other users add as friend.
REQ. 2: System should not allow users to add pages or groups
as friends.
2.5 Creating Groups:
REQ. 1: System should allow all the users to create any kind of
groups.
2.6 Uploading Photos:
REQ. 1: User must be provided with various option for
uploading a photo.
REQ. 2: Along with photo user must be allowed to enter
captions, tagging and more
2.7 Sharing Status:
REQ. 1: A user can like the sharing if he/she is included in the
group specified in the privacy settings by the user who shared
the status.

REQ. 2: System shall check whether the size of the status is less
than 420 characters.
2.8 Sending Messages:
REQ. 1: System shall check whether the receiver allows
receiving messages.

REQ. 2: System shall check whether sender and receiver are


friends to allow sending by SMS.

REQ. 3: System shall check the file types of attachments to


prevent misuse of messages.
REQ 4: System shall check the size of the attachments, whether
total size of attachments is less than 25 MB.

REQ 5: System shall check the length of the message, whether


it is longer than 10000 characters.
2.9 Receiving Messages:
REQ. 1: System shall view the messages only that are sent to
the user.
2.10 Commenting:
REQ. 1: System shall view commenting interface only for the
friends shared items.
2.11 Uploading Videos:
REQ. 1: System shall check whether the size of the video is less than 20
minutes or 1024 MB .

REQ. 2: System shall check whether the video is copyrighted or not.

REQ. 3: System should support all the video formats of the other
platforms that are connected to Facebook.
3. NON-FUNCTIONAL REQUIREMENTS
In software engineering, a non-functional requirement (NFR) is
a requirement that specifies criteria that can be used to judge the
operation of a system, rather than specific behaviors. They are
contrasted with functional requirement that define specific
behavior or functions.

3.1Accessibility:
Accessibility refers to the design of products, devices, services,
or environments for people who experience disabilities.[1] The
concept of accessible design and practice of accessible
development ensures both "direct access" (i.e. unassisted) and
"indirect access" meaning compatibility with a person's assistive
technology.
3.2Backup:
backup, or the process of backing up, refers to the
copying and archiving of computer data so it may be used
to restore the original after a data loss event.
3.3Maintainability:
In engineering, maintainability is the ease with which a
product can be maintained in order to:
correct defects or their cause,

repair or replace faulty or worn-out components


without having to replace still working parts,
prevent unexpected working condition,
maximize a product's useful life,

maximize efficiency, reliability, and safety,

meet new requirements,

make future maintenance easier, or

cope with a changed environment.

3.4Privacy:
Privacy is the ability of an individual or group to seclude
themselves, or information about themselves, and thereby
express themselves selectively. The boundaries and
content of what is considered private differ among cultures
and individuals, but share common themes. When
something is private to a person, it usually means that
something is inherently special or sensitive to them. The
domain of privacy partially
overlaps security (confidentiality), which can include the
concepts of appropriate use, as well as protection of
information. Privacy may also take the form of bodily
integrity.
3.5Portability:
Portability in high-level computer programming is the
usability of the same software in different environments.
The prerequirement for portability is the
generalized abstraction between the application logic
and system interfaces. When software with the same
functionality is produced for several computing platforms,
portability is the key issue for development cost reduction.

3.6Reliability:
Reliability engineering is a sub-discipline of systems
engineering that emphasizes dependability in the lifecycle
management of a product. Dependability, or reliability, describes
the ability of a system or component to function under stated
conditions for a specified period of time. Reliability is closely
related to availability, which is typically described as the ability of
a component or system to function at a specified moment or
interval of time.
3.7Response Time:
Responsetime is the time a system or functional
unit takes to react to a given input.
3.8Reusability:
reusability is the use of existing assets in some form
within the software product development process. Assets
are products and by-products of the software development
life cycle and include code, software components, test
suites, designs and documentation. Leverage is modifying
existing assets as needed to meet specific system
requirements. Because reuse implies the creation of
a separately maintained version of the assets . it is
preferred over leverage.
3.9Security:
This is the protection of the product which secures
information or data of the user.This provides the
encryption of the software product.

3.10Usability:
Usability is the ease of use and learnability of a human-
made object such as a tool or device. In software
engineering, usability is the degree to which a software
can be used by specified consumers to achieve quantified
objectives with effectiveness, efficiency, and satisfaction in
a quantified context of use.

S-ar putea să vă placă și