Sei sulla pagina 1di 5

Software Requirement Engineering

SEN-211
Assignment #01

Name: Huzaifa Arshad

Enrollment No: 01-131182-015

Class: BSE-3A

Course Teacher: Ma’am Sadia Ashraf

DEPARTMENT OF SOFTWARE ENGINEERING


BAHRIA UNIVERSITY
ISLAMABAD CAMPUS

Page | 1
Functional and Non-Functional Requirements:
Functional Requirement Definition:
Any requirement which specifies what the system should do.
Non-Functional Requirement Definition:
Any requirement which specifies how the system performs a certain
function.

Considering the above definitions for functional and non-functional requirements, I


found out the following functional and non-functional requirements in the given Music
Portal Scenario.

1. A distinction is made between users and registered users. Only registered users can buy
or download albums. A user becomes a registered user by logging in. Unregistered users
can register with a username that has not been taken by another user and a freely chosen
password.
Functional:
“A distinction is made between users and registered users. Only registered users can buy
or download albums.”
(This requirement depicts WHAT the system should do)
Non-Functional:
“A user becomes a registered user by logging in. Unregistered users can register with
username that has not been taken by another user and a freely chosen password.”
(This requirement depicts HOW the system can do)

2. Every user can search for albums by their name. Other search methods are not offered.
The search result is presented as a list of matching albums that provides links to a detail
page for each album. The album detail pages show the title of the album, the name of
the artist, the list of songs and the album’s price. If the user has already bought the album
then a download link is shown. Otherwise, there will be a link for buying the album.
Functional:
“Every user can search for albums by their name. Other search methods are not offered.
The search result is presented as a list of matching albums that provides links to a detail page
for each album.”
“If the user has already bought the album then a download link is shown. Otherwise, there
will be a link for buying the album.”
(This requirement depicts WHAT the system should do)
Non-Functional:
“The album detail pages show the title of the album, the name of the artist, the list of
songs and the album’s price.”
(This is HOW the system provides album details)

Page | 2
3. Only full albums can be downloaded.
Functional:
“Only full albums can be downloaded.”
(This is WHAT the system should have to do)

4. In this simplified example, each album has only one artist. This restriction is done to
reduce the complexity of the navigation and presentation models. It would be easy
though to add support for multiple artists by adding an index in the navigation model and
an anchored collection in the presentation model, respectively.
Functional:
“Each album has only one artist. This restriction is done to reduce the complexity of the
navigation and presentation models.”
(This is WHAT the system should do)
Non-Functional:
“It would be easy though to add support for multiple artists by adding an index in the
navigation model and an anchored collection in the presentation model.”
(This is HOW we reduce the complexity of the navigation)

5. Each registered user has a credit account that is used to buy albums. The credit account
can be recharged by credit card payment. To do this the user has to enter her credit card
data and the amount to recharge with. This data is validated and the user has to confirm
the transaction before the credit card is charged and the user’s credit account is
recharged. The details of credit card handling are not modelled in this example.
Functional:
“Each registered user has a credit account that is used to buy albums. The credit account
can be recharged by credit card payment.”
“This data is validated and the user has to confirm the transaction before the credit card
is charged.”
(This depicts WHAT the system should do)
Non-Functional:
“The user has to enter his/her credit card data and the amount to recharge with.”
“And the data validation is done by security checks.”
(This shows HOW we can safely implement the transaction module)

6. If a user is logged in, he/she can navigate to an account page that shows the user’s credits
and the list of albums she has bought in the past.
Functional:
“If a user is logged in, he/she can navigate to an account page that shows the user’s credits
and the list of albums she has bought.”
(This show WHAT the system should do)
Non-Functional:
“There should be a proper Account Info page that shows all the details to the user.”
(This is HOW we shows user his/her information related to portal)

Page | 3
7. The links for logging in or out, for registering and to the user’s account page are always
shown. This also holds for the album search box.
Functional:
“The links for logging in or out, for registering and to the user’s account page are always
shown. This also holds for the album search box.”
(This is WHAT the system provides to facilitate the user)

System Requirements
Definition:
“System requirements describe the requirements for a product that is composed
of multiple components or subsystems.”
Keep in mind the above definition, I found out the following System Requirements.
1. Accounts Information and transaction procedure:
There should be a proper Accounts Information page through which user can see
what type and how many albums he/she has bought in the past. It also provides
the information about his current account balance, previous transactions and
other details.
And there should be a Transaction page that provides the method to recharge your
account for many other purchases.
The proper Online Banking System linked with the portal to do transactions.
2. Login, Register page and proper links:
First of all, there is a proper well formatted Home Page that contains proper links
to the other pages like login page and well defined search bar.
There should be a Login page through which registered user can logged in and do
whatever he wanted to do accordingly.
There is a Register Page provided through which new user can be register
himself/herself. And it verify the email or phone number through which user want
to register.
3. Album Navigator, Album Details and Downloads:
There should be a search bar or the proper Navigation System for the album so
that the user can search for the desired one.
Also, there should be Album details page that contains all the necessary
information about the navigated album such as title of album, list of songs, artist
name, and the album’s price.
If the user has already bought the album, there should be a Download Link shown
on the details page so that user can download it. Otherwise, the purchase link
should be shown.
And there is necessary to have a proper check that checks each album has only
one artist to avoid further searching/navigating complexities.

Page | 4
Requirement analysis and Conclusions:
The following above mentioned are the Functional, Non-Functional and System
Requirements that provides the detailed analysis for the given simple web based Music System.

Page | 5

Potrebbero piacerti anche