Você está na página 1de 28

lOMoAR cPSD| 4060881

Glee - software requirement specification srs

Software Engineering (Lovely Professional University)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Sahil (sahilpatial2001@gmail.com)
lOMoAR cPSD| 4060881

SOFTWARE ENGINEERING CASE STUDY


Synopsis
On

Submitted by: Submitted to:


P.D.Gethmi Lakshani Mr. Dalwinder Singh
Reg no: 11510894 Mr. Sandeep Singh
Roll No: B54 Mr. Mohit Arora
Section: K1513 On: 04/04/2017

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Content

1. Introduction
1.1. Purpose
1.2.Vision statement
1.3.Scope
1.4.Overview
1.5.Definitions, Acronyms and Abbreviations
2. Overall Description
2.1 Product Perspective
2.2 Product functions
2.3 User Classes and Characteristics
2.4 Operating Environment
2.5 Design and Implementation Constraints
2.6 User Documentation
2.7 Assumptions and Dependencies
3. External Interface Requirements

3.1 User Interfaces


3.2 Hardware Interfaces
3.3 Software Interfaces
3.4 Communications Interfaces
4. Specific Requirements
4.1. Functional Requirement
4.2.Non-functional Requirement
5. Design
5.1 Data Flow Diagram
5.2 Context Diagram
5.3 Entity Relationship Diagram
6. Testing
6.1 Types
6.2 Test cases
7. Conclusion and Future work

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

1. Introduction
1.1 Purpose
The purpose of this document is to give a detailed description of the requirements for “Music and
Movie Recommender”. It will illustrate the purpose and complete declaration for the
development of system. It will also explain system constraints, interface and interactions with
other external applications. This document is primarily intended to be proposed to the customer
company for their approval and a reference for development of the system.

1.2 Vision statement


The aim of this product is to create a website that has all the shows and movies. So that
people can watch them anywhere anytime.

1.3 Scope
Scope of this product include the development of a good database and an attractive interface so
that people can easily use it. The user has to subscribe a plan and after that user can watch
according to the plan he/she subscribed. The user also has the facility to see the list of songs,
Movies, Tv Serials which they had watched previously recommended songs, Movies and Tv
Serials. By this user will find the songs which they like without wasting their time, It’s beneficial
for both company and users.

1.4 Overview
In this document all requirements for making Netflix website are mentioned along with these all
definitions related to Netflix website are written in section 1. All functional and non-functional
requirements for Netflix are specified in section 2.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

1.5 Definitions, Acronyms and Abbreviations

 Mylist- Mylist is a location or folder where user can save their videos things for
watching later. When user wants to watch his or her favorite shows.

 Account- Account term basically refers to an identity on Netflix website. A user


can easily make an account on Netflix website by just giving some credentials like E-mail
and password. User can store list of videos in mylist for watching afterwards.

 Categories- It is the classification of all of the types of shows which are available
on website for watching. Same type of videos putted in same category.

 Offline Mode- Offline mode is a mode where user can save his or her favorite
videos for watching offline without opening website.

 Netflix Application- Netflix Application is app for using in mobile phones for
watching videos and movies rather than opening websites.

 Download- It usually refers to transfer data from a larger "host" system


(especially a server or mainframe) to a smaller "client" system, especially a
microcomputer or mobile device.

 Rating- A classification or ranking of someone or something based on a


comparative assessment of their quality, standard, or performance.

 Subscribe- An arrangement to receive something, typically a publication,


regularly by paying in advance.

 Registration- The action of enrolling for something or of enrolling or employing


someone.

 User- A user is a person who uses a computer or network service. Users generally
use a system or a software product without the technical expertise required to fully
understand it. Power users use advanced features of programs, though they are not
necessarily capable of computer programming and system administration. A user often
has a user account and is identified to the system by a username. Other terms for
username include login name, screen name, nickname and handle, which is derived from
the identical Citizen's Band radio term. Some software products provide services to
other systems and have no direct end users.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

 Job- A job is a list that a person might use for general tasks, or functions,
and responsibilities of a position. It may often include to whom the position reports,
specifications such as the qualifications or skills needed by the person in the job, and
a salary range. Job descriptions are usually narrative, but some may instead comprise a
simple list of competencies; for instance, strategic human resource
planning methodologies may be used to develop a competency architecture for an
organization, from which job descriptions are built as a shortlist of competencies.

 Password- A password is a word or string of characters used for


user authentication to prove identity or access approval to gain access to a resource
(example: an access code is a type of password), which is to be kept secret from those not
allowed access. The use of passwords is known to be ancient. Sentries would challenge
those wishing to enter an area or approaching it to supply a password or watchword, and
would only allow a person or group to pass if they knew the password. In modern
times, user names and passwords are commonly used by people during a log in process
that controls access to protected computer operating systems, mobile phones, cable TV
decoders, automated teller machines (ATMs), etc. A typical computer user has passwords
for many purposes: logging into accounts, retrieving e-mail, accessing applications,
databases, networks, web sites, and even reading the morning newspaper online.

 Salary- A fixed regular payment, typically paid on a monthly basis but often
expressed as an annual sum, made by an employer to an employee, especially a
professional or white-collar worker: Compare with wage. Salary is typically determined
by comparing market pay rates for people performing similar work in similar industries
in the same region. Salary is also determined by leveling the pay rates and salary ranges
established by an individual employer. Salary is also affected by the number of people
available to perform the specific job in the employer's employment locale.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

2. Overall Description

2.1 Product Perspective


The Netflix Television network doesn’t work independently.The Netflix website is
operated by Computer/ Software owned by the administrator of Netflix. Website can be
accessed by any of system but only in user mode.
This product is first design to mail the DVDs of movies and was first introduced in 1997
in CALIFORNIA. Now it was modified in such a manner that after taking a subscription
we can watch any TV serial or any movie. The main functionality of this Software is
providing videos on demand anywhere anytime.

2.2 Product functions


The software should support a computerized network over internet. Netflix provides a
variety of categories for watching. When user search(s) and then select (s) any Category
all the videos related to that category has shown to user. When user select any of videos,
the total length of product video with terms and conditions shown to user. Here user have
options that either he or she can download (s), watch online, save offline or he can
directly add that video into Mylist for watching later. When user do click on the video he
or she wants to see , the video will open and buffering starts and user can watch it at the
same.

action Watch
now

Save
TV comedy offline
shows
Search Confirm
user categories choice

fiction
movie download

horror
My List

Watch

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

2.3 User Classes and Characteristics

 CUSTOMER:

The remote customer most frequently uses this system to watch the shows, movies and for sign
interpretation purpose. The user can also use this system to subscribe a pack.
Website should be user friendly and easy to use. All the categories must be well
organized so that our user must not face any type of difficulties at any time.

 DBA:

The DBA is expected to have a good experience i.e. experience of at least 2-3 years as a DBA.
He/she has the privilege to update the information in the database. The DBA does not directly
interact with the system.
For administrator purpose it should be well organized website so that admin can manage the
website properly. All the data which admin want to organize can be done easily to him. The
maintainer should be the only person that is allowed to connect the Netflix website or application
to the network

 DATA ENTRY LEVEL PERSONNEL:

They must have at least a high school diploma or equivalent certificate. They cannot directly
change the data base entity and cannot directly interact with the system or Netflix.

2.4 Operating Environment

User View

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881
lOMoAR cPSD| 4060881

Data
Manager
Employee
Data Base

2.5 Design and Implementation Constraints

 How to access huge data with low speed internet.

 Managing Data Base.

 Operators filtering, selecting, transforming, combining and composing.

 Storage of huge Data.

 Matching of request from sever side and client side.

 Java Futures are straight-forward to use for a single level of asynchronous


execution but they start to add non-trivial complexity when they're nested.

 Crucial to adopt Four-tier application architecture.

2.6 User Documentation


User can use the help option for any help regarding any query about the website. He/she
can also ask contact us and can also go through the frequently asked questions available
on the website at the bottom of the front page.

2.7 Assumptions and Dependencies


It is assumed that the data base design for this web will work appropriately and the speed
of the internet used by the customer is efficient to load the data from the data base /
server to the user system or browser. The browser is also able to handle that much heavy
data.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

3. External Interface Requirements

3.1 User Interfaces


The Netflix user interface is specially design for taking their user in mind. They make
sure that the user/customer spend most of the time to use the system not to learn how to
use this system. For making it easy they use two buttons on the initial page of Netflix and
those are Sign in and Join Free for Month. So, if a customer is already taken a plan then
he/she can Sign in and enjoy the service, and if they don’t have any plan then they can
click on Join Free for Month and enjoy the service free for a month.

3.2 Hardware Interfaces


The Netflix use a well-developed data base for storing huge data amount of data and use
good algorithms to fetch the data from the data base to the user web browser of the user
in the different of the world.

3.3 Software Interfaces


Netflix runs on any operating system having web browser and also have good internet
speed. The Netflix can run on windows, android, Linux, Mac etc. If the user has touch,
then she/he can use the touch for clicking on the buttons and they can also click them
with the help of mouse/cursor. The web component communicates with the database in
order to get the user rating logs of the larger system. The communication between the
database and the web component consists of operation concerning both reading and
modifying the data, while the communication between Music Recommender and the
website consists of sending a JSON object from the recommender to the website to be
displayed on the webpage.

3.4 Communications Interfaces


User can open their Netflix account on their computers, mobiles if they have the good
internet speed they can watch the shows, user can change their plans easily. They can
cancel anytime from anywhere in world, a user can watch anywhere. Whenever the user
opens the web for watching he/she has to login their account if they have already make it;
else they have to subscribe a plan or they have to join free from a month to watch.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

4. Specific requirements
4.1 Functional Requirements

Functional Requirements
Functional requirements are further divided into two parts-
1. for Customer
2. for Administrator

4.1.1 Requirements for Customer


General Requirements
Functional Requirement 1
 Description-
After entering URL user will directed to Homepage.
 Input-
URL using keyboard.
 Output-
Homepage Shown to user.

Functional Requirement 2
 Description-
If server is busy or Maintenance period.
 Input-
URL using keyboard.
 Processing-
Check Network traffic on web.
 Output-
Display an error message.

Functional Requirement 3
 Description-
Ask user to sign-up in his/her account.
 Input-
Name, E-mail Id, Contact number and password.
 Processing-
Store all the information in database and send a confirmation code on Contact
number.
 Output-

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Display a message that user is register successfully and redirect user to


homepage.

Functional Requirement 4
 Description-
Ask user to login in his/her account.
 Input-
E-mail Id and password.
 Processing-
Store all the information in database and send a confirmation code on Contact
number.
 Output-
Display a message that signed in successfully and redirect user to homepage.

Functional Requirement 5
 Description-
Search option for categories.
 Input-
Video name or type of video.
 Processing-
System check in database and match query with data.
 Output-
Display all related video data to user.

Functional Requirement 6
 Description-
Display Video.
 Input-
Click on Subcategory and then on video.
 Processing-
System will check in database for Video related to that category.
 Output-
All the video related to that category displayed to user.

Functional Requirement 7
 Description-
Download
 Input-
Click on Download button.
 Processing-
System allows the user to download the video.
 Output-
Display users Downloaded Video.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Functional Requirement 8
 Description-
Add to Mylist.
 Input-
Click on add to Mylist.
 Processing-
System will add the video to your Mylist.
 Output-
Display Mylist Page.

Functional Requirement 10
 Description-
Subscription page.
 Input-
Bank name, card number, one time password.
 Process-
System saves your information from database.
 Output-
Display that user subscribed with the package.

Functional Requirement 11
 Description-
Video details.
 Input-
Video name.
 Processing-
Check the database about the information of video.
 Output-
Display Video details regarding video length and size.

Functional Requirement 12
 Description-
Job in Netflix.
 Input-
Job
 Process-
System checks o your query from database.
 Output-
Display the different type of jobs to user.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Functional Requirement 13
 Description-
Feedback.
 Input-
Name, Address, Contact number and feedback.
 Process-
Save feedback into database.
 Output-
Display Feedback submitted successfully message.

Functional Requirement 14
 Description-
Video quality.
 Input-
Enter the quality you want.
 Process-
System checks your query from database.
 Output-
Display the video in your choose quality from 320p, 480p, 720p, 1080p.

Functional Requirement 15
 Description-
Save offline in mobile app.
 Input-
Click on save offline.
 Process-
System checks your query from database.
 Output-
Display video saved offline.

Functional Requirement 16
 Description-
Select you favorite video.
 Input-
Click on favorite.
 Process-
System checks your query from database.
 Output-
Display favorite video.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Functional Requirement 17
 Description-
Select latest movie and television shows.
 Input-
Click on latest.
 Process-
System checks your query from database.
 Output-
Display latest movie and television shows.

Functional Requirement 18
 Description-
Select trailer of upcoming shows and movies.
 Input-
Click on upcoming.
 Process-
System checks your query from database.
 Output-
Display upcoming trailers.

Functional Requirement 19
 Description-
Select the channel.
 Input-
Click on channel.
 Process-
System checks your query from database.
 Output-
Display your selected channel.

Functional Requirement 20
 Description-
Provide ratings.
 Input-
Click on ratings.
 Process-
System saves your query from database.
 Output-
Display the rating you provided.

Functional Requirement 20

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

 Description-
Provide ratings.
 Input-
Click on ratings.
 Process-
System saves your query from database.
 Output-
Display the rating you provided.

Functional Requirement 21
 Description-
To get help.
 Input-
Click on help.
 Process-
System checks your query from database.
 Output-
Provide you help regarding your query.

Functional Requirement 23
 Description-
If user forgot password.
 Input-
Forgot password.
 Process-
System checks your query from database.
 Output-
Display and make you reset the password.

Functional Requirement 24
 Description-
Connect to Facebook, Twitter, and Instagram etc.
 Input-
Click on connect.
 Process-
System saves your query to database.
 Output-
Provide you the connection.

4.1.2 Requirements for Administrator


Functional Requirement 1
 Description-

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Adding video or upload.


 Inputs-
Upload.
 Process-
Save details in database.
 Output-
Display uploaded.

Functional Requirement 2
 Description-
Removing Video.
 Input-
Video name.
 Process-
Remove video details from database.
 Output-
Display video removed successfully.

Functional Requirement 3
 Description-
Manage queries regarding videos.
 Input-
Open user’s queries
 Process-
Deals with user’s queries.
 Output-
Given reply to user regarding query.

Functional Requirement 4
 Description-
Contact Details.
 Input-
Number, Address, Pin code.
 Process-
Save all details in database.
 Output-
Display Button “Contact Us”.

Functional Requirement 5
 Description-
Complaints regarding the content.
 Input-
Choose any complaints.
 Process-

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

Reply Solution of that problem or forward it to related department.


 Output-
Give solution to user.

Functional Requirement 6
 Description-
Cancel the subscription.
 Input-
Cancel.
 Process-
Canceling the package and deleting the package.
 Output-
Package cancelled successfully.

Functional Requirement 7
 Description-
Cancel the subscription.
 Input-
Cancel.
 Process-
Reply Solution of that problem or forward it to related department.
 Output-
Give solution to user.

Functional Requirement 8
 Description-
Arrange the video in their category.
 Input-
Arrange
 Process-
System Arrange videos in category in database.
 Output-
Package cancelled successfully.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

4.2 Non-functional Requirements

4.2.1 Performance Requirements


Performance Requirement 1
 Description
If user is not giving response to subscription package for the amount of
time it was issued to him or her then subscription will be ended.
Performance Requirement 2
 Description
If video is not there, then display video not found.
Performance Requirement 3
 Description
The new videos will be uploaded each day.
Performance Requirement 4
 Description
The subscription package will be of 1 month only.

4.2.2 Attributes

4.2.2.1 Availability
The Netflix is available 24 hours a day.

4.2.2.2 Security Requirements


 Users’ accessibility is censured in all the ways.
 Users are advised to change their Password regular basis.
 Users are advised not to tell their user id and Password to anyone.
 The maximum number of attempts to enter Password will be three.
4.2.2.3 Software Quality Attributes
 Security.
 Performance.

4.2.2.4 Maintainability
Only maintainers are allowed to add new videos to website.

4.2.3 Other requirements

4.2.3.1 Database
Website must able to store every kind of data means every format of data.
Website should be frequently connectable to database or it must be database sensitive.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

5. Design
Design phase deal with the transforming the requirements, as described in the SRS
Document, into a form that is implemented using a programming language. The various
designs of this system are shown as following:

5.1 Data Flow Diagram:


Data Flow diagram is a graphical representation of flow of data throughout the
information system. Data flow diagrams illustrate how data is processed by a system in
terms of inputs and outputs.

Name Notation Role

Process Transforms incoming data


flow to output data flow

Data Store Repositories of data in the


system.

Dataflow Dataflow are pipelines


through which packets of
information flow.

External Entity External entities are objects


outside the system, with
which the system
communicates

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

5.2 Context Diagram

5.2.1 Level 0: -

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

5.2.2 Level 1: -

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

5.2.3 Level 2: -

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

5.2 Entity Relationship Diagram

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

6. Testing
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. Using the test data subsequent test run
are carried out.

6.1 Types
6.1.1 Unit testing
It is a method by which individual units of source code, sets of one or more program
modules collectively with associated control data, usage procedures, and operating
procedures, are tested to determine whether they are fit for use. Intuitively, one can view
a unit as the smallest testable part of an application. In procedural programming a unit
can be an entire module but is more commonly an individual function. In object-oriented
programming a unit is an entire interface but could be an individual method. Unit test is
created by programmers or by white box testers during the development process.

Each test case is independent from the others: substitutes like method stubs, mock objects
can be used to assist testing a module in isolation. Unit tests are typically written and run
by software developers to ensure that code meets its design and behaves as intended. Its
implementation can vary from being very manual to being formalized as part of build
automation.

6.1.2 Integration Testing


It is the phase in software testing in which individual software modules are combined and tested
as a group. It occurs after unit testing and before validation testing. Integration testing takes as its
input modules that have been unit tested, groups them in larger aggregates, applies tests defined
in an integration test plan to those aggregates, and delivers as its output the integrated system
ready for system testing.

6.1.3 Program test


After the programs, have been coded, compiled and carried out to working conditions,
they must be independently tested with the prepared test data. Any unwanted happening
should be noted and debugged.

6.1.4 System Test


When the program test for each of the programs of the system is written and errors are
removed then system test is complete. At this stage the test is done on actual data. The
complete system is put into execution on the actual data. At every stage of the execution,
the output of the system is studied. During the outcome analysis, it may be found that the
outputs are not matching the estimated output of the system. In such situation, the bugs or
errors in the particular programs are recognized and are fixed and further verified for the

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

expected output. When it is confirmed that the system is running error-free, the users are
called with their own real data so that the system could be presented running as per their
requirements.

6.2 Test cases

6.2.1 Signup/Create account


Test to pass: - Name should contain only alphabet, email id should be valid, mobile number only
contains number and must not be greater than 10 and password must contain alphabet, number
and a special character and must also match with the confirm password.
Test to fail: - if name will contain other than alphabet, email id is not valid, mobile number will
contain anything other than number, password does not contain any alphabet, number, special
character.

6.2.2 Login
Test to pass: - user should enter a registered email id and password should match with the saved
password.
Test to Fail: - if user will enter a not registered email id or password will be incorrect.

6.2.3 Take a plan/Make payment


Test to pass: - User should select a valid plan and the payment details entered by the user are as
card number should be equal to 16 digit and only contain numbers Cvv must be equal to 3 digit
and only contain numbers and password must be equal to 4 digits and only contain numbers.
Test to fail: - If card number is less than 16 digits and not be a number, cvv will less/greater than
3 digits and not be a number and password will not be equal to 4 digits and not contain numbers.

6.2.4 History
Test to pass: - The history shown to a particular user is make by only that user.
Test to fail: - If history of some other user is show to particular user.

6.2.5 Recommendation
Test to pass: - The movies, songs etc. shown to user are watched by that particular user.

Test to fail: - The movies, songs etc. shown to user are not watched by the user.

Downloaded by Sahil (sahilpatial2001@gmail.com)


lOMoAR cPSD| 4060881

6.2.6 Cancel Anywhere/Anytime


Test to pass: - User cancel only that plan for which he/she has registered.
Test to fail: - User will able to cancel a plan for which he or she has not registered.

7. Conclusion and Future work

After processing through all phases of the system development life cycle, the portal is
developed. In future, it will be hosted on the internet server which will be accessed by all
people in the world and can view the site and watch as much as movies and videos as
available on selected plan. The Administrator who will be assigned for editing or
managing or controlling will be given the secure login information and will change or
modify the website as per the requirements.

Also in future, we can add more features or we can make application which support ipads, iPhone
and other electronic devices.

Downloaded by Sahil (sahilpatial2001@gmail.com)

Você também pode gostar