Chapter 2 - Requirements Engineering Process
Chapter 2 - Requirements Engineering Process
Chapter 2 - Requirements Engineering Process
Once someone has worked out how to solve a problem, they can document the way in which that solution
to be reused.
Examples of process descriptions
Software engineering development process (SDLC)
Requirements engineering process
Design process
Quality assurance process
Change management process
Requirements engineering
are many possible outputs which may result to satisfy this inputs.
Ends
be built.
6
Two Main Tasks of RE
There are two main tasks which needs to be performed in the
Product description
system to be built.
Also known as functional description, functional requirements, or
7 specifications
Problem Analysis
Problem analysis is the first and foremost task of requirements
engineering process. It includes:
Brainstorming, interviewing, eliciting requirements
Expansion of information
8
Product Description
Product description is another task of requirements engineering
process. In this task we:
software product.
Organize ideas, resolve conflicting views, and eliminate
9
What Really Happens
10
Requirements Engineering Processes
Processes are used to discover, analyse and validate system requirements
The process of establishing what services are required and the constraints on the
system’s operation and development.
Feasibility Requirements
study elicitation and
analysis
Requir ements
specification
Feasibility Requirements
report validation
System
models
User and system
requirements
Requirements
document
Feasibility studies
For each new system RE starts with this study
Feasibility study leads to a decision:
go ahead
do not go ahead
think again
If the system can be engineered using current technology and within budget
If the system can be integrated with other systems that are used
Requirements Elicitation
13
Requirement Analysis
diagrams.
15
Requirements Document
of the document.
16
Requirements Validation
It involves reviewing the requirements model for consistency and
completeness
This process is intended to detect problems in the requirements document,
of the system.
Concerned with demonstrating that the requirements define the system that
17
Requirements Management
18
RE Process - Inputs and Outputs
…
RE Process - Inputs and Outputs
…
For Library information System(LIS) the following examples are
requirements for inputs.
Existing System information
The LIS shall poll the bar code reader system and process all of the
The system should provide a help facility which will explain the facilities
processes.
Application domain – different applications need different RE process
Rather organizations should start with generic RE process and instantiate this into
and formulation
Safety validation – analysis of system requirements against
Hazard identification
Hazard analysis
perspective.
No single model gives you a complete understanding of the process
To describe a process in detail it is usual to produce several different types of model giving
shows the major activities involved in particular process and shows their approximate
sequencing.
Used as starting point for process description with separate sections covering each box in
the model
Fine-grain activity models
Role-action models
show the role of different people involved in the process & the actions which they
take.
Helpful for process understanding & automation
Entity-relation models
Show the process inputs, outputs & intermediate results & the relationships b/n
them
Used in a quality management system & supplement models of process activities
Process Models…
process
Actors are normally identified by their roles rather than individually
CASE tools increase productivity (not though the scale predicted) and product quality
The most mature CASE tools support well understood activities such as programming and
RE process
Process support...
There are two types of tools which are available to support the requirement
engineering process
Modeling and validation tools
support the development of system models which can be used to specify
the system and checking of these models for completeness and
consistency.
Management tools
Help to manage a database of requirements and support the management
of changes to these requirements.
are developed to alleviate the problem of large amount of data
collected in RE process & variability of requirements.
Process support...
Management tools (cont’d)
Examples: RequisitPro, DOORS, RML, …..
RML tools provide a range of facilities to access the information
about the requirements.
Requirements browser
Requirements query system
Traceability support system
Report generator
Reqs. converter and word processor linker
Change control system
Checkon:http://makingofsoftware.com/resources/list-of-rm-tools
Process support...
objectives
Improvement objectives
Quality improvement – fewer errors, more complete, better reflect real needs, etc
Will have defined standards for requirement documents, requirement descriptions, etc
Do not have a defined RE process & often suffer from requirements
engineering process.
They often fail to produce good quality requirement documents on time
produced on schedule.
Level 3: Defined level
and techniques.
They have an active process improvement program in place and can make
a) wants to exhibit its capability to consistently give product that meets up customer requirements
b) plans to improve customer satisfaction via valuable system application, together with processes for
ISO 9001 requirements are generic and are planned to be appropriate to all organizations, in
spite of :
organization type,
organization product provided for enhancing the customer satisfaction by meeting customer
requirements.
IEEE Std 1362™-1998
This standard deals with the concept of operations (ConOps) document.
It is a user-oriented document that explains proposed system characteristics from the users’
perspective.
The concept of operation (ConOps) document is used to communicate the system characteristics to
the stakeholders and other organizational elements like staffing, training etc.
It is also notified that the standard is used to describe not only the user organization(s) but also the
user mission(s) besides with that of the objectives of an organization from an integrated systems
perspective.
It acts as a guide for all software-intensive systems.
The standard is applicable to all software products irrespective of its size, scope, complexity, or
criticality.
Reading Assignments