SlideShare a Scribd company logo
1 of 40
Quality Attributes of
Requirements Document
Lecture # 9
1
Requirements Document - 1
• The requirements document is a formal document
used to communicate the requirements to
customers, engineers and managers
• It is also known as software requirements
specifications or SRS
• Requirements documents are usually written in
natural languages (like, English, Japanese, French,
etc.), which are ambiguous in themselves
2
Requirements Document - 2
• Functional requirements
• Non-functional requirements
• Some of these are quality attributes of a software product
• Definitions of other systems which the system must
integrate with
3
Requirements Document - 3
• Information about the application domain of the
system, e.g., how to carry out particular types of
computation
• Constraints on the process used to develop the
system
4
Requirements Document - 4
• It should include both the user requirements for a
system and a detailed specification of the system
requirements
• In some cases, the user and system requirements
may be integrated into one description, while in
other cases user requirements are described
before (as introduction to) system requirements
5
Requirements Document - 5
• For software systems, the requirements
document may include a description of the
hardware on which the system is to run
• The document should always include an
introductory chapter which provides an overview
of the system and the business needs
6
Requirements Document - 7
• A glossary should also be included to document technical
terms
• And because multiple stakeholders will be reading
documents and they need to understand meanings of
different terms
• Also because stakeholders have different educational
backgrounds
7
Requirements Document - 8
• Structure of requirements document is also very
important and is developed on the basis of following
information
• Type of the system
• Level of detail included in requirements
• Organizational practice
• Budget and schedule for RE process
8
What Should Not be Included in
SRS?
• Project requirements (for example, staffing, schedules,
costs, milestones, activities, phases, reporting
procedures)
• Designs
• Product assurance plans (for example, configuration
management plans, verification and validation plans, test
plans, quality assurance plans)
9
Users of Requirements Documents
• System customers
• Managers
• System engineers
• System test engineers
• System maintenance engineers
10
Requirements for Requirements
Document - 1
• It should specify only external behavior
• It should specify constraints on the implementation
• It should be easy to change
• It should serve as a reference tool for system maintainers
11
Requirements for Requirements
Document - 2
• It should record forethought about the lifecycle of the
system
• It should characterize acceptable responses to undesired
events
• Heninger (1980)
12
Organization of Requirements
Document?
• Clients/developers may have there own way of organizing
an SRS
• US Department of Defense
• NASA
• IEEE/ANSI 830-1993 Standard
13
IEEE/ANSI Standard 830-1993
1. Introduction
2. General description
3. Specific requirements
4. Appendices
5. Index
14
Quality Attributes of Requirements
Document - 1
• Correct
• Unambiguous
• Complete
• Verifiable
• Consistent
15
Quality Attributes of Requirements
Document - 2
• Understandable by customer
• Modifiable
• Traced
• Traceable
• Design independent
16
Quality Attributes of Requirements
Document - 3
• Annotated
• Concise
• Organized
17
Correct
• An SRS is correct if and only if every requirement stated
therein represents something required of the system to
be built
18
Unambiguous
• An SRS is unambiguous if and only if every requirement
stated therein has only one interpretation
• At a minimum all terms with multiple meanings must
appear in a glossary
• All natural languages invite ambiguity
19
Example of Ambiguity
• “Aircraft that are nonfriendly and have an unknown
mission or the potential to enter restricted airspace
within 5 minutes shall raise an alert”
• Combination of “and” and “or” make this an ambiguous
requirement
20
Complete - 1
• An SRS is complete if it possesses the following four
qualities
• Everything that the software is supposed to do is included in the
SRS
• Definitions of the responses of the software to all realizable
classes of input data in all realizable classes of situations is
included
21
Complete - 2
• All pages are numbered; all figures and tables are numbered,
named, and referenced; all terms and units of measure are
provided; and all referenced material and sections are present
• No sections are marked “To Be Determined (TBD)
22
Verifiable
• An SRS is verifiable if and only if every requirement
stated therein is verifiable. A requirement is verifiable if
and only if there exists some finite cost effective process
with which a person or machine can check that the actual
as-built software product meets the requirement
23
Consistent - 1
• An SRS is consistent if and only if:
• No requirement stated therein is in conflict with other preceding
documents, such as specification or a statement of work
• No subset of individual requirements stated therein conflict.
24
Consistent - 2
• Conflicts can be any of the following
• Conflicting behavior
• Conflicting terms
• Conflicting characteristics
• Temporal inconsistency
25
Understandable by Customers
• Primary readers of SRS in many cases are customers or
users, who tend to be experts in an application area but
are not necessarily trained in computer science
26
Modifiable
• An SRS is modifiable if its structure and style are
such that any necessary changes to the
requirements can be made easily, completely,
and consistently
• Existence of index, table of contents, cross-
referencing, and appropriate page-numbering
• This attribute deals with format and style of SRS
27
Traced
• An SRS is traced if the origin of its requirements is clear.
That means that the SRS includes references to earlier
supportive documents
28
Traceable
• An SRS is traceable if it written in a manner that
facilitates the referencing of each individual requirement
stated therein
29
Techniques forTraceability
• Number every paragraph hierarchically
• Number every paragraph hierarchically and never
include more than one requirement in any paragraph
• Number every requirement with a unique number in
parentheses immediately after the requirement
appears in the SRS
• Use a convention for indicating a requirement, e.g.,
use shall statement
30
Traced andTraceability - 1
• Backward-from-requirements traceability implies that we
know why every requirement in the SRS exists.
• Forward-from-requirements traceability implies that we
understand which components of the software satisfy
each requirement
31
Traced andTraceability - 2
• Backward-to-requirements traceability implies that every
software component explicitly references those
requirements that it helps to satisfy
• Forward-to-requirements traceability implies that all
documents that preceded the SRS can reference the SRS
32
Design Independent
• An SRS is design independent if it does not imply a
specific software architecture or algorithm
33
Annotated
• The purpose of annotating requirements contained in an
SRS is to provide guidance to the development
organization
• Relative necessity (E/D/O)
• Relative stability
34
Concise
• The SRS that is shorter is better, given that it meets all
characteristics
35
Organized
• An SRS is organized if requirements contained therein are
easy to locate. This implies that requirements are
arranged so that requirements that are related are co-
related
36
Phrases to Look for in an SRS - 1
• Always, Every, All, None, Never
• Certainly,Therefore, Clearly, Obviously, Evidently
• Some, Sometimes, Often, Usually, Ordinarily,
Customarily, Most, Mostly
• Etc., And So Forth, And So On, SuchAs
37
Phrases to Look for in an SRS - 2
• Good, Fast, Cheap, Efficient, Small, Stable
• Handled, Processed, Rejected, Skipped, Eliminated
• If…Then…(but missing Else)
38
The Balancing Act
• Achieving all the preceding attributes in an SRS is
impossible
• Once you become involved in writing an SRS, you will
gain insight and experience necessary to do the balancing
act
• There is no such thing as a perfect SRS
39
References
• Software Quality: Analysis and Guidelines for Success
by Capers Jones
• RequirementsAnalysis and Specification by Alan M.
Davis
• A Practitioner’s Approach to Software Engineering
by Roger Pressman
• Software Engineering 6th Edition, by I. Sommerville,
2000
• ‘Software Engineering Quality Practices’ by R. K.
Kandt, Auerbach Publications, 2006
40

More Related Content

Similar to vu-sqa-lecture09.ppt

1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx
jeremylockett77
 
1 software requirements engineering-01
1 software requirements engineering-011 software requirements engineering-01
1 software requirements engineering-01
Zaman Khan
 

Similar to vu-sqa-lecture09.ppt (20)

SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
software requirement specifcation.pptx
software requirement specifcation.pptxsoftware requirement specifcation.pptx
software requirement specifcation.pptx
 
Software Requirements
Software RequirementsSoftware Requirements
Software Requirements
 
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf2nd MODULE  Software Requirements   _ SW ENGG  22CSE141.pdf
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
 
Software requirements specifications documents pdf
Software requirements specifications documents pdfSoftware requirements specifications documents pdf
Software requirements specifications documents pdf
 
SRS- Software Requirement Management
SRS- Software Requirement ManagementSRS- Software Requirement Management
SRS- Software Requirement Management
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Lecture 2 & 3.pptx
Lecture 2 & 3.pptxLecture 2 & 3.pptx
Lecture 2 & 3.pptx
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software Engineering .pdf
Software Engineering .pdfSoftware Engineering .pdf
Software Engineering .pdf
 
1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx1 Software Requirements Descriptions and specification.docx
1 Software Requirements Descriptions and specification.docx
 
Software requirement engineering
Software requirement engineeringSoftware requirement engineering
Software requirement engineering
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
1 software requirements engineering-01
1 software requirements engineering-011 software requirements engineering-01
1 software requirements engineering-01
 
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
 
Un it 2-se-mod-staff
Un it 2-se-mod-staffUn it 2-se-mod-staff
Un it 2-se-mod-staff
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
 
System design techniques and networks
System design techniques and networksSystem design techniques and networks
System design techniques and networks
 

Recently uploaded

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 

Recently uploaded (20)

2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 

vu-sqa-lecture09.ppt

  • 1. Quality Attributes of Requirements Document Lecture # 9 1
  • 2. Requirements Document - 1 • The requirements document is a formal document used to communicate the requirements to customers, engineers and managers • It is also known as software requirements specifications or SRS • Requirements documents are usually written in natural languages (like, English, Japanese, French, etc.), which are ambiguous in themselves 2
  • 3. Requirements Document - 2 • Functional requirements • Non-functional requirements • Some of these are quality attributes of a software product • Definitions of other systems which the system must integrate with 3
  • 4. Requirements Document - 3 • Information about the application domain of the system, e.g., how to carry out particular types of computation • Constraints on the process used to develop the system 4
  • 5. Requirements Document - 4 • It should include both the user requirements for a system and a detailed specification of the system requirements • In some cases, the user and system requirements may be integrated into one description, while in other cases user requirements are described before (as introduction to) system requirements 5
  • 6. Requirements Document - 5 • For software systems, the requirements document may include a description of the hardware on which the system is to run • The document should always include an introductory chapter which provides an overview of the system and the business needs 6
  • 7. Requirements Document - 7 • A glossary should also be included to document technical terms • And because multiple stakeholders will be reading documents and they need to understand meanings of different terms • Also because stakeholders have different educational backgrounds 7
  • 8. Requirements Document - 8 • Structure of requirements document is also very important and is developed on the basis of following information • Type of the system • Level of detail included in requirements • Organizational practice • Budget and schedule for RE process 8
  • 9. What Should Not be Included in SRS? • Project requirements (for example, staffing, schedules, costs, milestones, activities, phases, reporting procedures) • Designs • Product assurance plans (for example, configuration management plans, verification and validation plans, test plans, quality assurance plans) 9
  • 10. Users of Requirements Documents • System customers • Managers • System engineers • System test engineers • System maintenance engineers 10
  • 11. Requirements for Requirements Document - 1 • It should specify only external behavior • It should specify constraints on the implementation • It should be easy to change • It should serve as a reference tool for system maintainers 11
  • 12. Requirements for Requirements Document - 2 • It should record forethought about the lifecycle of the system • It should characterize acceptable responses to undesired events • Heninger (1980) 12
  • 13. Organization of Requirements Document? • Clients/developers may have there own way of organizing an SRS • US Department of Defense • NASA • IEEE/ANSI 830-1993 Standard 13
  • 14. IEEE/ANSI Standard 830-1993 1. Introduction 2. General description 3. Specific requirements 4. Appendices 5. Index 14
  • 15. Quality Attributes of Requirements Document - 1 • Correct • Unambiguous • Complete • Verifiable • Consistent 15
  • 16. Quality Attributes of Requirements Document - 2 • Understandable by customer • Modifiable • Traced • Traceable • Design independent 16
  • 17. Quality Attributes of Requirements Document - 3 • Annotated • Concise • Organized 17
  • 18. Correct • An SRS is correct if and only if every requirement stated therein represents something required of the system to be built 18
  • 19. Unambiguous • An SRS is unambiguous if and only if every requirement stated therein has only one interpretation • At a minimum all terms with multiple meanings must appear in a glossary • All natural languages invite ambiguity 19
  • 20. Example of Ambiguity • “Aircraft that are nonfriendly and have an unknown mission or the potential to enter restricted airspace within 5 minutes shall raise an alert” • Combination of “and” and “or” make this an ambiguous requirement 20
  • 21. Complete - 1 • An SRS is complete if it possesses the following four qualities • Everything that the software is supposed to do is included in the SRS • Definitions of the responses of the software to all realizable classes of input data in all realizable classes of situations is included 21
  • 22. Complete - 2 • All pages are numbered; all figures and tables are numbered, named, and referenced; all terms and units of measure are provided; and all referenced material and sections are present • No sections are marked “To Be Determined (TBD) 22
  • 23. Verifiable • An SRS is verifiable if and only if every requirement stated therein is verifiable. A requirement is verifiable if and only if there exists some finite cost effective process with which a person or machine can check that the actual as-built software product meets the requirement 23
  • 24. Consistent - 1 • An SRS is consistent if and only if: • No requirement stated therein is in conflict with other preceding documents, such as specification or a statement of work • No subset of individual requirements stated therein conflict. 24
  • 25. Consistent - 2 • Conflicts can be any of the following • Conflicting behavior • Conflicting terms • Conflicting characteristics • Temporal inconsistency 25
  • 26. Understandable by Customers • Primary readers of SRS in many cases are customers or users, who tend to be experts in an application area but are not necessarily trained in computer science 26
  • 27. Modifiable • An SRS is modifiable if its structure and style are such that any necessary changes to the requirements can be made easily, completely, and consistently • Existence of index, table of contents, cross- referencing, and appropriate page-numbering • This attribute deals with format and style of SRS 27
  • 28. Traced • An SRS is traced if the origin of its requirements is clear. That means that the SRS includes references to earlier supportive documents 28
  • 29. Traceable • An SRS is traceable if it written in a manner that facilitates the referencing of each individual requirement stated therein 29
  • 30. Techniques forTraceability • Number every paragraph hierarchically • Number every paragraph hierarchically and never include more than one requirement in any paragraph • Number every requirement with a unique number in parentheses immediately after the requirement appears in the SRS • Use a convention for indicating a requirement, e.g., use shall statement 30
  • 31. Traced andTraceability - 1 • Backward-from-requirements traceability implies that we know why every requirement in the SRS exists. • Forward-from-requirements traceability implies that we understand which components of the software satisfy each requirement 31
  • 32. Traced andTraceability - 2 • Backward-to-requirements traceability implies that every software component explicitly references those requirements that it helps to satisfy • Forward-to-requirements traceability implies that all documents that preceded the SRS can reference the SRS 32
  • 33. Design Independent • An SRS is design independent if it does not imply a specific software architecture or algorithm 33
  • 34. Annotated • The purpose of annotating requirements contained in an SRS is to provide guidance to the development organization • Relative necessity (E/D/O) • Relative stability 34
  • 35. Concise • The SRS that is shorter is better, given that it meets all characteristics 35
  • 36. Organized • An SRS is organized if requirements contained therein are easy to locate. This implies that requirements are arranged so that requirements that are related are co- related 36
  • 37. Phrases to Look for in an SRS - 1 • Always, Every, All, None, Never • Certainly,Therefore, Clearly, Obviously, Evidently • Some, Sometimes, Often, Usually, Ordinarily, Customarily, Most, Mostly • Etc., And So Forth, And So On, SuchAs 37
  • 38. Phrases to Look for in an SRS - 2 • Good, Fast, Cheap, Efficient, Small, Stable • Handled, Processed, Rejected, Skipped, Eliminated • If…Then…(but missing Else) 38
  • 39. The Balancing Act • Achieving all the preceding attributes in an SRS is impossible • Once you become involved in writing an SRS, you will gain insight and experience necessary to do the balancing act • There is no such thing as a perfect SRS 39
  • 40. References • Software Quality: Analysis and Guidelines for Success by Capers Jones • RequirementsAnalysis and Specification by Alan M. Davis • A Practitioner’s Approach to Software Engineering by Roger Pressman • Software Engineering 6th Edition, by I. Sommerville, 2000 • ‘Software Engineering Quality Practices’ by R. K. Kandt, Auerbach Publications, 2006 40