2. Requirement Engineering Process
Requirement
Requirement Requirement
Feasibility Study Elicitation and
Specification Validation
Analysis
User and System
Feasibility Report System Model
Requirements
Software
Requirement
Document
13 January 2012 Made by Utpal Ray 2
3. Requirement Engineering Process
Feasibility Study
Does the system contribute to the overall objective of
the Organization ?
Can the system be implemented with current
technology, specified cost and schedule constraints ?
Can the system be integrated with the other systems
which are already in place ?
13 January 2012 Made by Utpal Ray 3
4. Requirement Engineering Process
Requirement Elicitation and Analysis
Interaction with the customer to understand the following
topics:-
Domains ( Where it will be used ? -
Supermarket/Bank/Hotel/Railway etc. )
Scenarios ( How the system will be used in a real – life scenarios?
Basically different Use-cases. )
Viewpoints ( Different views expressed by the different users of
the system. )
Ethnography ( Social and the organizational background of the
people who will be using the system. )
13 January 2012 Made by Utpal Ray 4
5. Requirement Engineering Process
System Model
Three types of system modeling exists.
Data Requirements leads to Data Modeling and we get
ERD ( Entity Relationship Diagram )
Functional Requirements lead to Functional Modeling
and we get DFD ( Data Flow Diagram ). It shows the
information flow among various entities and
functionalities.
Behavioral Requirements lead to Behavioral Modeling
and we get STD ( State Transition Diagram)
13 January 2012 Made by Utpal Ray 5
6. Requirement Engineering Process
User Requirements
It is written in natural language and may contain intuitive
diagram.
This is the document mainly for the customer and other non-
technical professional.
This document is prepared after the detail consultation with
the customer.
The kind of people who will read this document are - Client
Managers, System End-Users, Client Engineers, Contractor
Managers, System Architects.
13 January 2012 Made by Utpal Ray 6
7. Requirement Engineering Process
System Requirement
It’s a detail descriptions of the user requirement.
This is the document which will be used by the s/w developers
and all technical professionals.
This document should tell what the system should do but not
how it will be implemented.
It should contain Functional Requirements and Non-
Functional Requirements.
The kind of people who will read this document are - Client
Engineers, System End-Users, Software Developers, System
Architects.
13 January 2012 Made by Utpal Ray 7
8. Requirement Engineering Process
Functional Requirement
The functional requirements for a system describe the
functionality or services that system is expected to
provide.
This is as good as user requirements.
13 January 2012 Made by Utpal Ray 8
9. Requirement Engineering Process
Non-Functional Requirement
As the name suggests, these requirements are not
directly concerned with the specific functions delivered
by the system.
They may relate to emergent system properties such as
reliability, response time and storage occupancy.
Alternatively, they may define constraints on the system
such as the capabilities of I/O devices and the data
representations used in the system interfaces.
13 January 2012 Made by Utpal Ray 9
10. Requirement Engineering Process
Software Requirement Document Structure (as
per IEEE/ANSI 830-1993 standard)
1. Preface
2. Introduction
3. Glossary
4. User Requirements
5. System Architecture
6. System Requirements
7. System Models
8. System Evolution
9. Appendices
10. Index
13 January 2012 Made by Utpal Ray 10
11. Requirement Engineering Process
Requirement Validation
1. In this phase the all the requirement documents are
checked, reviewed and finalized. It is to be
remembered that one small mistake here may lead to
a very expensive rework in the future.
2. The people who should participate in this phase are –
Design Engineers, Developers, Test Engineers,
Product Managers, Client Managers/Engineers etc.
13 January 2012 Made by Utpal Ray 11
12. Requirement Engineering Process
The structure of system model or analysis model
Process Spec
(PSPEC)
Data Object
Description. ERD DFD
( DOB )
Data
Dictionary
STD
Control Spec
( CSPEC )
13 January 2012 Made by Utpal Ray 12
13. Requirement Engineering Process
DATA MODELING
What are the Primary Data Objects to be processed by
the system ?
What attributes describes the object ?
What are the relationships between each object ?
A Data object is a representation of almost any
composite information that must be understood by
software.
‘Width’ is not a data object ( it’s a single value ) but
‘Dimension’ is; because it consists of height, width and
depth.
13 January 2012 Made by Utpal Ray 13
14. Requirement Engineering Process
Data Modeling ( Contd. )
A data object can be an external entity ( anything that
produces and consumes information ), a thing ( a report
or a display ), an occurrence ( a telephone call ), an event
( an alarm ), a role ( a salesperson ), an organizational
unit ( accounting dept. ), a place ( a warehouse ), or a
structure ( a file ).
13 January 2012 Made by Utpal Ray 14
15. Requirement Engineering Process
ERD and DOB
Manufacturer BUILDS CAR
Data Object Description (DOB) of car
ID# Model Body Engine Trans. ………
13 January 2012 Made by Utpal Ray 15
17. Requirement Engineering Process
Functional Modeling
How data are transformed within system ?
How information flows through the system ?
What are the inputs and what are the outputs?
What are the different functional sub-system in the
system ?
We get DFD and PSPEC. PSPEC lists all the functions
shown in DFD.
DFDs can have various levels. A Level 0 DFD will have
least detail about the system. As the level no. increases
the DFDs will have more finer details.
13 January 2012 Made by Utpal Ray 17
18. Requirement Engineering Process
Example of a Level 0 DFD
(Fundamental System Model or Context Model)
Time
Continuous
External Time Continuous Output External
Entity Input Data Data Entity
SUPER
TRANSFORM
Input Data Output Data
Data Data
Store Store
Input Output
External External
Entity Entity
DATA STORE
13 January 2012 Made by Utpal Ray 18
19. Requirement Engineering Process
How to list PSPEC ?
Pspec : Super Transform
Input Description : Ordinary Input and Time
Continuous Input
Output Description : Ordinary Output and Time
Continuous Output
Transform Description : It takes the input,
shape it and give out
more regular output.
13 January 2012 Made by Utpal Ray 19
20. Requirement Engineering Process
Level 1 DFD ( The Super Transform has been broken
into five different transform )
Ext Ext
Ent Ent
Trans Trans
#1 #3
Trans
Intermediated Data #2 Intermediated Data
Trans Trans
#4 #5
Ext Ext
Ent Ent
Data
Store
13 January 2012 Made by Utpal Ray 20
21. Requirement Engineering Process
PSPEC LISTING……..
PSPEC : Transform 1
……… other details of tranform 1……….
PSPEC : Transform 2
……… other details of tranform 2 ………..
PSPEC : Transform 3
……… other details of tranform 3 ………..
PSPEC : Transform 4
………… other details of tranform 4 ……..
PSPEC : Transform 5
………… other details of tranform 5 ……..
13 January 2012 Made by Utpal Ray 21
22. Requirement Engineering Process
BEHAVIOURAL MODELING
Impacts of Events are modeled here.
The STD ( State Transition Diagram ) represents the
behavior of a system by depicting it’s state and the
events that cause the system to change state.
STD also depicts what actions are taken as a
consequence of a particular event.
CSPEC is used to indicate how the software behaves
when an event is sensed.
13 January 2012 Made by Utpal Ray 22
23. Requirement Engineering Process
No Action
STD EXAMPLE Stay In M/C OFF State
MACHINE
Power Off
OFF
Invoke Shut-Down Seq Power Off
Go To M/C OFF State
Power On
Invoke Power-on Seq
MACHINE MACHINE
ON Reached Unknown State FAULT
Display Fault Message
No Action
Read Command
Stay In M/C FAULT
Process Command
13 January 2012 Made by Utpal Ray 23
24. Requirement Engineering Process
CSPEC or Process Activation Table (PAT)
Occurrence Activated
Of Events Process
Power-ON Power-On Seq
Power-Off Shut-Down Seq
Read-Cmd Process-Cmd
Reached Go to M/C Off
Unknown State State
13 January 2012 Made by Utpal Ray 24
25. Requirement Engineering Process
Data Dictionary
It is the organized listing of all the data elements
produced and consumed by the system. All the data
elements should be listed with precise and rigorous
definition. The data elements encompasses the
following entities :-
1. Data Item
2. Control Item
3. Data Store
4. External Entity
5. Intermediate Data Item and Control Item
13 January 2012 Made by Utpal Ray 25
26. Requirement Engineering Process
Data Dictionary Example
Name : Data Store
Alias : EEPROM ( Electrically Erasable Programmable
Read-Only Memory
Where Used/How Used :Transform #3 ( Input )
Transform #3 (Output)
Description:All configuration data are stored here.
Please see Table 1to read the details about the
configuration data.
Supplementary Info: The size of the data stored in the
Data Store should not be more than 1 MByte.
13 January 2012 Made by Utpal Ray 26
27. Requirement Engineering Process
Home Task
1. Do the system modeling for a “Course Registration
System”.
2. Do the system modeling for the following problem:-
A temperature monitoring system which senses
temperature continuously and displays it in a LCD. It
also takes input from a switch which tells him
whether to display the temp in C or F. It also
activates an alarm when the temp goes out of range.
13 January 2012 Made by Utpal Ray 27