SlideShare a Scribd company logo
Requirements Validation
Validation objectivesCertifies that the requirements document is an acceptable description of the system to be implementedChecks a requirements document forCompleteness and consistencyConformance to standardsRequirements conflictsTechnical errorsAmbiguous requirements
Analysis and validationAnalysis works with raw requirements as elicited from the system stakeholders“Have we got the right requirements” is the key question to be answered at this stageValidation works with a final draft of the requirements document i.e. with negotiated and agreed requirements“Have we got the requirements right” is the key question to be answered at this stage
Validation inputs and outputs
Validation inputsRequirements documentShould be a complete version of the document, not an unfinished draft. Formatted and organised according to organisational standardsOrganisational knowledgeKnowledge, often implicit, of the organisation which may be used to judge the realism of the requirementsOrganisational standardsLocal standards e.g. for the organisation of the requirements document
Validation outputsProblem listList of discovered problems in the requirements documentAgreed actionsList of agreed actions in response to requirements problems. Some problems may have several corrective actions; some problems may have no associated actions
Requirements reviewsA group of people read and analyse the requirements, look for problems, meet and discuss the problems and agree on actions to address these problems
Requirements review process
Review activitiesPlan review  The review team is selected and a time and place for the review meeting is chosen.Distribute documents The requirements document is distributed to the review team membersPrepare for review  Individual reviewers read the requirements to find conflicts, omissions, inconsistencies, deviations from standards and other problems.
Review activitiesHold review meeting  Individual comments and problems are discussed and a set of actions to address the problems is agreed.Follow-up actions  The chair of the review checks that the agreed actions have been carried out.Revise document  The requirements document is revised to reflect the agreed actions. At this stage, it may be accepted or it may be re-reviewed
Problem actionsRequirements clarification The requirement may be badly expressed or may have accidentally omitted information which has been collected during requirements elicitation. Missing information Some information is missing from the requirements document. It is the responsibility of the requirements engineers who are revising the document to discover this information from system stakeholders. Requirements conflict There is a significant conflict between requirements. The stakeholders involved must negotiate to resolve the conflict.Unrealistic requirement The requirement does not appear to be implementable with the technology available or given other constraints on the system.   Stakeholders must be consulted to decide how to make the requirement more realistic.
Pre-review checkingReviews are expensive because they involve a number of people spending time reading and checking the requirements documentThis expense can be reduced by using pre-review checking where one person checks the document and looks for straightforward problems such as missing requirements, lack of conformance to standards, typographical errors, etc.Document may be returned for correction or the list of problems distributed to other reviewers
Pre-review checking
Review team membershipReviews should involve a number of stakeholders drawn from different backgroundsPeople from different backgrounds bring different skills and knowledge to the reviewStakeholders feel involved in the RE process and develop an understanding of the needs of other stakeholdersReview team should always involve at least a domain expert and an end-user
Review checklistsUnderstandabilityCan readers of the document understand what the requirements mean?RedundancyIs information unnecessarily repeated in the requirements document?CompletenessDoes the checker know of any missing requirements or is there any information missing from individual requirement descriptions? AmbiguityAre the requirements expressed using terms which are clearly defined?  Could readers from different backgrounds make different interpretations of the requirements?
Review checklistsConsistencyDo the descriptions of different requirements include contradictions? Are there contradictions between individual requirements and overall system requirements?OrganisationIs the document structured in a sensible way? Are the descriptions of requirements organised so that related requirements are grouped?Conformance to standardsDoes the requirements document and individual requirements conform to defined standards? Are departures from the standards, justified?TraceabilityAre requirements unambiguously identified, include links to related requirements and to the reasons why these requirements have been included?
Checklist questionsIs each requirement uniquely identified?Are specialised terms defined in the glossaryDoes a requirement stand on its own or do you have to examine other requirements to understand what it means? Do individual requirements use the terms consistentlyIs the same service requested in different requirements? Are there any contradictions in these requests?If a requirement makes reference to some other facilities, are these described elsewhere in the document?Are related requirements grouped together? If not, do they refer to each other?
Requirements problem example“4. EDDIS will be configurable so that it will comply with the requirements of all UK and (where relevant) international copyright legislation. Minimally, this means that EDDIS must provide a form for the user to sign the Copyright Declaration statement. It also means that EDDIS must keep track of Copyright Declaration statements which have been signed/not-signed. Under no circumstances must an order be sent to the supplier if the copyright statement has not been signed.”
ProblemsIncompletenessWhat international copyright legislation is relevant?What happens if the copyright declaration is not signed?If a signature is a digital signature, how is it assigned?AmbiguityWhat does signing an electronic form mean? Is this a physical signature or a digital signature?StandardsMore than 1 requirement. Maintenance of copyright is one requirement; issue of documents is another
PrototypingPrototypes for requirements validation demonstrate the requirements and help stakeholders discover problemsValidation prototypes should be complete, reasonably efficient and robust. It should be possible to use them in the same way as the required systemUser documentation and training should be provided
Prototyping for validation
Prototyping activitiesChoose prototype testers  The best testers are users who are fairly experienced and who are open-minded about the use of new systems. End-users who do different jobs should be involved so that different areas of system functionality will be covered. Develop test scenarios  Careful planning is required to draw up a set of test scenarios which provide broad coverage of the requirements. End-users shouldn’t just play around with the system as this may never exercise critical system features.  Execute scenarios  The users of the system work, usually on their own, to try the system by executing the planned scenarios. Document problems  Its usually best to define some kind of electronic or paper problem report form which users fill in when they encounter a problem.
User manual developmentWriting a user manual from the requirements forces a detailed requirements analysis and thus can reveal problems with the documentInformation in the user manualDescription of the functionality and how it is implementedWhich parts of the system have not been implementedHow to get out of troubleHow to install and get started with the system
Model validationValidation of system models is an essential part of the validation processObjectives of model validationTo demonstrate that each model is self-consistentIf there are several models of the system, to demonstrate that these are internally and externally consistentTo demonstrate that the models accurately reflect the real requirements of system stakeholdersSome checking is possible with automated toolsParaphrasing the model is an effective checking technique
Data-flow diagram for Issue
Paraphrased description
Requirements testingEach requirement should be testable i.e. it should be possible to define tests to check whether or not that requirement has been met.Inventing requirements tests is an effective validation technique as missing or ambiguous information in the requirements description may make it difficult to formulate testsEach functional requirement should have an associated test
Test case definitionWhat usage scenario might be used to check the requirement?Does the requirement, on its own, include enough information to allow a test to be defined?Is it possible to test the requirement using a single test or are multiple test cases required?Could the requirement be re-stated to make the test cases more obvious?
Test record formThe requirement’s identifier There should be at least one for each requirement.Related requirements These should be referenced as the test may also be relevant to these requirements.Test description A brief description of the test and why this is an objective requirements test.  This should include system inputs and corresponding outputs.Requirements problems A description of problems which made test definition difficult or impossible. Comments and recommendations These are advice on how to solve requirements problems which have been discovered.
Requirements test form
Hard-to-test requirementsSystem requirements Requirements which apply to the system as a whole.  In general, these are the most difficult requirements to validate irrespective of the method used as they may be influenced by any of the functional requirements.  Tests, which are not executed, cannot test for non-functional system-wide characteristics such as usability.  Exclusive requirements These are requirements which exclude specific behaviour. For example, a requirement may state that system failures must never corrupt the system database. It is not possible to test such a requirement exhaustively.Some non-functional requirements Some non-functional requirements, such as reliability requirements, can only be tested with a large test set.  Designing this test set does not help with requirements validation.
Key pointsRequirements validation should focus on checking the final draft of the requirements document for conflicts, omissions and deviations from standards.  Inputs to the validation process are the requirements document, organisational standards and implicit organisational knowledge. The outputs are a list of requirements problems and agreed actions to address these problems.Reviews involve a group of people making a detailed analysis of the requirements.Review costs can be reduced by checking the requirements before the review for deviations from organisational standards. These may result from more serious requirements problems.
Key pointsChecklists of what to look for may be used to drive a requirements review process.Prototyping is effective for requirements validation if a prototype has been developed during the requirements elicitation stage.Systems models may be validated by paraphrasing them. This means that they are systematically translated into a natural language description.Designing tests for requirements can reveal problems with the requirements.  If the requirement is unclear, it may be impossible to define a test for it.

More Related Content

PPSX
Requirement Elicitation
PPT
Requirement Engineering
PPTX
Ch4-Software Engineering 9
PDF
Documenting Software Architectures
PDF
Requirements Engineering
PPT
Requirements Engineering
PPT
System Models in Software Engineering SE7
PPTX
Requirements Engineering Processes
Requirement Elicitation
Requirement Engineering
Ch4-Software Engineering 9
Documenting Software Architectures
Requirements Engineering
Requirements Engineering
System Models in Software Engineering SE7
Requirements Engineering Processes

What's hot (20)

PPTX
Solution architecture
PPTX
Software Engineering - Chapter 4 - Requirements engineering
PDF
Software requirements
PDF
Requirements Engineering - Requirements management
PPTX
Ch24-Software Engineering 9
PPTX
Ch17 distributed software engineering
PPT
Requirement change management
PPTX
Ian Sommerville, Software Engineering, 9th Edition Ch 4
PPTX
Ch 3 software quality factor
PPTX
requirement documentation
PPT
Use Case Modeling
PPT
Requirements Engineering Process Improvement
PPTX
Ch2-Software Engineering 9
PPTX
Ch5 system modeling
PPTX
Functional vs Non-functional Requirements - Which comes first?
PDF
Requirement Engineering
PDF
E commerce Testing
PPT
Software Requirements in Software Engineering SE5
PPTX
Ch23-Software Engineering 9
PPTX
Ch22 project management
Solution architecture
Software Engineering - Chapter 4 - Requirements engineering
Software requirements
Requirements Engineering - Requirements management
Ch24-Software Engineering 9
Ch17 distributed software engineering
Requirement change management
Ian Sommerville, Software Engineering, 9th Edition Ch 4
Ch 3 software quality factor
requirement documentation
Use Case Modeling
Requirements Engineering Process Improvement
Ch2-Software Engineering 9
Ch5 system modeling
Functional vs Non-functional Requirements - Which comes first?
Requirement Engineering
E commerce Testing
Software Requirements in Software Engineering SE5
Ch23-Software Engineering 9
Ch22 project management
Ad

Similar to Chap4 RE validation (20)

PPTX
Requirements engineering activities
PPT
Requirements - validation in software engineering
PPTX
Requirement Analysis-2.pptxrfgghrkjbnrjb
PPTX
requirement engineering, types of requirement
PPT
Requirements Engineering
PPT
Chapter 4 Requirement of Engineering.ppt
PPT
Requirements engineering process in software engineering
PPT
requirements analysis and design
PPT
Business requirement analysis session 5
PPTX
Software engineering Unit 2(Updated)2.pptx
PPTX
Requirement Validation Software Requiremnt.pptx
PDF
3-REasdfghjkl;[poiunvnvncncn-Process.pdf
PPTX
Ch 5 - Requirement Validation.pptx
PPT
W3 requirements engineering processes
PPT
PPT
Requirements engineering vii
PPTX
S.E. Unit 2 software engineering software engineering
PPT
5. SE RequirementEngineering task.ppt
Requirements engineering activities
Requirements - validation in software engineering
Requirement Analysis-2.pptxrfgghrkjbnrjb
requirement engineering, types of requirement
Requirements Engineering
Chapter 4 Requirement of Engineering.ppt
Requirements engineering process in software engineering
requirements analysis and design
Business requirement analysis session 5
Software engineering Unit 2(Updated)2.pptx
Requirement Validation Software Requiremnt.pptx
3-REasdfghjkl;[poiunvnvncncn-Process.pdf
Ch 5 - Requirement Validation.pptx
W3 requirements engineering processes
Requirements engineering vii
S.E. Unit 2 software engineering software engineering
5. SE RequirementEngineering task.ppt
Ad

More from Ian Sommerville (20)

PPTX
Chap3 RE elicitation
PPTX
Chap2 RE processes
PPTX
Chap1 RE Introduction
PPTX
Chap5 RE management
PPTX
Ch16-Software Engineering 9
PPTX
Ch17-Software Engineering 9
PPTX
Ch18-Software Engineering 9
PPTX
Ch19-Software Engineering 9
PPTX
Ch21-Software Engineering 9
PPTX
Ch20-Software Engineering 9
PPTX
Ch22-Software Engineering 9
PPTX
Ch12-Software Engineering 9
PPTX
Ch15-Software Engineering 9
PPTX
Ch14-Software Engineering 9
PPTX
Ch13-Software Engineering 9
PPTX
Ch11-Software Engineering 9
PPTX
Ch10-Software Engineering 9
PPTX
Ch25-Software Engineering 9
PPTX
Ch26 - software engineering 9
PPTX
Ch1-Software Engineering 9
Chap3 RE elicitation
Chap2 RE processes
Chap1 RE Introduction
Chap5 RE management
Ch16-Software Engineering 9
Ch17-Software Engineering 9
Ch18-Software Engineering 9
Ch19-Software Engineering 9
Ch21-Software Engineering 9
Ch20-Software Engineering 9
Ch22-Software Engineering 9
Ch12-Software Engineering 9
Ch15-Software Engineering 9
Ch14-Software Engineering 9
Ch13-Software Engineering 9
Ch11-Software Engineering 9
Ch10-Software Engineering 9
Ch25-Software Engineering 9
Ch26 - software engineering 9
Ch1-Software Engineering 9

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Encapsulation theory and applications.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
MYSQL Presentation for SQL database connectivity
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Modernizing your data center with Dell and AMD
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
cuic standard and advanced reporting.pdf
Chapter 3 Spatial Domain Image Processing.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Encapsulation_ Review paper, used for researhc scholars
Mobile App Security Testing_ A Comprehensive Guide.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Encapsulation theory and applications.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Review of recent advances in non-invasive hemoglobin estimation
MYSQL Presentation for SQL database connectivity
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Modernizing your data center with Dell and AMD
Digital-Transformation-Roadmap-for-Companies.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation

Chap4 RE validation

  • 2. Validation objectivesCertifies that the requirements document is an acceptable description of the system to be implementedChecks a requirements document forCompleteness and consistencyConformance to standardsRequirements conflictsTechnical errorsAmbiguous requirements
  • 3. Analysis and validationAnalysis works with raw requirements as elicited from the system stakeholders“Have we got the right requirements” is the key question to be answered at this stageValidation works with a final draft of the requirements document i.e. with negotiated and agreed requirements“Have we got the requirements right” is the key question to be answered at this stage
  • 5. Validation inputsRequirements documentShould be a complete version of the document, not an unfinished draft. Formatted and organised according to organisational standardsOrganisational knowledgeKnowledge, often implicit, of the organisation which may be used to judge the realism of the requirementsOrganisational standardsLocal standards e.g. for the organisation of the requirements document
  • 6. Validation outputsProblem listList of discovered problems in the requirements documentAgreed actionsList of agreed actions in response to requirements problems. Some problems may have several corrective actions; some problems may have no associated actions
  • 7. Requirements reviewsA group of people read and analyse the requirements, look for problems, meet and discuss the problems and agree on actions to address these problems
  • 9. Review activitiesPlan review The review team is selected and a time and place for the review meeting is chosen.Distribute documents The requirements document is distributed to the review team membersPrepare for review Individual reviewers read the requirements to find conflicts, omissions, inconsistencies, deviations from standards and other problems.
  • 10. Review activitiesHold review meeting Individual comments and problems are discussed and a set of actions to address the problems is agreed.Follow-up actions The chair of the review checks that the agreed actions have been carried out.Revise document The requirements document is revised to reflect the agreed actions. At this stage, it may be accepted or it may be re-reviewed
  • 11. Problem actionsRequirements clarification The requirement may be badly expressed or may have accidentally omitted information which has been collected during requirements elicitation. Missing information Some information is missing from the requirements document. It is the responsibility of the requirements engineers who are revising the document to discover this information from system stakeholders. Requirements conflict There is a significant conflict between requirements. The stakeholders involved must negotiate to resolve the conflict.Unrealistic requirement The requirement does not appear to be implementable with the technology available or given other constraints on the system. Stakeholders must be consulted to decide how to make the requirement more realistic.
  • 12. Pre-review checkingReviews are expensive because they involve a number of people spending time reading and checking the requirements documentThis expense can be reduced by using pre-review checking where one person checks the document and looks for straightforward problems such as missing requirements, lack of conformance to standards, typographical errors, etc.Document may be returned for correction or the list of problems distributed to other reviewers
  • 14. Review team membershipReviews should involve a number of stakeholders drawn from different backgroundsPeople from different backgrounds bring different skills and knowledge to the reviewStakeholders feel involved in the RE process and develop an understanding of the needs of other stakeholdersReview team should always involve at least a domain expert and an end-user
  • 15. Review checklistsUnderstandabilityCan readers of the document understand what the requirements mean?RedundancyIs information unnecessarily repeated in the requirements document?CompletenessDoes the checker know of any missing requirements or is there any information missing from individual requirement descriptions? AmbiguityAre the requirements expressed using terms which are clearly defined? Could readers from different backgrounds make different interpretations of the requirements?
  • 16. Review checklistsConsistencyDo the descriptions of different requirements include contradictions? Are there contradictions between individual requirements and overall system requirements?OrganisationIs the document structured in a sensible way? Are the descriptions of requirements organised so that related requirements are grouped?Conformance to standardsDoes the requirements document and individual requirements conform to defined standards? Are departures from the standards, justified?TraceabilityAre requirements unambiguously identified, include links to related requirements and to the reasons why these requirements have been included?
  • 17. Checklist questionsIs each requirement uniquely identified?Are specialised terms defined in the glossaryDoes a requirement stand on its own or do you have to examine other requirements to understand what it means? Do individual requirements use the terms consistentlyIs the same service requested in different requirements? Are there any contradictions in these requests?If a requirement makes reference to some other facilities, are these described elsewhere in the document?Are related requirements grouped together? If not, do they refer to each other?
  • 18. Requirements problem example“4. EDDIS will be configurable so that it will comply with the requirements of all UK and (where relevant) international copyright legislation. Minimally, this means that EDDIS must provide a form for the user to sign the Copyright Declaration statement. It also means that EDDIS must keep track of Copyright Declaration statements which have been signed/not-signed. Under no circumstances must an order be sent to the supplier if the copyright statement has not been signed.”
  • 19. ProblemsIncompletenessWhat international copyright legislation is relevant?What happens if the copyright declaration is not signed?If a signature is a digital signature, how is it assigned?AmbiguityWhat does signing an electronic form mean? Is this a physical signature or a digital signature?StandardsMore than 1 requirement. Maintenance of copyright is one requirement; issue of documents is another
  • 20. PrototypingPrototypes for requirements validation demonstrate the requirements and help stakeholders discover problemsValidation prototypes should be complete, reasonably efficient and robust. It should be possible to use them in the same way as the required systemUser documentation and training should be provided
  • 22. Prototyping activitiesChoose prototype testers The best testers are users who are fairly experienced and who are open-minded about the use of new systems. End-users who do different jobs should be involved so that different areas of system functionality will be covered. Develop test scenarios Careful planning is required to draw up a set of test scenarios which provide broad coverage of the requirements. End-users shouldn’t just play around with the system as this may never exercise critical system features. Execute scenarios The users of the system work, usually on their own, to try the system by executing the planned scenarios. Document problems Its usually best to define some kind of electronic or paper problem report form which users fill in when they encounter a problem.
  • 23. User manual developmentWriting a user manual from the requirements forces a detailed requirements analysis and thus can reveal problems with the documentInformation in the user manualDescription of the functionality and how it is implementedWhich parts of the system have not been implementedHow to get out of troubleHow to install and get started with the system
  • 24. Model validationValidation of system models is an essential part of the validation processObjectives of model validationTo demonstrate that each model is self-consistentIf there are several models of the system, to demonstrate that these are internally and externally consistentTo demonstrate that the models accurately reflect the real requirements of system stakeholdersSome checking is possible with automated toolsParaphrasing the model is an effective checking technique
  • 27. Requirements testingEach requirement should be testable i.e. it should be possible to define tests to check whether or not that requirement has been met.Inventing requirements tests is an effective validation technique as missing or ambiguous information in the requirements description may make it difficult to formulate testsEach functional requirement should have an associated test
  • 28. Test case definitionWhat usage scenario might be used to check the requirement?Does the requirement, on its own, include enough information to allow a test to be defined?Is it possible to test the requirement using a single test or are multiple test cases required?Could the requirement be re-stated to make the test cases more obvious?
  • 29. Test record formThe requirement’s identifier There should be at least one for each requirement.Related requirements These should be referenced as the test may also be relevant to these requirements.Test description A brief description of the test and why this is an objective requirements test. This should include system inputs and corresponding outputs.Requirements problems A description of problems which made test definition difficult or impossible. Comments and recommendations These are advice on how to solve requirements problems which have been discovered.
  • 31. Hard-to-test requirementsSystem requirements Requirements which apply to the system as a whole. In general, these are the most difficult requirements to validate irrespective of the method used as they may be influenced by any of the functional requirements. Tests, which are not executed, cannot test for non-functional system-wide characteristics such as usability. Exclusive requirements These are requirements which exclude specific behaviour. For example, a requirement may state that system failures must never corrupt the system database. It is not possible to test such a requirement exhaustively.Some non-functional requirements Some non-functional requirements, such as reliability requirements, can only be tested with a large test set. Designing this test set does not help with requirements validation.
  • 32. Key pointsRequirements validation should focus on checking the final draft of the requirements document for conflicts, omissions and deviations from standards. Inputs to the validation process are the requirements document, organisational standards and implicit organisational knowledge. The outputs are a list of requirements problems and agreed actions to address these problems.Reviews involve a group of people making a detailed analysis of the requirements.Review costs can be reduced by checking the requirements before the review for deviations from organisational standards. These may result from more serious requirements problems.
  • 33. Key pointsChecklists of what to look for may be used to drive a requirements review process.Prototyping is effective for requirements validation if a prototype has been developed during the requirements elicitation stage.Systems models may be validated by paraphrasing them. This means that they are systematically translated into a natural language description.Designing tests for requirements can reveal problems with the requirements. If the requirement is unclear, it may be impossible to define a test for it.