Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Requirements analysis
Requirements specification
SRS document
Decision table
Decision tree
Introduction
Many projects fail –
◦ Functional Requirements
◦ Non – functional requirements
◦ Goals of Implementation
SRS – Functional
Requirements
It is desirable to consider every
system:
◦ Performing a set of functions {fi}.
◦ Each function fi considered as:
Transforming a set of input data to
corresponding output data.
◦ Input:
an author’s name:
◦ Output:
details of the author’s books and
the locations of these books in the
library.
Author Name Book Details
F1
Contd..
Functional requirements describe:
◦ A set of high-level requirements
◦ Each high-level requirement:
takes in some data from the user
outputs some data to the user
◦ Each high-level requirement:
might consist of a set of identifiable
functions
For each high-level requirement:
◦ Every function is described in terms
of:
Input data set
Output data set
Contd..
A high-level function is one:
◦ Using which the user can get some
useful piece of work done.
◦ Reliability issues
◦ Performance issues
◦ Human-computer interface issues,
◦ Interface with other external
systems,
◦ Security, maintainability, etc.
SRS - Goals of
Implementation
Goals describe things that are
desirable of the system:
◦ But, would not be checked for
compliance or is one of the
acceptance criteria.
◦ For example,
Reusability issues
Functionalities to be developed
in future
Example: Functional
Requirement
Requirement 1
◦ In a Library Management System, one
of the functionality of the application
is to allow the users to search for a
book specific to a particular author,
or the book name. Depending upon
the search, the system should output
the title, author name, publisher
name, year of publication and the
catalog number of all the books
which matches the search criteria.
The system should also display the
location of the book in the library
Requirement 1 in SRS
R.1.1: Query Book
◦ Input: “search” option,
◦ Output: user prompted to enter the key
words.
R1.2: Display book details
◦ Input: key words
◦ Output: Details of all books whose title
or author name matches any of the key
words.
Details include: Title, Author Name,
Publisher name, Year of Publication,
Catalog Number, Location in the Library.
◦ Description: Search the book list for the
keywords entered by the user
Example: Functional
Requirement
Requirement 2
◦ A valid member of the Library
Management System can also
renew the books borrowed by him.
In order to do this the user needs
to select the ‘renew’ option. On
successful verification of the
membership number and
password, he can see the list of all
the books borrowed under him. By
selecting any number of renew
boxes the user can renew one or
Requirement 2 in SRS
R2.1: Renew Book
◦ Input: “renew” option selected,
◦ Output: user prompted to enter his
membership number and password.
is e n te re d ,
d fo r th e m e m b e r is cre a te d
e a n n u a lm e m b e rsh ip ch a rg e p lu s th e se cu rity d e p o sit p a ya b le .
Representation using a decision
tree
Get
Details
Create
Records
Actions to be performed
Print
em ber Receipt
w M
Ne Get
Details
al Update
Renew Records
Print
U se r Canc
Receipt
In p u t e l
Get
Details
Inv Print
Opt ali Cheque
ion d Delete
Record
Print Error
Message
conditions
Decision Tables
Decision tables specify:
◦ Which variables are to be tested
◦ What actions are to be taken if the
conditions are true,
◦ The order in which decision making is
performed.
A decision table shows in a
tabular form:
◦ Processing logic and corresponding
actions
Contd..
Upper rows of the table specify:
◦ The variables or conditions to be
evaluated
Lower rows specify:
◦ The actions to be taken when the
corresponding conditions are
satisfied.
In technical terminology,
◦ a column of the table is called a
rule:
◦ A rule implies-
if a condition is true, then execute
Example Decision Table
Conditions
Valid selection No Yes Yes Yes
Renewal - No Yes No
Cancellation - No No Yes
Actions
Display Error Message X
Ask Members Details X
Create Membership Record X
Generate Receipt X X
Ask Membership details X X
Update Membership Record X
Print Cheque X
Delete Record X