Requirement Enginering Software Requirement Tutorial 7
Transcript of Requirement Enginering Software Requirement Tutorial 7
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
1/22
1
Requirements Engineering
Processes2
Lecture # 7
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
2/22
2
Recap of Last Lecture - 1
We introduced the concept of
requirements engineering process
We discussed inputs and outputs ofthe requirements engineering process
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
3/22
3
Recap of Last Lecture - 2
We introduced high-level activities in
the requirements engineering process
Requirements elicitation Requirements analysis and negotiation
Requirements specification
Requirements validation
Requirements management
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
4/22
4
Todays Topics
Actors and stakeholders in the
requirements engineering process
Process and process improvement for
requirements engineering
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
5/22
5
Who are Actors?
Actors in a process are the people
involved in the execution of that
process Actors are normally identified by their
roles rather than individually, e.g.,
project manager, purchasing director,and system engineer
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
6/22
6
Actors in the RE Process - 1
Requirements engineering involves peoplewho are primarily interested in the problemto be solved (end-users, etc) as well as
people interested in the solution (systemdesigners, etc.)
Another group of people, such as health &
safety regulators, and maintenanceengineers may be effected by the existenceof the system
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
7/22
7
Actors in the RE Process - 2
Role-action diagrams are process models
which show the actors associated with
different process activities
They document the information needs of
different people involved in the process
They use model of prototype softwaresystem as part of requirements elicitation
process
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
8/22
8
Role-Action Diagram for
Software Prototyping
Understand
problem
Establish
outline
requirements
Select
prototyping
system
Develop
prototype
Evaluate
prototype
Req. EngineerDomain expert
End-user
Req. Engineer
End-user
SW Engineer
Project Mgr
Req. Engineer
SW Engineer
End-userDomain expert
Req. Engineer
SW Engineer
ACTIONS
ROLES
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
9/22
9
Role Descriptions - 1
Role Description
Domain
Expert
Responsible for proving
information about theapplication domain and the
specific problem in that
domain, which is to be solved
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
10/22
10
Role Descriptions - 2
Role Description
System End-
user
Responsible for using the
system after delivery
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
11/22
11
Role Descriptions - 3
Role Description
Requirements
Engineer
Responsible for eliciting and
specifying the systemrequirements
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
12/22
12
Role Descriptions - 4
Role Description
Software
Engineer
Responsible for developing
the prototype software system
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
13/22
13
Role Descriptions - 5
Role Description
Project
Manager
Responsible for planning and
estimating the prototypingproject
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
14/22
14
Human and Social Factors
Requirements engineering processes aredominated by human, social andorganizational factors because they always
involve a range of stakeholders fromdifferent backgrounds and with differentindividual and organizational goals
System stakeholders may come from arange of technical and non-technicalbackground and from different disciplines
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
15/22
15
Stakeholder Types
Software engineers
System end-users
Managers of system end-users
External regulators
Domain experts
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
16/22
16
Factors Influencing
Requirements
Personality and status of stakeholders
The personal goals of individuals
within an organization The degree of political influence of
stakeholders within an organization
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
17/22
17
Process Support
One way to minimize errors in therequirements engineering is to use processmodels and to use CASE tools
The most mature CASE tools support well-understood activities such as programmingand testing and the use of structured
methods Support for requirements engineering is
still limited because of the informality andthe variability of the process
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
18/22
18
CASE Tools for RE
Modeling and validation tools support the
development of system models which can
be used to specify the system and thechecking of these models for completeness
and consistency
Management tools help manage a database
of requirements and support the
management of changes to these
requirements
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
19/22
19
RE Process Problems
Lack of stakeholder involvement
Business needs not considered
Lack of requirements management Lack of defined responsibilities
Stakeholder communication problems
Over-long schedules and poor qualityrequirements documents
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
20/22
20
Requirements Engineering Costs
About fifteen percent (15%) of system
development costs
However, if the requirementsengineering process is not executed
properly, this cost can increase
substantially
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
21/22
21
Summary
Human, social and organizational factorsare important influences on requirementsengineering processes
Requirements engineering processimprovement is difficult and is best tackledin an incremental way
Requirements engineering processes can beclassified according to their degree ofmaturity
-
7/29/2019 Requirement Enginering Software Requirement Tutorial 7
22/22
22
References
Requirements Engineering: Processes
and Techniques by G. Kotonya and I.
Sommerville, John Wiley & Sons,1998