In this Slide
_______________________________________________________
SRE – Requirements Engineering Process
BSEF15
(V)
Abdul
Razaq Ali
Objectives
To
introduce the notion of processes and process models for requirements
engineering
To
explain the critical role of people in requirements engineering processes
To
explain why process improvements is important and to suggest a process
improvement model for requirements engineering
Processes – RE Process
A
process is an organized set of activities which transforms inputs to outputs
RE
Process – Inputs and Outputs
Input / Output Description
RE process variability
RE
processes vary radically from one organization to another.
Factors
contributing to this variability include:
– Technical maturity
– Disciplinary involvement
– Organizational culture
– Application domain
There
is therefore no ‘ideal’ requirements engineering process
Process Models
A
process model is a simplified description of a process presented from a
particular perspective
Types
of process model include:
Coarse-grain activity models
Shows principal requirements engineering process
activities and their (approximate) sequencing. This type of model doesn't tell
us how to enact a process but provides an overall picture of the process.
Fine-grain activity models
These are more detailed models of a specific process.
They may be used for understanding and improving existing processes.
Role-action models
These are models which show the roles of different
people, involved in the process and the actions which they take.
Entity-relation models
These models show the process inputs, outputs and
intermediate results and the relationships between them.
Coarse – grain RE Model:
Waterfall model of the Software process
Context of RE process
Spiral Model of the RE process
Actors in the RE process
Actors
in a process are the people involved in the execution of that process
Actors
are normally identified by their roles rather than individually
Requirements
engineering involves actors who are primarily interested in the problem to be
solved (end-users, etc) as well actors interested in the solution (system
designers, etc.)
Role-action diagrams document which actors are involved in
different activities
Role-Action Diagram
Role descriptions
Process Support
The
need to provide some automated support for software processes
This
led to the development of a large number of CASE (Computer-Aided Software
Engineering) tools which supported various process activities
Two
main types of Tools:
Modeling and validation tools - support the development of
system models
e.g. Viewpoint-Oriented Requirement Definition(VORD),
Rationale Rose for developing UML model
Management tools - help manage a database of requirements
and support the management of changes
e.g. DOORS, RML, RDD-100 and Requisite Pro
Process Improvement
Process
improvement is concerned with modifying processes in order to meet some
improvement objectives
Improvement
objectives:
Quality improvement
Schedule reduction
Resource reduction
Planning
Process Improvement – Questions:
What are the problems with current processes?
What are the improvement goals?
How can process improvement be introduced to achieve
these goals?
How should process improvements be controlled and
managed?
Process Maturity
Process
Improvement is related with Process Maturity.
Organization
maturity is measured by the extent they follow better, mature and improved
processes
The
SEI’s Capability Maturity Model is a framework for assessing software process
maturity in development organizations
Capability Maturity Model (CMM)
Maturity levels
Initial
level
Organizations have an undisciplined
process and it is left to individuals how to manage the process and which
development techniques to use.
Repeatable
level
Organizations have basic cost and
schedule management procedures in place. They are likely to be able to make
consistent budget and schedule predictions for projects in the same application
area.
Defined
level
The software process for both
management and engineering activities is documented, standardized and
integrated into a standard software process for the organization.
Managed
level
Detailed measurements of both process
and product quality are collected and used to control the process.
Optimizing
level
The organization has a continuous
process improvement strategy, based on objective measurements, in place.
RE Process Maturity Model
RE Process Maturity Levels
Initial
level
No defined RE process. Suffer from
requirements problems such as requirements volatility, unsatisfied stakeholders
and high rework costs. Dependent on individual skills and experience.
Repeatable
level
Defined standards for requirements
documents and policies and procedures for requirements management.
Defined
level
Defined RE process based on good
practices and techniques. Active process improvement process in place.
Good Practices of RE process Improvement
RE
processes can be improved by the systematic introduction of good requirements
engineering practice
Examples:
Define a standard document structure
Uniquely identify each requirement
Define policies for requirements management
Use checklists for requirements analysis
Use scenarios to elicit requirements
Specify requirements quantitatively
Use prototyping to animate requirements
Reuse requirements
Questions ?
No comments :
Post a Comment