Professional Documents
Culture Documents
JIMMA UNIVERSITY
JIMMA INSTITUTE OF TECHNOLOGY
FACULTY OF COMPUTING AND INFORMATICS
CHAPTER EIGHT
REQUIREMENT ENGINEERING BEST PRACTICES AND
TOOLS
Topics we will cover
2
Globalization
Scale
Dynamic
Requirement Reuse
Requirement Engineering Emerging
trends
4
Discussion
Discuss
Globalization
Scale
Dynamic
Requirement Reuse
…..in terms of Software Engineering
Globalization
5
Discussion
12
Problems Addressed by Iterative Development
Root Causes Solutions
Insufficient requirements Enables and encourages user
feedback
Ambiguous
Serious misunderstandings evident
requirements
early in the life cycle
Brittle architectures
Overwhelming Development focuses on critical
complexity issues – break it down!
Subjective assessment Objective assessment thru testing
Undetected and assessment
inconsistencies
Inconsistencies detected early
Poor testing
Waterfall development Testing starts earlier – continuous!
Uncontrolled change Risks identified and addressed
Insufficient automation early - via planned iterations!
13
Control Changes
14
Multiple teams
Multiple iterations
Multiple releases
Multiple projects
Multiple platforms
May have multiple developers organized into different teams at multiple sites all
working
together on multiple iterations, releases, products, and platforms
(mostly based on the software architecture)
Without explicit control, parallel development leads to chaos!!!!
Problems Addressed by Controlling Changes
Root Causes Solutions
16
Insufficient Requirements change; workflow is
defined and repeatable
requirements
Ambiguous Change requests facilitate clear
communications
requirements
Brittle architectures
Isolated workspaces reduce
Overwhelming interference from parallel work
complexity Change rate statistics are good
metrics for objectively assessing
Subjective assessment project status
Undetected Workspaces contain all artifacts,
inconsistencies facilitating consistency
Poor testing Change propagation is controlled
Waterfall development Changes maintained in a robust,
customizable system
Uncontrolled change
Insufficient automation
Problems Addressed by Verifying Quality
Root Causes Solutions
17
Insufficient requirements Testing provides objective
Ambiguous communications project status assessment
Brittle architectures Objective assessment exposes
Overwhelming complexity inconsistencies early
Subjective assessment (continuous integration
Undetected helps!)
inconsistencies
Testing and verification are
focused on high risk areas
Poor testing
Waterfall development Defects are found earlier and
Uncontrolled change are less expensive to fix
(because ‘testing’ is
distributed…
Insufficient automation
Automated testing tools
provide testing for reliability,
Requirement engineering and management
tools
18
https://www.guru99.com/requirement-management-tools.html
Key Points
19
20