SlideShare a Scribd company logo
The Software Requirements Specification
The Software RequirementsSpecification(SRS) isacommunicationtool betweenstakeholdersand
software designers.The specificgoalsof the SRSare:
An example organization of an SRS is as follows:
Introduction
Purpose
Definitions
Systemoverview
References
Overall description
Productperspective
SystemInterfaces
User Interfaces
Hardware interfaces
Software interfaces
CommunicationInterfaces
MemoryConstraints
Designconstraints
Operations
Site AdaptationRequirements
Productfunctions
User characteristics
Constraints,assumptionsanddependencies
Specificrequirements
External interface requirements
Functional requirements
The Software Requirements Specification
Performance requirements
Logical database requirement
Software Systemattributes
Reliability
Availability
Security
Maintainability
Portability
Facilitatingreviews
Describingthe scope of work
Providingareference tosoftware designers(i.e.navigationaids,documentstructure)
Providingaframeworkfortesting primaryandsecondaryuse cases
Includingfeaturestocustomerrequirements
Providingaplatformforongoingrefinement(viaincomplete specsorquestions)
ReliabilityAvailabilitySecurityMaintainabilityPortability.
Concept of operations
Requirements engineering
Software Engineering Bodyof Knowledge (SWEBOK)
Design specification
Specification (technical standard)
Formal specification
Concept of Operation:
ConOpsisa documentdescribingthe characteristicsof aproposedsystemfromthe viewpointof an
individualwhowilluse thatsystem.Itisusedto communicate the quantitative andqualitative system
characteristicstoall stakeholders.CONOPSare widelyusedinthe military,governmental servicesand
otherfields.
A CONOPSgenerallyevolvesfroma conceptand isa descriptionof how asetof capabilitiesmaybe
employedtoachieve desiredobjectivesorendstate.
The Software Requirements Specification
In the fieldof jointmilitaryoperations,aCONOPSinDoDterminologyisaverbal orgraphic statement
that clearlyandconciselyexpresseswhatthe jointforce commanderintendstoaccomplishandhowit
will be done usingavailable resources.CONOPSmayalsobe usedorsummarizedinsystemacquisition
DODAFdescriptionssuchasthe OV-1 HighLevel OperationalConceptGraphic.
Requirements Engineering:
Requirementsengineering(RE) referstothe processof defining,documentingandmaintaining
requirementstothe sub-fieldsof systemsengineeringandsoftware engineeringconcernedwiththis
process.
In the waterfall model,requirementsengineeringispresentedasthe firstphase of the development
process.Latersoftware developmentmethods,includingthe Rational UnifiedProcess(RUP),extreme
programming(XP) andScrumassume that requirementsengineeringcontinuesthroughthe lifetimeof a
system.
Requirementmanagementwhichisasub-functionof SystemsEngineeringpracticesare alsoindexedin
the INCOSE(International Council onSystemsEngineering) manuals.
Software EngineeringBodyof Knowledge(SWEBOK):
The Software EngineeringBodyof Knowledge (SWEBOK)isaninternationalstandardISO/IECTR
19759:2005[1] specifyingaguide tothe generallyacceptedSoftware EngineeringBodyof Knowledge.
The Guide to the Software EngineeringBodyof Knowledge (SWEBOKGuide) hasbeencreatedthrough
cooperationamongseveral professionalbodiesandmembersof industryandispublishedbythe IEEE
ComputerSociety(IEEE).The standardcan be accessedfreelyfromthe IEEEComputerSociety.Inlate
2013, SWEBOKV3 was approvedforpublicationandreleased.
Designspecification:
A designspecificationisadetaileddocumentprovidinginformationaboutthe characteristicsof a
projectto setcriteriathe developerswill needtomeet.Itsuse iscalledforwhere astructure or product
has to be specially made tomeetaunique need.Forexample,adesignspecificationmustinclude all
necessarydrawings,dimensions,environmental factors,ergonomicfactors,aestheticfactors,andcost,
maintenance thatwill be needed,quality,safety,documentationanddescription.Italsotellsspecific
examplesof howthe designof the projectshouldbe executed,helpingothersworkproperly.
The Software Requirements Specification
Specification (Technical Standard):
A designspecificationisadetaileddocumentprovidinginformationaboutthe characteristics of a
projectto setcriteriathe developerswill needtomeet.Itsuse iscalledforwhere astructure or product
has to be speciallymade tomeetaunique need.Forexample,adesignspecificationmustinclude all
necessarydrawings,dimensions,environmental factors,ergonomicfactors,aestheticfactors,andcost,
maintenance thatwill be needed,quality,safety,documentationanddescription.Italsotellsspecific
examplesof howthe designof the projectshouldbe executed,helpingothersworkproperly.
Formal Specification:
In computerscience,formal specificationsare mathematicallybasedtechniqueswhose purpose are to
helpwiththe implementationof systemsandsoftware.Theyare usedtodescribe asystem, toanalyze
itsbehavior,andto aidinits designbyverifyingkeypropertiesof interestthroughrigorousandeffective
reasoningtools.These specificationsare formal inthe sense thattheyhave a syntax,theirsemanticsfall
withinone domain,andtheyare able tobe usedtoinferuseful information.
The Software Requirements Specification
Characteristics of a Good Software Requirements Specification (SRS)
Recently,Ineedtohave a lookat the IEEE SRS Standard.I think,all of youknow verywell aboutit.
However,here,Iwantto reemphasize some basicpointsabout goodSRScharacteristicsbriefly.
An SRS should be:
Correct
An SRS is correct if, and only if, every requirementstated therein is one thatthe software shall meet.Traceability
makes this procedure easier and less prone to error.
Unambiguous
An SRS is unambiguous if,and only if, every requirementstated therein has onlyone interpretation.As a minimum,
this requires thateach characteristic of the final product be described using a single unique term.
Complete
An SRS is complete if, and only if, it includes the following elements:
The Software Requirements Specification
 All significantrequirements,whether relating to functionality, performance,design constraints,attributes,or
external interfaces.In particular any external requirements imposed bya system specification should be
acknowledged and treated.
 Definition of the responses ofthe software to all realizable classes ofinputdata in all realizable classes of
situations.Note thatit is importantto specifythe responses to both valid and invalid inputvalues.
 Full labels and references to all figures,tables,and diagrams in the SRS and definition of all terms and units of
measure.
Consistent
Consistencyrefers to internal consistency.If an SRS does notagree with some higher-level document,such as a
system requirements specification,then it is not correct. An SRS is internallyconsistentif,and only if, no subsetof
individual requirements described in itconflict.
Ranked for importance and/or stability
An SRS is ranked for importance and/or stabilityif each requirementin it has an identifier to indicate either the
importance or stabilityof that particular requirement.Typically, all of the requirements thatrelate to a software
productare not equallyimportant.Some requirements maybe essential,especiallyfor life-critical applications,while
others may be desirable.Each requirementin the SRS should be identified to make these differences clear and
explicit.
Verifiable
An SRS is verifiable if, and only if, every requirementstated 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 software
productmeets the requirement.
Non verifiable requirements include statements such as "works well","good human interface",and "shall usually
happen".These requirements cannotbe verified because itis impossible to define the terms "good","well", or
"usually".
Modifiable
An SRS is modifiable if,and only if, its structure and style are such that any changes to the requirements can be
made easily,completely,and consistentlywhile retaining the structure and style. Modifiability generallyrequires an
SRS to
 Have a coherentand easy-to-use organization with a table of contents,an index, and explicit cross referencing;
 Not be redundant(i.e., the same requirementshould notappear in more than one place in the SRS);
 Express each requirementseparately,rather than intermixed with other requirements.
Traceable
An SRS is traceable if the origin of each of its requirements is clear and ifit facilitates the referencing of each
requirementin future developmentor enhancementdocumentation.The following two types of traceability are
recommended:
 Backward traceability (i.e.,to previous stages of development). This depends upon each requirementexplicitly
referencing its source in earlier documents.
The Software Requirements Specification
 Forward traceability (i.e., to all documents spawned by the SRS). This depends upon each requirementin the
SRS having a unique name or reference number.
The Software Requirements Specification
The Software Requirements Specification

More Related Content

What's hot

System requirements specification (srs)
System requirements specification (srs)System requirements specification (srs)
System requirements specification (srs)
Savyasachi14
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
Ayaz Shariff
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master Template
Wayne Chen
 
Software Specification Requirement
Software Specification RequirementSoftware Specification Requirement
Software Specification Requirement
suhasreddy1
 
Anil kumar sap security and grc consultant
Anil kumar sap security and grc consultantAnil kumar sap security and grc consultant
Anil kumar sap security and grc consultant
Anil Kumar
 
software requirement
software requirementsoftware requirement
software requirement
ahmed zewita
 
Anil kumar sap security and grc consultant
Anil kumar sap security and grc consultantAnil kumar sap security and grc consultant
Anil kumar sap security and grc consultant
Anil Kumar
 
Ppt
PptPpt
Ch 2 types of reqirement
Ch 2  types of reqirementCh 2  types of reqirement
Ch 2 types of reqirement
Fish Abe
 
Anil kumar sap security & GRC
Anil kumar sap security & GRCAnil kumar sap security & GRC
Anil kumar sap security & GRC
Anil Kumar
 
6. software requirements
6. software requirements6. software requirements
6. software requirements
Muhammad Sikandar Mustafa
 
Water management portal
Water management portalWater management portal
Water management portal
Pradeep Kiran
 
SOFTWRE REQUIREMNETS SE
 SOFTWRE REQUIREMNETS SE SOFTWRE REQUIREMNETS SE
SOFTWRE REQUIREMNETS SE
Abrar ali
 
CSV SDLC Comparision
CSV SDLC ComparisionCSV SDLC Comparision
CSV SDLC Comparision
Aniruddha Mehta
 
Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirements
Habeeb Mahaboob
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
Vishal Singh
 
Requirement engineering
Requirement engineeringRequirement engineering
Requirement engineering
Benazir Fathima
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
OSSCube
 
Lecture 03
Lecture 03Lecture 03
Lecture 03
Rana Ali
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
University of Haripur
 

What's hot (20)

System requirements specification (srs)
System requirements specification (srs)System requirements specification (srs)
System requirements specification (srs)
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master Template
 
Software Specification Requirement
Software Specification RequirementSoftware Specification Requirement
Software Specification Requirement
 
Anil kumar sap security and grc consultant
Anil kumar sap security and grc consultantAnil kumar sap security and grc consultant
Anil kumar sap security and grc consultant
 
software requirement
software requirementsoftware requirement
software requirement
 
Anil kumar sap security and grc consultant
Anil kumar sap security and grc consultantAnil kumar sap security and grc consultant
Anil kumar sap security and grc consultant
 
Ppt
PptPpt
Ppt
 
Ch 2 types of reqirement
Ch 2  types of reqirementCh 2  types of reqirement
Ch 2 types of reqirement
 
Anil kumar sap security & GRC
Anil kumar sap security & GRCAnil kumar sap security & GRC
Anil kumar sap security & GRC
 
6. software requirements
6. software requirements6. software requirements
6. software requirements
 
Water management portal
Water management portalWater management portal
Water management portal
 
SOFTWRE REQUIREMNETS SE
 SOFTWRE REQUIREMNETS SE SOFTWRE REQUIREMNETS SE
SOFTWRE REQUIREMNETS SE
 
CSV SDLC Comparision
CSV SDLC ComparisionCSV SDLC Comparision
CSV SDLC Comparision
 
Design for non functional requirements
Design for non functional requirementsDesign for non functional requirements
Design for non functional requirements
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Requirement engineering
Requirement engineeringRequirement engineering
Requirement engineering
 
Non functional requirements. do we really care…?
Non functional requirements. do we really care…?Non functional requirements. do we really care…?
Non functional requirements. do we really care…?
 
Lecture 03
Lecture 03Lecture 03
Lecture 03
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 

Similar to The software requirements specification

Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
sslovepk
 
Writing srs
Writing srsWriting srs
Writing srs
Vishnu Vardhan
 
Lec srs
Lec srsLec srs
Lec srs
huzaifa tariq
 
Requirement and Specification
Requirement and SpecificationRequirement and Specification
Requirement and Specification
sarojsaroza
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
kunj desai
 
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptxSOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
Maharshi Dayanand University Rohtak
 
SRS- Software Requirement Management
SRS- Software Requirement ManagementSRS- Software Requirement Management
SRS- Software Requirement Management
MuhammadAhmad1135
 
SRS.pdf
SRS.pdfSRS.pdf
SRS.pdf
SRS.pdfSRS.pdf
Lecture 2 & 3.pptx
Lecture 2 & 3.pptxLecture 2 & 3.pptx
Lecture 2 & 3.pptx
RaoShahid10
 
Rm tools
Rm toolsRm tools
Rm tools
Anurag Tiwari
 
Writing software requirement document
Writing software requirement documentWriting software requirement document
Writing software requirement document
Sunita Sahu
 
Writing software requirement document
Writing software requirement documentWriting software requirement document
Writing software requirement document
Sunita Sahu
 
Business requirement analysis session 5
Business requirement analysis   session 5Business requirement analysis   session 5
Business requirement analysis session 5
sampad_senapati
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
Akash Kumar Dhameja
 
Abdulmoez fakhri .pptx
Abdulmoez fakhri .pptxAbdulmoez fakhri .pptx
Abdulmoez fakhri .pptx
waniselabbar1
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specification
Deepak Sharma
 
Chap1 RE Introduction
Chap1 RE IntroductionChap1 RE Introduction
Chap1 RE Introduction
Ian Sommerville
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentals
JigyasaAgrawal7
 
Lecture 1.pdf
Lecture 1.pdfLecture 1.pdf
Lecture 1.pdf
RaoShahid10
 

Similar to The software requirements specification (20)

Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Writing srs
Writing srsWriting srs
Writing srs
 
Lec srs
Lec srsLec srs
Lec srs
 
Requirement and Specification
Requirement and SpecificationRequirement and Specification
Requirement and Specification
 
Requirement specification (SRS)
Requirement specification (SRS)Requirement specification (SRS)
Requirement specification (SRS)
 
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptxSOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
SOFTWARE REQUIRE SPECIFICATIONS IN SOFTWARE ENGINEERING.pptx
 
SRS- Software Requirement Management
SRS- Software Requirement ManagementSRS- Software Requirement Management
SRS- Software Requirement Management
 
SRS.pdf
SRS.pdfSRS.pdf
SRS.pdf
 
SRS.pdf
SRS.pdfSRS.pdf
SRS.pdf
 
Lecture 2 & 3.pptx
Lecture 2 & 3.pptxLecture 2 & 3.pptx
Lecture 2 & 3.pptx
 
Rm tools
Rm toolsRm tools
Rm tools
 
Writing software requirement document
Writing software requirement documentWriting software requirement document
Writing software requirement document
 
Writing software requirement document
Writing software requirement documentWriting software requirement document
Writing software requirement document
 
Business requirement analysis session 5
Business requirement analysis   session 5Business requirement analysis   session 5
Business requirement analysis session 5
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Abdulmoez fakhri .pptx
Abdulmoez fakhri .pptxAbdulmoez fakhri .pptx
Abdulmoez fakhri .pptx
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specification
 
Chap1 RE Introduction
Chap1 RE IntroductionChap1 RE Introduction
Chap1 RE Introduction
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentals
 
Lecture 1.pdf
Lecture 1.pdfLecture 1.pdf
Lecture 1.pdf
 

Recently uploaded

Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 

Recently uploaded (20)

Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 

The software requirements specification

  • 1. The Software Requirements Specification The Software RequirementsSpecification(SRS) isacommunicationtool betweenstakeholdersand software designers.The specificgoalsof the SRSare: An example organization of an SRS is as follows: Introduction Purpose Definitions Systemoverview References Overall description Productperspective SystemInterfaces User Interfaces Hardware interfaces Software interfaces CommunicationInterfaces MemoryConstraints Designconstraints Operations Site AdaptationRequirements Productfunctions User characteristics Constraints,assumptionsanddependencies Specificrequirements External interface requirements Functional requirements
  • 2. The Software Requirements Specification Performance requirements Logical database requirement Software Systemattributes Reliability Availability Security Maintainability Portability Facilitatingreviews Describingthe scope of work Providingareference tosoftware designers(i.e.navigationaids,documentstructure) Providingaframeworkfortesting primaryandsecondaryuse cases Includingfeaturestocustomerrequirements Providingaplatformforongoingrefinement(viaincomplete specsorquestions) ReliabilityAvailabilitySecurityMaintainabilityPortability. Concept of operations Requirements engineering Software Engineering Bodyof Knowledge (SWEBOK) Design specification Specification (technical standard) Formal specification Concept of Operation: ConOpsisa documentdescribingthe characteristicsof aproposedsystemfromthe viewpointof an individualwhowilluse thatsystem.Itisusedto communicate the quantitative andqualitative system characteristicstoall stakeholders.CONOPSare widelyusedinthe military,governmental servicesand otherfields. A CONOPSgenerallyevolvesfroma conceptand isa descriptionof how asetof capabilitiesmaybe employedtoachieve desiredobjectivesorendstate.
  • 3. The Software Requirements Specification In the fieldof jointmilitaryoperations,aCONOPSinDoDterminologyisaverbal orgraphic statement that clearlyandconciselyexpresseswhatthe jointforce commanderintendstoaccomplishandhowit will be done usingavailable resources.CONOPSmayalsobe usedorsummarizedinsystemacquisition DODAFdescriptionssuchasthe OV-1 HighLevel OperationalConceptGraphic. Requirements Engineering: Requirementsengineering(RE) referstothe processof defining,documentingandmaintaining requirementstothe sub-fieldsof systemsengineeringandsoftware engineeringconcernedwiththis process. In the waterfall model,requirementsengineeringispresentedasthe firstphase of the development process.Latersoftware developmentmethods,includingthe Rational UnifiedProcess(RUP),extreme programming(XP) andScrumassume that requirementsengineeringcontinuesthroughthe lifetimeof a system. Requirementmanagementwhichisasub-functionof SystemsEngineeringpracticesare alsoindexedin the INCOSE(International Council onSystemsEngineering) manuals. Software EngineeringBodyof Knowledge(SWEBOK): The Software EngineeringBodyof Knowledge (SWEBOK)isaninternationalstandardISO/IECTR 19759:2005[1] specifyingaguide tothe generallyacceptedSoftware EngineeringBodyof Knowledge. The Guide to the Software EngineeringBodyof Knowledge (SWEBOKGuide) hasbeencreatedthrough cooperationamongseveral professionalbodiesandmembersof industryandispublishedbythe IEEE ComputerSociety(IEEE).The standardcan be accessedfreelyfromthe IEEEComputerSociety.Inlate 2013, SWEBOKV3 was approvedforpublicationandreleased. Designspecification: A designspecificationisadetaileddocumentprovidinginformationaboutthe characteristicsof a projectto setcriteriathe developerswill needtomeet.Itsuse iscalledforwhere astructure or product has to be specially made tomeetaunique need.Forexample,adesignspecificationmustinclude all necessarydrawings,dimensions,environmental factors,ergonomicfactors,aestheticfactors,andcost, maintenance thatwill be needed,quality,safety,documentationanddescription.Italsotellsspecific examplesof howthe designof the projectshouldbe executed,helpingothersworkproperly.
  • 4. The Software Requirements Specification Specification (Technical Standard): A designspecificationisadetaileddocumentprovidinginformationaboutthe characteristics of a projectto setcriteriathe developerswill needtomeet.Itsuse iscalledforwhere astructure or product has to be speciallymade tomeetaunique need.Forexample,adesignspecificationmustinclude all necessarydrawings,dimensions,environmental factors,ergonomicfactors,aestheticfactors,andcost, maintenance thatwill be needed,quality,safety,documentationanddescription.Italsotellsspecific examplesof howthe designof the projectshouldbe executed,helpingothersworkproperly. Formal Specification: In computerscience,formal specificationsare mathematicallybasedtechniqueswhose purpose are to helpwiththe implementationof systemsandsoftware.Theyare usedtodescribe asystem, toanalyze itsbehavior,andto aidinits designbyverifyingkeypropertiesof interestthroughrigorousandeffective reasoningtools.These specificationsare formal inthe sense thattheyhave a syntax,theirsemanticsfall withinone domain,andtheyare able tobe usedtoinferuseful information.
  • 5. The Software Requirements Specification Characteristics of a Good Software Requirements Specification (SRS) Recently,Ineedtohave a lookat the IEEE SRS Standard.I think,all of youknow verywell aboutit. However,here,Iwantto reemphasize some basicpointsabout goodSRScharacteristicsbriefly. An SRS should be: Correct An SRS is correct if, and only if, every requirementstated therein is one thatthe software shall meet.Traceability makes this procedure easier and less prone to error. Unambiguous An SRS is unambiguous if,and only if, every requirementstated therein has onlyone interpretation.As a minimum, this requires thateach characteristic of the final product be described using a single unique term. Complete An SRS is complete if, and only if, it includes the following elements:
  • 6. The Software Requirements Specification  All significantrequirements,whether relating to functionality, performance,design constraints,attributes,or external interfaces.In particular any external requirements imposed bya system specification should be acknowledged and treated.  Definition of the responses ofthe software to all realizable classes ofinputdata in all realizable classes of situations.Note thatit is importantto specifythe responses to both valid and invalid inputvalues.  Full labels and references to all figures,tables,and diagrams in the SRS and definition of all terms and units of measure. Consistent Consistencyrefers to internal consistency.If an SRS does notagree with some higher-level document,such as a system requirements specification,then it is not correct. An SRS is internallyconsistentif,and only if, no subsetof individual requirements described in itconflict. Ranked for importance and/or stability An SRS is ranked for importance and/or stabilityif each requirementin it has an identifier to indicate either the importance or stabilityof that particular requirement.Typically, all of the requirements thatrelate to a software productare not equallyimportant.Some requirements maybe essential,especiallyfor life-critical applications,while others may be desirable.Each requirementin the SRS should be identified to make these differences clear and explicit. Verifiable An SRS is verifiable if, and only if, every requirementstated 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 software productmeets the requirement. Non verifiable requirements include statements such as "works well","good human interface",and "shall usually happen".These requirements cannotbe verified because itis impossible to define the terms "good","well", or "usually". Modifiable An SRS is modifiable if,and only if, its structure and style are such that any changes to the requirements can be made easily,completely,and consistentlywhile retaining the structure and style. Modifiability generallyrequires an SRS to  Have a coherentand easy-to-use organization with a table of contents,an index, and explicit cross referencing;  Not be redundant(i.e., the same requirementshould notappear in more than one place in the SRS);  Express each requirementseparately,rather than intermixed with other requirements. Traceable An SRS is traceable if the origin of each of its requirements is clear and ifit facilitates the referencing of each requirementin future developmentor enhancementdocumentation.The following two types of traceability are recommended:  Backward traceability (i.e.,to previous stages of development). This depends upon each requirementexplicitly referencing its source in earlier documents.
  • 7. The Software Requirements Specification  Forward traceability (i.e., to all documents spawned by the SRS). This depends upon each requirementin the SRS having a unique name or reference number.