Вы находитесь на странице: 1из 25

System Requirement Specification

For
Video Streaming Website

Submitted To: Mr. M. Vijaya Raju


Submitted By: Sandeep Chandel
Roll No: B42
Registration No: 11701627
Section: K17AP
i
DECLARATION STATEMENT

Sandeep Chandel (11701627)

ii
Table of Content:
1. Introduction…………………………………………….5
1.1 Purpose………………………………………………………….5
1.2 Document Conventions…………………………………….….5
1.3 Product Scope………………………………………………….5
1.4 References ……………………………………………………...5
2. Overall Description …………………………………...6
2.1 Product Perspective…………………………………...6
2.2 Operating Environment…………………………...…...6
3. Functional Requirements ………………………....…..7
3.1 Sign Up/ Sign In………………………………………..7
3.2 Search…………………………………………………..7
3.3 Share Videos………………………………………...…7
3.4 Download Videos…………………………………....…7
3.5 Upload Videos……………………………………..……8
3.6 Navigation Section………………………………...……8
3.7 Home………………………………………………..……8
3.8 Trending…………………………………………………9
3.9 Subscription………………………………………..……9
3.10 Library…………………………………………..………9
3.11 History…………………………………………..………9
3.12 Watch Later……………………………………...……..10
3.13 Liked Videos……………………………………………10
4. Non-Functional Requirements …………………………11
4.1 Performance Requirements…………………….………11
4.2 Safety Requirements………………………….....………11
iii
4.3 Security Requirements…………………………….……12
4.4 Software Quality Attributes…………………..…………12
5. Design Phase…………………………………….………13
DFD (Data Flow Diagram) ……………………...………13
Use Case………………………………………….………17
8. Interface Design………………………………………....18
7. Coding Languages………………………………………22
6. Testing Phase……………………………………….……23
Test Case………………………………………….………23
9. Conclusion……………………………………………….25

iv
1.Introduction
1.1. Purpose
The purpose of this document is to present the detailed description of the
YouTube. It will explain the purpose and features of the system, the interfaces
of the system, and constraints that it must operate.

1.2. Document Conventions


This document uses the following conventions:
MHZ -Megahertz
SDLC - Systems Development Life Cycle
MB – Megabytes
KB - Kilobytes
HD- Hard Disk

1.3. Project Scope


This is a video streaming site name – “YouTube”
YouTube is a website designed for sharing video. Millions of users around the
world have created accounts on the site that allow them to upload videos that
anyone can watch. Through YouTube people can watch videos, share videos,
Upload videos and can even download them.

1.4. Reference
http://www.google.com.
http://www.slideshare.net
http://www.youtube.com

v
2.Overall Description

2.1. Productive Perspective


YouTube is an American video-sharing website headquartered in San Bruno,
California. YouTube allows users to upload, view, rate, share, add to favourites,
report, comment on videos, and subscribe to other users. It offers a wide variety
of user-generated and corporate media videos. Available content includes video
clips, TV show clips, music videos, short and documentary films, audio
recordings, movie trailers, live streams, and other content such as video
blogging, short original videos, and educational videos.
The program is a new self-contained product. It has come about due to the
demand for such a product being identified in Activities like Studies,
Entertainment, Music, Comedy, Adventures. From these activities we saw that
the main activity people used video for was the watch content found online.
These people would regularly spend periods of time searching websites to try
and find the videos they wanted to watch, either somewhere to stream the video
from or the files to download the video.

2.2. OPERATING ENVIRONMENT


YouTube can be operated by any system which has a browser and a decent
internet connection. For example – Windows, Mac, Linux, Android, IOS.

FOR PC/Laptop:
Ram: 512 MB
Space: 80 GB HD Drive
Core: Pentium IV MHZ or more
Cache: 512kb

For Android/IOS:
Ram: 512 Mb
Space: 500MB
Cache: 200kb

vi
3.Functional Requirement
3.1 Sign Up/Sign In

1. 3.1.1. Description: Allows user to sign up / sign in

2. 3.1.2. Input: E-mail Id, Password

3. 3.1.3. Output: Allows user to register their account on sign up and


allows user to access on signing in.

4. 3.1.4. Processing: When user sign up, system create new database and
register that user and when user sign in it matches the login credentials from the
database and if matches grant the access.

5. 3.2. Search

6. 3.2.1. Description: Allows user to search any video through entering


keyword.

3.2.2. Input: Input Keyword

7. 3.2.3. Output: Display videos related to keywords.

8. 3.2.4. Processing: Matches the keyboard in the database and display


videos according to that.

9. 3.3. Share Videos

3.3.1. Description: Allows user to share Videos with friends and family.

3.3.2. Input: Click on share button and select the person from friend list.

3.3.3. Output: Popup appeared = “Video shared Successfully”


3.3.4. Processing: When the user click share button, it send the video to the
user friend account.

vii
10. 3.4. Download Videos

3.4.1. Description: Allows user to download videos

3.4.2. Input: Click on the download button


3.4.3. Output: Popup appeared that video has been downloaded.

3.4.4. Processing: Fetch the video from server that has been store database and
transfer the video file to user device through download.

11. 3.5. Upload Videos

3.5.1. Description: Allows user to upload their videos into his account/channel.
3.5.2. Input: Click on Upload Button.
3.5.3. Output: New window popup asking to select the file to upload.

12. 3.5.1. Select File


13. 3.5.1.1. Input: Select the file you want upload.

14. 3.5.1.2. Output: Popup appear that file has been uploaded.

15. 3.5.1.3. Processing: When the user uploaded the file, the file has been
uploaded goes to the server and get saved in the database.

16. 3.6. Navigation Section

17. 3.6.1. Description: When user click the navigation section then three
options appeared.

3.6.2. Input: Select Navigation


18. 3.6.3. Output: 3 options appeared:

1. Home
2. Trending
3. Subscription
viii
19. 3.7. Home

20. 3.7.1. Description: This is the user main page

21. 3.7.2. Input: Click on Home.


22. 3.7.3. Output: Search based/ history based/ Subscription based videos
showed up.

23. 3.7.4. Processing: A list of videos based on user history, subscription and
search has been displayed.

24. 3.8. Trending

25. 3.8.1. Description: Show video on location.


26. 3.8.2. Input: Click on Trending.
27. 3.8.3. Output: Location based most popular videos display.

28. 3.8.4. Processing: System check the location of the user and then display
the top most popular videos of that region.

29. 3.9. Subscription

30. 3.9.1. Description: It displays all the channel subscribed by user.

31. 3.9.2. Input: Click on subscription


32. 3.9.3. Output: Display all the channel video that user subscribed.

33. 3.9.4. Processing: System check what channels user has subscribed from
the database and display the videos of their channel.

34. 3.10. Library

35. 3.10.1. Description: This section contains 3 options


36. 3.10.2. Input: Click on Library
ix
37. 3.10.3. Output: Display 3 option: 1. History 2. Watch Later 3. Liked
Videos

38. 3.11. History

39. 3.11.1. Description: it shows all the History of all the videos that the
user watched so far.

40. 3.11.2. Input: Click on History

41. 3.11.3. Output: Shows all the videos that user sees so far.
42. 3.11.4. Processing: Check user data in database and display the videos
that has been watched by the user.

43. 3.12. Watch Later

44. 3.12.1. Description: It shows all the videos that the user has added to
watch later category.

45. 3.12.2. Input: Click On watch later

46. 3.12.3. Output: Display all the videos (add to watch)


47. 3.12.4Processing: Check user data in the database and display all the
videos that has been added by the user in add to watch later section.

48. 3.13. Liked Videos

49. 3.13.1. Description: It shows all the liked videos that the user liked so
far

50. 3.13.2. Input: Click on Liked Videos

51. 3.13.3. Output: List of liked videos appeared.


52. 3.13.4. Processing: System check the user account and display all the
liked videos by the user so far.

x
4. NON-FUNCTIONAL REQUIREMENTS

4.1. Performance Requirements

● The user must have a device which is at least to play a 144p resolution
video.
● The user must have at least 500kbps of net connection in order to play the
video without buffering.

4.2. Safety Requirements

If there is extensive damage to a wide portion of the database due to


catastrophic failure, such as a server crash, the recovery method restores a past
copy of the database that was backed up to archival storage (typically tape) and
reconstructs a more current state by reapplying or redoing the operations of
committed transactions from the backed-up log, up to the time of failure. And in
the meanwhile, the server switch to the backup servers to keep the site working.

4.3. Security Requirements

Security systems need database storage just like many other applications.
However, the special requirements of the security market mean that owner must
choose their database partner carefully. All the Private data uploaded by the
user is absolutely confidential to the other users. User can also report for if the
find any suspicious activity in the YouTube, so the security department can take
care of that.

4.4. Software Quality Attributes

▪ AVAILABILITY: The site is available for the users 24x7.


▪ MAINTAINABILITY: The developers and a team of software engineers
work on the maintenance and the updates of the site.
▪ USABILITY: The site can be used anywhere if the connectivity to the
internet and a device.

5. DESIGN Phase:
Design phase deals with transforming the requirements, as described in the SRS
document into a form that can be used while programming. In design phase of
SDLC based on requirement captured in SRS.

xi
DFD (Data Flow Diagram)
A data flow diagram (DFD) maps out the flow of information for any process or
system.

Level 0

login data
USER Server
YouTube
.
0
Access Send data
granted

xii
LEVEL 1

Search video
0.3
Trendin
g
Videos
Upload
0.4

Account
Setting Display
Username Homepage selected
Login 0.5
Password Option
0.1 0.2
0.9

History

0.6

Watch
Subscri
Later
ption 0.7

Liked
Videos
0.8

xiii
LEVEL 2

Keyword Keyword Check


Search Display
server for
Video Video
videos
0.3.1 0.3.3
0.3.2

data data

Server

Click on Message
Upload Select File Click
Popup-
Upload Upload
0.4.2 “Uploaded”
Button 0.4.1 0.4.3
0.4.4

File stored Upload


in server Success

Server

xiv
Password
Click on Account Enter New Change Verify Change
Account Settings Password Password Authorization successful
Settings 0.5.1 0.5.2 0.5.3 0.5.4

data
data

Server

Click on
Show
History History
History
0.6.1 0.6.2

Retrieve
Send data
user History
from
account Server

xv
Show
Click on
Watch Watch
Watch
Later Later List
Later
0.7.1 0.7.2

Retrieve
user data
from Send data
account
Server

Click on
Liked Liked Show Liked
Videos Videos Video List

0.8.1 0.8.2

Retrieve Send data


user data
from
account Server

xvi
Use Case Diagram:

Login
USER SERVER

Authentication

Search Video

Providing Search Result

Upload

Download

History

Watch Later

Liked Videos

Account Settings

Maintenance
Maintenance Team

xvii
6.0 Interface Design
YouTube is world’s biggest online video streaming websites so it changes
its Interface designs.

6.1 Interface of YouTube Homepage (2005)


youtube.com was launched in 14 feb 2005 by thee classmates. They made
this as a part of their project. So, it is not that much user friendly that time.

xviii
6.2 Interface of YouTube Homepage (2010)
YouTube is the first site which became so famous only in the 5 years of its
launch. Even when the technology is not that much advanced that time
YouTube has managed to develop its interface very effectively.

xix
6.3 Interface of YouTube Homepage (2015)
In 2015 YouTube have developed its interface in the way that is very user
friendly and search results are also very accurate.

xx
6.4 Interface of YouTube Homepage (Current)
Currently the YouTube has improved a lot compared to the previous
versions of its own. The better GUI is applied, servers are better and now it also
offers paid services.

xxi
7.0 YouTube Application Programming Interface.

7.1 YouTube Data API (v3) (Languages Used)


● Apps Script
● Go
● Java
● JavaScript
● .NET
● PHP
● Python
● Python on App Engine
● Ruby
7.2 YouTube Analytics API
● Java
● JavaScript
● PHP
● Python
● Ruby
7.3 YouTube Live Streaming API
● PHP
● Python
● Java

Note: - YOUTUBE.COM

Unique Visitors: 1,000,000,000


Front End: JavaScript
Back End: C/C++, Python, Java, Go
Database: MySQL, BigTable

xxii
8.0 TESTING PHASE:
Testing phase is a very important for a successful system. In this phase before
implementing the new system into operation, for eliminating bugs a test run of
the system is done. After completing codes for the whole programs of the
system, a test plan should be developed and run one given set of test data.

Function Testing:

Test Cases:

TC ID TC Name Objective Steps to Expected Actual Status


Follow Result Result
TC_01 Valid search To check Write It should It is searching Pass
whether the something in search for the the data
search box is search box data filled by
searching for and click the user
the YouTube search
site when search
for YouTube

TC_02 Homepage To check Click on the Homepage of Homepage is Pass


whether youtube.com YouTube is been
homepage is displayed displayed
working or not

TC_03 Sign Up To register the Enter all the User User has been Pass
new user to the necessary info registered In registered
system after clicking the system
sign up

TC_04 Sign In To grant access Enter e-mail User access User is able Pass
to the user to his and password his account to access his
account account

TC_05 Search Search any Write the Videos Videos of Pass


video in keyword in shows up searched
YouTube search the search box depending on keyword
box to watch and click the searched displayed
videos search keyword

TC_06 Share Videos User is able to Click on share Video is been Video shared Pass
Share videos shared

TC_07 Download User is able to Click on Video is Video is Pass

xxiii
download download downloaded downloaded
videos

TC_08 Upload User is able to Click on Video is Video is Pass


upload videos upload uploaded uploaded

TC_09 Navigation User will able to Click on 3 options 3 options Pass


access to 3 more Navigation appeared appeared
option icon

TC_10 Home This take the Click on the User is on the User has been Pass
user back to the Home button homepage redirected to
homepage homepage

TC_11 Trending To take the user Click on the User is being User is been Pass
to a list of Trending redirected to redirected to
trending videos button trending page trending page

TC_12 Subscription To take the user Click on the User is on the User has been Pass
to a list of subscription subscription redirected to
Subscription button page Subscription
page page

TC_13 Library User will be Click on the User is able User can Pass
able to access Library button to access access the
options – options option
history, watch
later and liked
videos

TC_14 History User will able to Click on the User is on the User is able Pass
see the history history button history page to access his
history

TC_15 Watch_Later User can see a Click on the User is on the User is on the Pass
list of videos watch later watch later watch later
that he/she button page page
added in watch
later

TC_16 Liked_Videos User can see the Click on the User is on the User is able Pass
videos that he liked videos liked video to see the
liked so far button page liked videos

xxiv
9.0 Conclusion
In conclusion, YouTube is a very strong growing platform creating lots of
opportunities for entrepreneurs and motivated people. The best way to succeed
at it, apart from creating good video content, is knowing what people like and
knowing how to reach those people, for which of course you will need a
mastery of social media.
I can firmly conclude that social media has a very strong impact on YouTube,
since it makes the producer content reach more people, it facilitates the
incorporation of new subscribers to a channel and it makes it seem more local or
familiar. The ability of writing a tweet to your YouTube star and maybe have a
response is a great way of interaction between communicator and receiver.
Social media is also useful for the producer since it acts as a way to receive
feedback. If a lot of people start complaining about how he plays, or the T-
Shirts he wears, for example, the top comments will be featured on the top of
the comment section and thus the producer will have no way of not reading it,
and hopefully fixing whatever problem in case there was one. The can also be
inspiring and supportive comments as well as advice or tips for future videos.
YouTube Is growing with a great speed and I can say that there will be no other
online streaming site who is going to surpass this website at least for 10 years.

xxv