Functional
requirements:
In software and
systems engineering, functional requirement is a declaration of the intended function of a
system and its components. Based on functional requirements, an engineer
determines the behaviour (output) that a device or software is expected to
exhibit in the case of a certain input. A system design is an early form of a
functional requirement.
Non-functional
requirements:
In systems
engineering and requirements engineering, a non-functional requirement is a
requirement that specifies criteria that can be used to judge the operation of
a system, rather than specific behaviours. They are contrasted with functional
requirements that define specific behaviour or functions.
Functional Requirements For YouTube:
1.
Login
Use Case: Login
Primary Actor: Admin or User
Goal in Context: Accessing to YouTube account
Scenario:
1. The system prompts the user for their
username and password.
2. The admin enters username and
password.
3. The system gets password registered to
the user name.
4. The system verifies the password and
sets the admin’s authorization.
5. The admin is given access to the system
to perform their job
2.
YouTube Channel
Use Case: Create YouTube Channel
Primary Actor: Admin
Goal in Context: Create a YouTube channel to upload videos
Scenario:
1. If the admin wants to upload videos to YouTube
website, then he must create a YouTube channel first.
2. Admin must have an email address to create a YouTube channel.
3. Admin must able to go to his channel from any page by clicking on the
profile icon.
4. A profile icon must be displayed at the corner on each page.
5. All of the videos must be displayed on the admin’s YouTube Channel.
6. The admin must have subscribe button on their YouTube channel which
has a counter. It increments by one every time a user clicks on it and
decrements if the same user clicks on it again. Users must be able to subscribe
to any channel by clicking on the subscribe button.
7. Every time the user clicks on the profile icon, the system must take
them to the admin’s YouTube channel.
8. A subscribe button must be displayed below every video of the admin.
3.
Uploading
Use Case: Uploading
Primary Actor: Admin
Goal in Context: Uploading videos on YouTube
Scenario:
1. The system shall have an upload button for videos.
2. The system can upload videos from the system.
3. Video format of the videos must be MOV, MP4 (MPEG4), AVI, WMV, FLV, 3GP, MPEGPS or WebM.
4. Standard YouTube accounts must have videos of length under 15 min.
5. Users connected with YouTube partnership program can upload videos of
any size and length.
6. The admin must have a youtube channel created on their account in
order to upload videos.
4.
Category
Use Case: Choose Category
Primary Actor: Admin
Goal in Context: Choosing which category the uploaded video belongs to.
Scenario:
1. After Uploading, in the settings admin can choose a
category of the uploaded video from Auto
& Vehicles, Beauty & Fashion, Comedy, Education, Entertainment, Family Entertainment and people and blogs.
2. The default category of YouTube is People and blogs. Admin must also
be able to change the default category of YouTube.
3. The category of the video must be displayed in the video description
when the video will be watched by viewers.
5.
Date, time and location
Use Case: Choose Date, Time and Location.
Primary Actor: Admin
Goal in Context: Admin chooses date, time and location of the video.
Scenario:
1. In the uploaded video settings, admin must have the
option to select date, time and location of the video.
2. The default date, time and location of the video will be set to none.
3. Admin must have the option to change the date and location of the
video whenever he wants but the date of publishing the video must not be
changed and will displayed in the video description.
6.
Language and License
Use Case: Choose language and license.
Primary Actor: Admin
Goal in Context: Admin selects language and license.
Scenario:
2. In the uploaded video settings, admin must have the
option to choose the language and license of the video.
2. The default license of the video will be set to standard. The default
value of language is set to none. Admin must be able to change the default
value.
3. Admin must have the option to change the language and license of the
video whenever he wants.
4. Admin can choose license from two options, first is creative commons
and second is standard license.
7.
Monetization
Use Case: Monetization
Primary Actor: Admin
Goal in Context: Enable or disable monetization
Scenario:
1.If the admin has a standard youtube channel, then he
must not have monetization enabled on their video.
2. If the admin has YouTube Partner verified channel, then he must have
the option to enable or disable monetization.
8.
Verification
Use Case: Verify YouTube Channel
Primary Actor: Admin
Goal in Context: To verify YouTube channel of the admin.
Scenario:
1.If the admin has a YouTube channel, he must have the
option to verify their YouTube channel.
2. On clicking the verify button, the admin must be
prompted to enter their phone number. In the next step, the admin must have the
option to verify phone number either through SMS or phone call.
3. When the admin will choose SMS, a verification code
must be sent to the admin’s entered phone no. The admin must be prompted to
enter the verification code sent to their phone. The system must match the
verification code entered by the admin to the one sent to the phone number. If
both match, the admin’s YouTube channel must be verified. Else the admin must be
prompted to enter phone number again.
4. If the admin chooses phone call, an automated phone
call must be made to admin asking him to enter the verification code.
5. A verified YouTube channel must be able:
·
To upload
videos longer than 15 min of any size and length.
·
To have
the option to upload custom made picture as the thumbnail of their videos.
·
To apply
for YouTube partner Program in order to enable monetization on their YouTube
videos.
·
To live
stream on their YouTube Channel.
6. An unverified YouTube channel must not be allowed
to upload videos longer than 15 min. They must not be allowed to apply for
YouTube partner program. They must not have the option to upload custom
thumbnails to their videos.
9.
Video Title and Description
Use Case: Video title and description of the video
Primary Actor: Admin and User
Goal in Context: User and admin role on Video title and description of
the video
Scenario:
1. The title of the video must be less or equal to 100
characters.
2. The description of the video must be less or equal to 5000
characters.
3. Admin must be given the option to edit video title and description
any of his videos on the channel.
4. User must be able to see the title and description of every video
below the video itself.
5. The title of the video must not contain any URL links. The
description of the video can contain external links.
10. Subscription and
Playlist
Use Case: Subscribe button and Playlist.
Primary Actor: Admin and User
Goal in Context: User and admin role on Subscription and Playlist.
Scenario:
1. The admin must have subscribe button on their YouTube channel which
has a counter. It increments by one every time a user clicks on it and
decrements if the same user clicks on it again. Users must be able to subscribe
to any channel by clicking on the subscribe button.
2. Subscribe button must be displayed below every video of the admin.
3. Add to playlist button must be present on the right side of share
button just below the video. The user must be able to save any video to the
playlists he creates on his channel. The user must also have the option to
create a new playlist from the add to playlist button. The new playlist created
must be saved on his YouTube channel.
4. The admin must have the option to create playlists on their channel
and put videos in them accordingly.
5. Liked Videos playlist must contain every video the user has liked by
clicking the like button.
6. Every playlist must be present in the YouTube channel of the user.
The user must be able to delete or edit the playlist any time.
7. The admin must have the option to make their playlist private or
public.
8. In public playlists, every user coming to admin’s channel must be
able to see it. Private playlists must be only be seen by the admin.
11. Like, Dislike, Share
and Add to Playlist:
Use Case: Like, Dislike, Share and Add to playlist button.
Primary Actor: User
Goal in Context: User role on Like, Dislike, Share and Add to playlist
button below the video.
Scenario:
1. Every video must have a Like, Dislike, Share and Add to playlist
button below the video.
2. The like button must increment by 1 every time a user clicks on it.
The counter must be displayed just below the Like button. The like button must
decrement by 1 if the same user clicks on it again.
3. The dislike button must increment by 1 every time a user clicks on
it. The counter must be displayed just below the dislike button and just on the
right side of the Like button. The dislike button must decrement by 1 if the
same user clicks on it again.
4. A share button must be present on the right side of dislike button.
When the user clicks on the share button, the system must display all social
media sharing platforms. The user must be able to share the video on any one of
the platforms.
5. Users connected with YouTube partnership program can upload videos of
any size and length.
6. The admin must have a YouTube channel created on their account in
order to upload videos.
7. Add to playlist button must be present on the right side of share
button just below the video. The user must be able to save any video to the
playlists he creates on his channel. The user must also have the option to
create a new playlist from the add to playlist button. The new playlist created
must be saved on his YouTube channel.
12. Comment section
Use Case: Comments on video
Primary Actor: User
Goal in Context: Leaving comments on video
Scenario:
1. Every video must have a comment box below the video.
2. Every user can comment on the video by going to the comment box and
clicking on the comment button.
3. Every comment must have like and reply button beneath it. Every user
can reply to each other’s comments and like them. The like counter will
increment or decrement by 1 based on the user response.
4. The video owner must have the option to remove any comment from their
videos. Admin must also have the option to hide any user from their channel so
the users comments won’t be visible to other users and admin.
5. The admin must also have the option to choose which words they don’t
want in the comments section. The system must be able to detect these words and
block the comments containing them.
13.
Notifications
Use Case: Notifications
Primary Actor: User and System
Goal in Context: Notifications in the system
Scenario:
1. The user must receive notifications for new videos from their
subscriptions, if someone likes their comment or replies to it, when someone
has made a comment to their YouTube Video.
2. User must have the option to disable or enable notifications from the
system.
3. The user must receive notifications through the email and their
account.
4. Their must be a notifications button in their account which allows to
see all their notifications.
5. If the user clicks on the notification, the system must open the
particular video.
14.
Home, Trending and Suggested Videos
Use Case: Home, Trending and Suggested videos
Primary Actor: User
Goal in Context: How should the Home, Trending and Suggested videos
tab should be used
Scenario:
1. The system must always open the home page first when the user opens
the system. The home page must contain videos based on the watch and search
history of the user. The algorithm of the system must be developed in such a
way that the home page must contain videos that the user is interested in based
on the web history of the User.
2. The user must have a trending button on the homepage. When the user
goes to the trending tab, most popular videos in the user’s country must be
displayed from top to bottom. The users must also have the option to change
country location. When the country is changed, trending tab must also change to
display videos trending in the changed country.
3. When the user is watching a particular video, suggested videos must
be displayed below the video user is watching. The Suggested videos must be
selected by the algorithm of the system which shows those videos that user is
interested in based on their web history.
15.
Views and Analytics
Use Case: Views and Analytics
Primary Actor: User and admin
Goal in Context: Views and analytics of the video
Scenario:
1. Every video must display the number of times the video has been
viewed below the video.
2. The user must watch the video for at least 3 sec to count it as a
view.
3. The admin or owner of a YouTube Channel must have access to channel
analytics which must contain information on views, subscribers, watch time,
copyright, geography and audience.
4. Admin must have the option to see the analytics of any of their
videos.
5. Admin must be able to download their own videos.
6. Admin must be able to see the analytics of their channel since the
origin of the channel or lifetime.
7. Admin must have the option to choose any time period for which they
want to see the analytics.
8. Analytics tab must also display the information of copyright. The
copyright button must display the number of copyrights on the admin’s channel.
9. The channel must be deleted if the 3 copyright’s are issued within 3
months. Each copyright must be removed after 3 months.
Non-Functional Requirements For YouTube:
1)
Availability:
a)
The service should be available all the time.
b)
The website and the application should be responsive
to the client all the time.
c)
Anything searched by the client must be found.
d)
Every video must have an unique identification through
it could be searched and easily found.
e)
Related searches must be shown.
2)
Adaptability:
a)
The finished application and the server must allow new
server to login.
b)
The software must be flexible.
c)
The software must be adaptive.
d)
The data can only be changed by the account holder.
3)
Aesthetics:
a)
The text must of a suitable color which could be
visible and easy to read.
b)
The application and the website must a light and a
dark theme. Which could be chosen by the user on their free will.
c)
It must have a presentable look.
4)
Compatibility:
a)
The website should be compatible with all the
browsers.
b)
Such as google, Mozilla, Opera and etc.
c)
The application must be able to run on both android
and apple products.
5)
Consistency:
a)
The website must be consistent.
b)
The website must perform accurately every time its
accessed.
c)
The application must be responsive all the time and
should never lag the device.
d)
The website must accommodate all the active users and
should be responsive to every user.
6) Understandability:
a) A novice user must be able to understand the format.
b) The user must able to adapt and change the UI to its personal requirements.
7)
Extensibility:
a)
The user must be able to upload .mp4 and .mp3 files
all the time
b)
No restriction on the size of the file.
8)
Frequency:
a)
The system will not crash no more than once per 100000
searches.
b)
The incorrect user input must be handled with a
message to inform about the error.
9)
Human factors:
a)
The UI must be user-friendly.
b)
The UI must be intuitive.
c)
All menus must have consistent format.
10)
Installability:
a)
The application should be easy to install.
b)
It should be available to install on both android and
apple products
c)
There should not be a further requirements to install
to run the application.
11)
Localizability:
a)
The application and the website must be available in
every language.
b)
All user interface components must be able to use
locale of the system and if not available it must use US English.
c)
The UI language should be changed according the users
desires.
d)
The search should be able to convert different
languages without using any external software.
12)
Maintainability:
a)
A software developer with a year of experience must be
able to correct any known defect.
b)
The maintenance group must be able to maintain the
website and the application.
13)
Predictability:
a)
The website and application should never crash.
b)
The system must produce predictable results.
14)
Recoverability:
a)
During a system restart the system should return to
its working state.
b)
There should be no lost data on system restart.
c)
If there is the data must be recoverable by the user.
15)
Reliability:
a)
The system will be available 100% of the time.
b)
The system should never crash.
c)
Back up servers must be available all the time.
16)
Response Time:
a)
Query response time must be fast.
b)
All queries must return a response in <2 seconds.
17)
Reusability:
a)
Only the account holder can change its upload.
b)
The security must be upgradeable.
18)
Security:
a)
No one other than the user should be allowed to change
their uploads.
b)
The accounts must have unique passwords and id for
every user.
c)
No other user should use the content of any other
user.
d)
Copy rights should be set.
19)
Quality:
a)
The software must ensure the quality of the video
which is being uploaded to be in 480p or above.
b)
The user must get the desired video quality.
YouTube is the second largest search engine on the internet. It is a great place to get your message out there and find a targeted audience. YouTube has over one billion active users every month, and more than 1 billion hours of video are watched each day. https://www.buyyoutubesubscribers.in/2021/05/26/how-much-youtube-pay-for-1-million-views/
ReplyDelete