Professional Documents
Culture Documents
Requirements Engineering - Methods & Techniques
Requirements Engineering - Methods & Techniques
Requirements Engineering - Methods & Techniques
Khan @byaqoobkhan
Today’s Topic
Requirements
Engineering
Methods &
Techniques
What Is RE Why RE
Learning
Outcomes
How to RE Assignment
Requirements Engineering
4
Why?
5
Standish Chaos Report
6
Standish Chaos Report
7
Standish Chaos Report
8
9
Requirements Engineering
Requirements
Engineering
Requirements Requirements
Development management
Change
Management
Traceability
Larry Boldt, Trends in Requirements Engineering, People-Process-Technology, Technology Builders, Inc., 2001
Requirements Engineering Process
13
More on Techniques:
https://www.researchgate.net/publication/280154366_Procedural_Model_of_Requirements_Eli
15
citation_Techniques
16
Requirements
Engineering Analysis
Requirements Analysis
Determining whether the stated requirements are:
Unclear, incomplete, ambiguous, or contradictory or incorrect
Identify improvements
19
Requirements Analysis Techniques
20
Business Process Automation (BPA)
Problem Analysis
▪ Ask stakeholders to identify problems with as-is system and describe
how to solve them in the to-be system
Root Cause Analysis
▪ Root causes of problems are investigated
21
Business Process Improvement (BPI)
22
BPI Components/Techniques
Duration Analysis
▪ Detailed examination of the amount of time taken to perform each
process in the current as-is system
Activity-Based Costing
Informal Benchmarking
▪ Studies how other organizations perform their business processes in
order to learn how the organization can do better.
23
Business Process Reengineering (BPR)
24
Business Process Reengineering (BPR)
Outcome Analysis
▪ Defines the outcomes that provide value to the customer
Technology Analysis
▪ Identify interesting technologies and see how they might fit into the
processes of the organization
Activity Elimination
▪ Business processes are simply eliminated that may prove to be no
needed)
25
Select Appropriate Technique
26
Techniques – Selection Criteria
27
Requirements
Engineering Specification
Requirement Specification
The process of writing down the user and
system requirements in a requirements
document.
This approach uses a language like a programming language, but with more
Design Description abstract features to specify the requirements by defining an operational
Languages model of the system. This approach is now rarely used although it can be
useful for interface specifications.
Ways/Methods of Writing a Software
Requirements Specification
Notation Description
Validity
▪ Does the system provide the functions which best support the
customer’s needs?
Consistency
▪ Are there any requirements conflicts?
Completeness
▪ Are all functions required by the customer included?
Realism
▪ Can the requirements be implemented given available budget and
technology
Verifiability
▪ Can the requirements be checked?
36
Requirements Validation Techniques
Requirements Reviews
▪ Systematic manual analysis of the requirements.
Prototyping
▪ Using an executable model of the system to check requirements.
Test-Case Generation
▪ Developing tests for requirements to check testability.
37
Requirements Reviews
Regular Reviews
38
Review Checks
Verifiability
▪ Is the requirement realistically testable?
Comprehensibility
▪ Is the requirement properly understood?
Traceability
▪ Is the origin of the requirement clearly stated?
Adaptability
▪ Can the requirement be changed without a large impact on other
requirements?
39
Requirements Change &
Engineering Traceability
Requirements Change Management Process
Requirements Change Management Process
Requirements Traceability
47
Illustrate through charts (bar, pie, histogram)
Project Failure, Challenged and Success rates
of the latest (2019 or 2020) Standish Chaos
Report
Assignment
Banking plays a vital role in our lives, the more
automation the more ease to customers.
Apply complete RE process to old banking
system and develop set of agreed
requirements
Assignment
THANKS!
Any questions?