You are on page 1of 10

SOFTWARE REQUIREMENTS SPECIFICATION

SYNOPSIS
ON
YOUTUBE
By
Name: Mukesh Prajapati
Section: K17ZA
Roll No: A58
Registration No: 11713930
Group: 1
INDEX
1. Introduction………………………………………………….1
1.1 Introduction about purpose and scope………………....1
1.2 References………………………………………………1
2. Requirements………………………………………………….2
2.1 Functional Requirements……………………………....2
2.1.1 Create a new account…..……..……………………....2
2.1.2 User Sign-In……….……………….……………....2
2.1.3 Create Channel……………………………..………...2
2.1.4 Make single/Multiple playlist……………………….2
2.1.5 Add video to playlist……………………………………..3
2.1.6 Like or dislike video………………………………….......3
2.1.7 Offline video …………………………………………….3
2.1.8 Comment the video………………………………………3
2.1.9 View history…………………………………………….3
2.1.10 Purchase video…………………………………………...4
2.1.11 Remove uploaded video…………………………………4
2.1.12 Notify channel uploads………………………………….4
2.1.13 Change Quality……………………………………..…..4
2.1.14 Full Screen View………………………………………..4
2.1.15 Search Video……………………………………………5
2.1.16 Share Video…………………………………………….5
2.1.17 Watch Video……………………………………………5
2.1.18 Enable Subtitle/Cc ……………………………………..5
2.1.19 Buffered Control Video…..…………………………….5
2.1.20 Logout………………………………………………….6
2.2 Non-Functional Requirements …………………………..6
2.2.1 Security…………………………………………………6
2.2.2 Reliability……………………………………………….6
2.2.3 Availability……………………………………………..6
2.2.4 Maintainability………………………………………….7
2.2.5 Portability……………………………………………….7
2.2.6 Extensibility……………………………………………..7
2.2.7 Compatibility…………………………………………….7
1. Introduction
1.1 Introduction about scope and purpose:
The main motive to prepare this document is to determine a software
requirement specification for YouTube. YouTube is a video social networking
site that lets people upload, view and share videos. It emphases power to build
community and bring the world closer together. 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 YouTube system is followed. In addition to these, system
features such as uploading, viewing and sharing videos, etc are deeply described.
The purpose of the document is to collect and analyze all assorted ideas that have
come up to define the system, its requirements with respect to consumers. In short,
the purpose of this SRS document is to provide a detailed overview of our
software product, its parameters and goals. Moreover, the purpose to build this
software is to make the world more open and connected.
The name of the software is YouTube. It is a service that lets people view, share,
upload, download videos and even lets people earn money through it.
When the user sign in YouTube, they can see their homepage, which is your entry
point to the site. By personalizing your YouTube homepage you'll get updates on
your video subscriptions as well as what your friends are watching.
1.2 References
www.YouTube.com
www.wikipedia.com
www.wikihow.com

(1)
2. REQUIREMENTS
Requirements are further divided into two groups- Functional and Non-
Functional.

2.1Functional Requirements
2.1.1 F.R.1: Create a new account
Input: Request for user’s first name, last name, mobile number/ email id, new password,
DOB and gender.
Processing: Retrieves the given information given by the user and creates a new account
for him/her.
Output: Displays created account.

2.1.2 F.R.2: User Sign-In


Input: Request for user’s email id and password.
Processing: Retrieves the given information given by the user
and allows him/her to access the software.
Output: Users are logged in.

2.1.3 F.R.3: Create Channel:


Input: Channel can be create by User.
Processing: Channel will be create and store the information on database.
Output: Channel will be displayed.

2.1.4 F.R.4: Make single/Multiple playlist


Input: User can make playlist and name it.
Processing: A sequence of video list is added with name and store temporary in account
database.
Output: Playlist will be displayed with name.
2.1.5 F.R.5: Add video to playlist:
Input: User can add video to playlist.
Processing: Sequence and Contents of video will be added in playlist database.
Output: Video will be saved in the playlist and displayed.

2.1.6 F.R.6: Like or dislike video:


Input: Video can be liked/disliked by the user using button.
Processing: After pressing the button, database add like by user and store the like in
database.
Output: Video is whether liked or disliked is displayed.

2.1.7 F.R.7: Offline Download:


Input: User can download video for offline view.
Processing: Video is downloading from server and store into users database.
Output: Video can be stored and displayed.

2.1.8 F.R.8: Comment the Video:


Input: User can write words in comment section.
Processing: User written words is saved in channels database.
Output: Comment is stored and displayed.

2.1.9 F.R.9: View History:


Input: User can see earlier watched videos by pressing history button.
Processing: Earlier watched videos list is scanned and displayed to the user.
Output: List of earlier watched videos is displayed.
(3)
2.1.10 F.R.10: Purchase Video:
Input: User can purchase video by pressing on purchase button.
Processing: After pressing purchase button control is transfer to payment page after
successful / un-successful payment video is either download and displayed or not
Output: Videos are downloaded/ not downloaded is displayed.

2.1.11 F.R.11: Remove Uploaded Video:


Input: User select video in his channel and press delete button.
Processing: Video is deleted from the channel.
Output: Content is shared in your timeline.

2.1.12 F.R.12: Notify Channel Uploads:


Input: New upload video is detect to user in his channel after login.
Processing: After user login database quickly identify the other channel upload and
notify to user channel database.
Output: Notification is detect in notification bar.

2.1.13 F.R.13: Change Quality:


Input: User can press change quality button and select required resolution
Processing: Website will change resolution of video and display the full screen view
Output: Quality of video is changed.

2.1.14 F.R.14: Full Screen View:


Input: User can watch full screen video by pressing full screen option button.
Processing: After pressing button they command front end to view in full screen
mode.
Output: Video is displayed in full screen resolution.
2.1.15 F.R.15: Search Video:
Input: User can type name of video/channel.
Processing: Name of channel/video check by database.
Output: Name of video/channel will found or not found and displayed.

2.1.16 F.R.16: Share Video:


Input: User can share video in other social service website by pressing share button.
Processing: Details of other social website account is verified by database and
transfer/share the video page or website link.
Output: The video will be share or not share.

2.1.17 F.R.17: Watch Video:


Input: User select and watch video.
Processing: Video is select and start buffered by Front end.
Output: Video select and play.

2.1.18 F.R.18: Enable Subtitle/Cc:


Input: User press subtitle button.
Processing: Database is verified subtitle if available it display otherwise not.
Output: Subtitle is displayed in video view if available.

2.1.19 F.R.19: Buffered Control Video:


Input: User can Pause, Play, Left peak, Right Peak, Increase sound, decrease sound by
pressing button
Processing: Video player is controlling by command.
Output: Video will display according to control.
(5)
2.1.20 F.R.20: Logout:
Input: Click on “Logout”.
Processing: Retrieves the given information and performs the required operation.
Output: You are logged out or exited from the software.

2.2 Non-Functional Requirements:


2.2.1 Security:
The system use SSL (Secured Socket Layer) in all transactions that include any other
confidential passenger information. The system must automatically log out in all
customers after a period of inactivity.
The system should not leave any cookies on the customer’s computer containing the
user’s password, system’s back-end servers shall only be accessible to authenticated
administrators. Sensitive data will be encrypted before being sent over insecure
connections like the internet.

2.2.2 Reliability:
The system provides storage of all databases on redundant computers with automatic
switch over. The reliability of the overall program depends on the reliability of the
separate components. The main pillar of reliability of the system is the backup of the
database which is continuously maintained and updated to reflect the most recent
changes. Thus the overall stability of the container and its underlying operating system.

2.2.3 Availability:
The system should be available at all times, meaning the user can access it using a web
browser, only restricted by the down time of the server on which the system runs. In case
of a hardware failure or database corruption, a replacement page will be shown. Also in
case of hardware failure or database corruption, backups of the database should be
retrieved from the server and saved by the administrator. Then the service will be
restarted. It means 24X7 availability.
(6)
2.2.4 Maintainability:
A commercial database is used for maintaining the database and the application server
takes care of the site. In case of failure, a re-initialization of the program will be done.
Also the software design is being done with modularity in mind so that its
maintainability can be done effectively.

2.2.5 Portability:
The application is HTML and scripting language based so that end user part is fully
portable and any system using any web browser should be able to use the features of the
system, including any hardware platform that is available or will be available on future.
An end-user is use to system on any OS; either it is Windows or Linux. The system shall
run on PC, Laptops and PDA, etc.

2.2.6 Extensibility:
The software must be extensible in the sense it can be updated easily and it should be
easy to add any new functions whenever required in future. The term extensibility can
also be seen as a systematic measure of the ability to extend a system and the level of
effort required to implement the extension.

2.2.7 Compatibility:
The software’s must be compatible enough to operate satisfactorily together on the
same computer, or on different computers linked by a computer network. It is possible
that some software components or systems may be compatible in our environment and
incompatible in another.

(7)

You might also like