SlideShare a Scribd company logo
3
Most read
6
Most read
9
Most read
Chapter 1 – Requirements Engineering
Requirements Engineering
Mutah University
Faculty of IT, Department of Software Engineering
Dr. Ra’Fat A. AL-msie’deen
https://sites.google.com/site/ralmsideen/
rafatalmsiedeen@mutah.edu.jo
1
Requirements validation
2
Requirements validation
 Requirements validation is the process of checking that
requirements define the system that the customer really
wants.
 It overlaps with elicitation and analysis, as it is
concerned with finding problems with the requirements.
 Requirements validation is critically important because
errors in a requirements document can lead to extensive
rework costs when these problems are discovered
during development or after the system is in service.
3
Requirements validation … cont.
 The cost of fixing a requirements problem by making a
system change is usually much greater than repairing
design or coding errors.
 A change to the requirements usually means that the
system design and implementation must also be
changed.
 Furthermore, the system must then be retested.
4
Requirements validation … cont.
 Concerned with demonstrating that the requirements
define the system that the customer really wants.
 Requirements error costs are high so validation is very
important
 Fixing a requirements error after delivery may cost up
to 100 times the cost of fixing an implementation
error.
530/10/2014
Requirements checking
 During the requirements validation process, different
types of checks should be carried out on the
requirements in the requirements document. These
checks include:
 Validity checks
 These check that the requirements reflect the real
needs of system users. Because of changing
circumstances, the user requirements may have
changed since they were originally elicited.
6
Requirements checking … cont.
 During the requirements validation process, different
types of checks should be carried out on the
requirements in the requirements document. These
checks include:
 Consistency checks
 Requirements in the document should not conflict.
That is, there should not be contradictory constraints
or different descriptions of the same system function.
7
Requirements checking … cont.
 During the requirements validation process, different
types of checks should be carried out on the
requirements in the requirements document. These
checks include:
 Completeness checks
 The requirements document should include
requirements that define all functions and the
constraints intended by the system user.
8
Requirements checking … cont.
 During the requirements validation process, different
types of checks should be carried out on the
requirements in the requirements document. These
checks include:
 Realism checks
 By using knowledge of existing technologies, the
requirements should be checked to ensure that they
can be implemented within the proposed budget for
the system.
 These checks should also take account of the budget
and schedule for the system development.
9
Requirements checking … cont.
 During the requirements validation process, different
types of checks should be carried out on the
requirements in the requirements document. These
checks include:
 Verifiability
 To reduce the potential for dispute between customer
and contractor, system requirements should always
be written so that they are verifiable.
 This means that you should be able to write a set of
tests that can demonstrate that the delivered system
meets each specified requirement.
10
Requirements checking … cont.
 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? 11
Requirements validation techniques
 A number of requirements validation techniques can be
used individually or in conjunction with one another:
 Requirements reviews
 The requirements are analyzed systematically by a
team of reviewers who check for errors and
inconsistencies.
12
Requirements validation techniques … cont.
 A number of requirements validation techniques can be
used individually or in conjunction with one another:
 Prototyping
 This involves developing an executable model of a
system and using this with end-users and customers
to see if it meets their needs and expectations.
 Stakeholders experiment with the system and feed
back requirements changes to the development team.
13
Requirements validation techniques … cont.
 A number of requirements validation techniques can be
used individually or in conjunction with one another:
 Test-case generation
 Requirements should be testable. If the tests for the
requirements are devised as part of the validation
process, this often reveals requirements problems.
 If a test is difficult or impossible to design, this usually
means that the requirements will be difficult to
implement and should be reconsidered.
 Developing tests from the user requirements before
any code is written is an integral part of test-driven
development. 14
Requirements validation techniques … cont.
 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.
1530/10/2014
Abstract analysis of requirements
 You should not underestimate the problems involved in
requirements validation.
 Ultimately, it is difficult to show that a set of requirements
does in fact meet a user’s needs.
 Users need to picture the system in operation and
imagine how that system would fit into their work.
 It is hard even for skilled computer professionals to
perform this type of abstract analysis and harder still for
system users.
16
Requirements changes & requirements problems
 As a result, you rarely find all requirements problems
during the requirements validation process.
 Inevitably, further requirements changes will be needed
to correct omissions and misunderstandings after
agreement has been reached on the requirements
document.
17
Requirements reviews
 Regular reviews should be held while the requirements
definition is being formulated.
 Both client and contractor staff should be involved in
reviews.
 Reviews may be formal (with completed documents) or
informal.
 Good communications between developers, customers
and users can resolve problems at an early stage.
1830/10/2014
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?
1930/10/2014
Reference - Text Book:
 Software Engineering (l0th Edition) - by Ian Sommerville.
Addison Wesley, 2015, ISBN-10: 0137035152.
 Chapter 4.
20
Chapter 1 – Requirements Engineering
Requirements Engineering
Mutah University
Faculty of IT, Department of Software Engineering
Dr. Ra’Fat A. AL-msie’deen
https://sites.google.com/site/ralmsideen/
rafatalmsiedeen@mutah.edu.jo
21

More Related Content

What's hot (20)

PPTX
Software testing
Kunal Prajapati
 
PPTX
System testing
Sifat Hossain
 
PPT
Software Requirements in Software Engineering SE5
koolkampus
 
PPTX
Software quality assurance
Aman Adhikari
 
PPTX
Requirements management
Syed Zaid Irshad
 
PPT
McCall's Quality Factors
Usman Khan
 
PPSX
Introduction to Requirement engineering
Nameirakpam Sundari
 
PPT
Architecture design in software engineering
Preeti Mishra
 
PPTX
Requirements prioritization
Syed Zaid Irshad
 
PPT
Software Testing Fundamentals
Chankey Pathak
 
PDF
Feature Driven Development
dcsunu
 
PDF
Software Maintenance and Evolution
kim.mens
 
PPTX
SDLC Models
akash250690
 
PPTX
Requirements analysis and modeling
Syed Zaid Irshad
 
PPTX
Ch3-Software Engineering 9
Ian Sommerville
 
PPTX
Software design
Syed Muhammad Hammad-ud-Din
 
PDF
Requirements Validation
Antonio Villegas
 
PPTX
Validation testing
Slideshare
 
PPTX
Software testing
balamurugan.k Kalibalamurugan
 
Software testing
Kunal Prajapati
 
System testing
Sifat Hossain
 
Software Requirements in Software Engineering SE5
koolkampus
 
Software quality assurance
Aman Adhikari
 
Requirements management
Syed Zaid Irshad
 
McCall's Quality Factors
Usman Khan
 
Introduction to Requirement engineering
Nameirakpam Sundari
 
Architecture design in software engineering
Preeti Mishra
 
Requirements prioritization
Syed Zaid Irshad
 
Software Testing Fundamentals
Chankey Pathak
 
Feature Driven Development
dcsunu
 
Software Maintenance and Evolution
kim.mens
 
SDLC Models
akash250690
 
Requirements analysis and modeling
Syed Zaid Irshad
 
Ch3-Software Engineering 9
Ian Sommerville
 
Requirements Validation
Antonio Villegas
 
Validation testing
Slideshare
 

Similar to Requirements validation - requirements engineering (20)

PPTX
Requirement Validation Software Requiremnt.pptx
ibadcui
 
PPTX
Topic 20. Validating Requirements.pptx
ssuserec6f52
 
PPTX
Requirement Engineering Lec.1 & 2 & 3
Ahmed Alageed
 
PPT
Requirements - validation in software engineering
mohammedarshadhussai4
 
PPTX
Requirements engineering activities
Syed Zaid Irshad
 
PPTX
Unit 2.3- Requirement Engineering Process.pptx
shivanigarv9115
 
PPTX
Programming Engineering Lecture 6 Alaa.pptx
ssuser8bddb2
 
PPT
05 REQUIREMENT ENGINEERING for students of
AssadLeo1
 
PPT
Requirements engineering process in software engineering
Preeti Mishra
 
PPT
REQUIREMENT ENGINEERING
Saqib Raza
 
PDF
Requirementengg
Prof.Dharmishtha R. Chaudhari
 
PDF
Lecture 10.pdf
RaoShahid10
 
PPT
Lecture 9 understanding requirements
IIUI
 
ODP
Requirement analysis
Sangeet Shah
 
PPTX
lec 3rd.pptx
rayanbabur
 
PPT
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
PPTX
Lecture 1 - Requirement Engineering.pptx
AbdulRaheem254960
 
PPT
vu-re-lecture-06 requirement engineer.ppt
ubaidullah75790
 
PPT
req engg (1).ppt
WaniHBisen
 
PPT
Required
Malik252995
 
Requirement Validation Software Requiremnt.pptx
ibadcui
 
Topic 20. Validating Requirements.pptx
ssuserec6f52
 
Requirement Engineering Lec.1 & 2 & 3
Ahmed Alageed
 
Requirements - validation in software engineering
mohammedarshadhussai4
 
Requirements engineering activities
Syed Zaid Irshad
 
Unit 2.3- Requirement Engineering Process.pptx
shivanigarv9115
 
Programming Engineering Lecture 6 Alaa.pptx
ssuser8bddb2
 
05 REQUIREMENT ENGINEERING for students of
AssadLeo1
 
Requirements engineering process in software engineering
Preeti Mishra
 
REQUIREMENT ENGINEERING
Saqib Raza
 
Lecture 10.pdf
RaoShahid10
 
Lecture 9 understanding requirements
IIUI
 
Requirement analysis
Sangeet Shah
 
lec 3rd.pptx
rayanbabur
 
Software Engineering Lec 4-requirments
Taymoor Nazmy
 
Lecture 1 - Requirement Engineering.pptx
AbdulRaheem254960
 
vu-re-lecture-06 requirement engineer.ppt
ubaidullah75790
 
req engg (1).ppt
WaniHBisen
 
Required
Malik252995
 
Ad

More from Ra'Fat Al-Msie'deen (20)

PDF
Smart City: Definitions, Architectures, Development Life Cycle, Technologies,...
Ra'Fat Al-Msie'deen
 
PDF
ScaMaha: A Tool for Parsing, Analyzing, and Visualizing Object-Oriented Softw...
Ra'Fat Al-Msie'deen
 
PDF
ScaMaha: A Tool for Parsing, Analyzing, and Visualizing Object-Oriented Softw...
Ra'Fat Al-Msie'deen
 
PDF
Software evolution understanding: Automatic extraction of software identifier...
Ra'Fat Al-Msie'deen
 
PDF
FeatureClouds: Naming the Identified Feature Implementation Blocks from Softw...
Ra'Fat Al-Msie'deen
 
PDF
Requirements Traceability: Recovering and Visualizing Traceability Links Betw...
Ra'Fat Al-Msie'deen
 
PDF
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Ra'Fat Al-Msie'deen
 
PDF
Supporting software documentation with source code summarization
Ra'Fat Al-Msie'deen
 
PDF
SoftCloud: A Tool for Visualizing Software Artifacts as Tag Clouds.pdf
Ra'Fat Al-Msie'deen
 
PDF
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports.pdf
Ra'Fat Al-Msie'deen
 
PDF
Requirements Traceability: Recovering and Visualizing Traceability Links Betw...
Ra'Fat Al-Msie'deen
 
PDF
Automatic Labeling of the Object-oriented Source Code: The Lotus Approach
Ra'Fat Al-Msie'deen
 
PDF
Constructing a software requirements specification and design for electronic ...
Ra'Fat Al-Msie'deen
 
PDF
Detecting commonality and variability in use-case diagram variants
Ra'Fat Al-Msie'deen
 
PDF
Naming the Identified Feature Implementation Blocks from Software Source Code
Ra'Fat Al-Msie'deen
 
PPTX
Application architectures - Software Architecture and Design
Ra'Fat Al-Msie'deen
 
PPTX
Planning and writing your documents - Software documentation
Ra'Fat Al-Msie'deen
 
PPTX
Requirements management planning & Requirements change management
Ra'Fat Al-Msie'deen
 
PPTX
Requirements change - requirements engineering
Ra'Fat Al-Msie'deen
 
PPTX
Software Documentation - writing to support - references
Ra'Fat Al-Msie'deen
 
Smart City: Definitions, Architectures, Development Life Cycle, Technologies,...
Ra'Fat Al-Msie'deen
 
ScaMaha: A Tool for Parsing, Analyzing, and Visualizing Object-Oriented Softw...
Ra'Fat Al-Msie'deen
 
ScaMaha: A Tool for Parsing, Analyzing, and Visualizing Object-Oriented Softw...
Ra'Fat Al-Msie'deen
 
Software evolution understanding: Automatic extraction of software identifier...
Ra'Fat Al-Msie'deen
 
FeatureClouds: Naming the Identified Feature Implementation Blocks from Softw...
Ra'Fat Al-Msie'deen
 
Requirements Traceability: Recovering and Visualizing Traceability Links Betw...
Ra'Fat Al-Msie'deen
 
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Ra'Fat Al-Msie'deen
 
Supporting software documentation with source code summarization
Ra'Fat Al-Msie'deen
 
SoftCloud: A Tool for Visualizing Software Artifacts as Tag Clouds.pdf
Ra'Fat Al-Msie'deen
 
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports.pdf
Ra'Fat Al-Msie'deen
 
Requirements Traceability: Recovering and Visualizing Traceability Links Betw...
Ra'Fat Al-Msie'deen
 
Automatic Labeling of the Object-oriented Source Code: The Lotus Approach
Ra'Fat Al-Msie'deen
 
Constructing a software requirements specification and design for electronic ...
Ra'Fat Al-Msie'deen
 
Detecting commonality and variability in use-case diagram variants
Ra'Fat Al-Msie'deen
 
Naming the Identified Feature Implementation Blocks from Software Source Code
Ra'Fat Al-Msie'deen
 
Application architectures - Software Architecture and Design
Ra'Fat Al-Msie'deen
 
Planning and writing your documents - Software documentation
Ra'Fat Al-Msie'deen
 
Requirements management planning & Requirements change management
Ra'Fat Al-Msie'deen
 
Requirements change - requirements engineering
Ra'Fat Al-Msie'deen
 
Software Documentation - writing to support - references
Ra'Fat Al-Msie'deen
 
Ad

Recently uploaded (20)

PDF
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
PDF
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - GLOBAL SUCCESS - CẢ NĂM - NĂM 2024 (VOCABULARY, ...
Nguyen Thanh Tu Collection
 
PDF
QNL June Edition hosted by Pragya the official Quiz Club of the University of...
Pragya - UEM Kolkata Quiz Club
 
PDF
The Different Types of Non-Experimental Research
Thelma Villaflores
 
PDF
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 
PPTX
2025 Winter SWAYAM NPTEL & A Student.pptx
Utsav Yagnik
 
PDF
Isharyanti-2025-Cross Language Communication in Indonesian Language
Neny Isharyanti
 
PPTX
PATIENT ASSIGNMENTS AND NURSING CARE RESPONSIBILITIES.pptx
PRADEEP ABOTHU
 
PPTX
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
PPTX
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
PPTX
How to Handle Salesperson Commision in Odoo 18 Sales
Celine George
 
PDF
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
PDF
CONCURSO DE POESIA “POETUFAS – PASSOS SUAVES PELO VERSO.pdf
Colégio Santa Teresinha
 
PPTX
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
PPTX
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
PPTX
How to Set Maximum Difference Odoo 18 POS
Celine George
 
PDF
Generative AI: it's STILL not a robot (CIJ Summer 2025)
Paul Bradshaw
 
PPTX
How to Convert an Opportunity into a Quotation in Odoo 18 CRM
Celine George
 
PPTX
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
PPTX
How to Manage Large Scrollbar in Odoo 18 POS
Celine George
 
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - GLOBAL SUCCESS - CẢ NĂM - NĂM 2024 (VOCABULARY, ...
Nguyen Thanh Tu Collection
 
QNL June Edition hosted by Pragya the official Quiz Club of the University of...
Pragya - UEM Kolkata Quiz Club
 
The Different Types of Non-Experimental Research
Thelma Villaflores
 
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 
2025 Winter SWAYAM NPTEL & A Student.pptx
Utsav Yagnik
 
Isharyanti-2025-Cross Language Communication in Indonesian Language
Neny Isharyanti
 
PATIENT ASSIGNMENTS AND NURSING CARE RESPONSIBILITIES.pptx
PRADEEP ABOTHU
 
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
How to Handle Salesperson Commision in Odoo 18 Sales
Celine George
 
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
CONCURSO DE POESIA “POETUFAS – PASSOS SUAVES PELO VERSO.pdf
Colégio Santa Teresinha
 
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
How to Set Maximum Difference Odoo 18 POS
Celine George
 
Generative AI: it's STILL not a robot (CIJ Summer 2025)
Paul Bradshaw
 
How to Convert an Opportunity into a Quotation in Odoo 18 CRM
Celine George
 
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
How to Manage Large Scrollbar in Odoo 18 POS
Celine George
 

Requirements validation - requirements engineering

  • 1. Chapter 1 – Requirements Engineering Requirements Engineering Mutah University Faculty of IT, Department of Software Engineering Dr. Ra’Fat A. AL-msie’deen https://sites.google.com/site/ralmsideen/ [email protected] 1
  • 3. Requirements validation  Requirements validation is the process of checking that requirements define the system that the customer really wants.  It overlaps with elicitation and analysis, as it is concerned with finding problems with the requirements.  Requirements validation is critically important because errors in a requirements document can lead to extensive rework costs when these problems are discovered during development or after the system is in service. 3
  • 4. Requirements validation … cont.  The cost of fixing a requirements problem by making a system change is usually much greater than repairing design or coding errors.  A change to the requirements usually means that the system design and implementation must also be changed.  Furthermore, the system must then be retested. 4
  • 5. Requirements validation … cont.  Concerned with demonstrating that the requirements define the system that the customer really wants.  Requirements error costs are high so validation is very important  Fixing a requirements error after delivery may cost up to 100 times the cost of fixing an implementation error. 530/10/2014
  • 6. Requirements checking  During the requirements validation process, different types of checks should be carried out on the requirements in the requirements document. These checks include:  Validity checks  These check that the requirements reflect the real needs of system users. Because of changing circumstances, the user requirements may have changed since they were originally elicited. 6
  • 7. Requirements checking … cont.  During the requirements validation process, different types of checks should be carried out on the requirements in the requirements document. These checks include:  Consistency checks  Requirements in the document should not conflict. That is, there should not be contradictory constraints or different descriptions of the same system function. 7
  • 8. Requirements checking … cont.  During the requirements validation process, different types of checks should be carried out on the requirements in the requirements document. These checks include:  Completeness checks  The requirements document should include requirements that define all functions and the constraints intended by the system user. 8
  • 9. Requirements checking … cont.  During the requirements validation process, different types of checks should be carried out on the requirements in the requirements document. These checks include:  Realism checks  By using knowledge of existing technologies, the requirements should be checked to ensure that they can be implemented within the proposed budget for the system.  These checks should also take account of the budget and schedule for the system development. 9
  • 10. Requirements checking … cont.  During the requirements validation process, different types of checks should be carried out on the requirements in the requirements document. These checks include:  Verifiability  To reduce the potential for dispute between customer and contractor, system requirements should always be written so that they are verifiable.  This means that you should be able to write a set of tests that can demonstrate that the delivered system meets each specified requirement. 10
  • 11. Requirements checking … cont.  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? 11
  • 12. Requirements validation techniques  A number of requirements validation techniques can be used individually or in conjunction with one another:  Requirements reviews  The requirements are analyzed systematically by a team of reviewers who check for errors and inconsistencies. 12
  • 13. Requirements validation techniques … cont.  A number of requirements validation techniques can be used individually or in conjunction with one another:  Prototyping  This involves developing an executable model of a system and using this with end-users and customers to see if it meets their needs and expectations.  Stakeholders experiment with the system and feed back requirements changes to the development team. 13
  • 14. Requirements validation techniques … cont.  A number of requirements validation techniques can be used individually or in conjunction with one another:  Test-case generation  Requirements should be testable. If the tests for the requirements are devised as part of the validation process, this often reveals requirements problems.  If a test is difficult or impossible to design, this usually means that the requirements will be difficult to implement and should be reconsidered.  Developing tests from the user requirements before any code is written is an integral part of test-driven development. 14
  • 15. Requirements validation techniques … cont.  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. 1530/10/2014
  • 16. Abstract analysis of requirements  You should not underestimate the problems involved in requirements validation.  Ultimately, it is difficult to show that a set of requirements does in fact meet a user’s needs.  Users need to picture the system in operation and imagine how that system would fit into their work.  It is hard even for skilled computer professionals to perform this type of abstract analysis and harder still for system users. 16
  • 17. Requirements changes & requirements problems  As a result, you rarely find all requirements problems during the requirements validation process.  Inevitably, further requirements changes will be needed to correct omissions and misunderstandings after agreement has been reached on the requirements document. 17
  • 18. Requirements reviews  Regular reviews should be held while the requirements definition is being formulated.  Both client and contractor staff should be involved in reviews.  Reviews may be formal (with completed documents) or informal.  Good communications between developers, customers and users can resolve problems at an early stage. 1830/10/2014
  • 19. 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? 1930/10/2014
  • 20. Reference - Text Book:  Software Engineering (l0th Edition) - by Ian Sommerville. Addison Wesley, 2015, ISBN-10: 0137035152.  Chapter 4. 20
  • 21. Chapter 1 – Requirements Engineering Requirements Engineering Mutah University Faculty of IT, Department of Software Engineering Dr. Ra’Fat A. AL-msie’deen https://sites.google.com/site/ralmsideen/ [email protected] 21