SlideShare a Scribd company logo
1 of 24
REQUIREMENTS ENGINEERING
Requirements in Software Development
Requirements
Operation and
MaintenanceImplementation
Design
Feasibility and
Planning
All process
models include a
requirements
activity
Requirements Engineering
• Requirements may be
• functional or non-functional:
– Functional requirements describe system
services or features .
– Non-functional requirements is a constraint on
the system or on the development process.
The requirements process
Feasibility
Study
Requirements
Analysis
Requirements
Model
Requirements
Specification
Feasibility
Report
Documentation of
Requirements
Work with
the client to
understand
the
requirements
Organize the
requirements in
a systematic and
comprehensible
manner
Requirements
Analysis (optional)
Requirements Analysis and
Definition
The requirements analysis and definition establish the system's
services, constraints and goals by consultation with users. They
are then defined in a manner that is understandable by both
users and development staff.
This phase can be divided into:
• Requirements analysis
• Requirements definition
• Requirements specification
Requirements define the function of the system from the
client's viewpoint.
Goals during the requirements
phase
• Understand the requirements in detail (analysis).
• Describe the requirements in a manner that is clear to the client.
Ensure that the client understands the description of the
requirements and their implications.
• Describe the requirements in a manner that is clear to the people
who will design and implement the system.
The Requirements Documentation is the defining document
that describes the goals of the system that is being built.
It may form a legal contract between client and software developers.
Requirements analysis:
interviews with clients
Should reflect accurately what the client wants . Client interviews
are the heart of the requirements analysis and definition.
Clients may have only a vague concept of requirements.
• Allow plenty of time.
• Prepare before you meet with the client
• Keep full notes
• If you do not understand, delve further, again and again
• Repeat what you hear
• Small group meetings are often most effective
Requirements analysis
1. Identify the stakeholders:
• Who is affected by this system?
Client
Senior management
Production staff
Computing staff
Customers
etc., etc., etc.,
2. Understand the requirements in depth:
• Domain understanding
3. Organize the requirements:
• Classification into coherent clusters
New and old systems
In requirements analysis it is important to distinguish:
• features of the current system
• proposed new features
Clients often confuse the current system with the
underlying requirement.
A new system is when there is no existing system.
A replacement system (or subsystem) is when a system is
built to replace an existing system.
A legacy system is an existing system that is not being
replaced, but must interface to the new system.
Functional requirements
Requirements about the functions that the system
must perform that will be identified by analyzing
the use made of the system
• Functionality
• Data
• User interfaces
Non-functional requirements
Requirements that are not directly related to the
functions that the system must perform
Product requirements
performance, reliability, portability, etc...
Organizational requirements
delivery, training, standards, etc...
Marketing and public relations
Example of non-functional
requirements
Example: Library of Congress Repository
Use systems that the client's staff are familiar with:
• Hardware and software systems (IBM/Unix)
• Database systems (Oracle)
• Programming languages (C and C++)
Recognize that the client is a federal library:
• Regulations covering government contracting
• Importance of developing a system that will be
respected by other major libraries
The Requirements Document
• The requirements document is the official
statement of what is required of the system
developers.
• Should include both a definition and a
specification of requirements.
• It is NOT a design document. As far as
possible, it should set out WHAT the system
should do rather than HOW it should do it.
Requirements Document Requirements
• Specify external system behavior.
• Specify implementation constraints.
• Easy to change.
• Serve as reference tool for maintenance.
• Record forethought about the life cycle of
the system i.e., predict changes.
• Characterize responses to unexpected
events.
Requirements Document Structure
• Introduction (Requirements Definition)
– Describe need for the system and how it fits with business
objectives.
• Functional Requirements
– Describe the services to be provided in detail.
• Non-functional Requirements
– Define constraints on the system and the development
process.
• System Evolution
– Define fundamental assumptions on which the system is
based and anticipated changes.
• Glossary
– Define technical terms used.
• Index
System-level Requirements
• Some requirements place constraints on the
system as a whole rather than specific system
functions.
• Example
– The time required for training a system
operator to be proficient in the use of the
system must not exceed 2 working days.
• These may be emergent requirements which
cannot be derived from any single sub-set of the
system requirements
Requirements Traceability
• Requirements traceability means that
related requirements are linked in some
way and that requirements are (perhaps)
linked to their source.
• Traceability is a property of a requirements
specification which reflects the ease of
finding related requirements.
Traceability Techniques
• Assign a unique number to all
requirements.
• Cross-reference related requirements
using this unique number.
• Use HTML hyperlinks to implement
traceability.
Requirements Verifiability
• Requirements should be written so that they can be
verified objectively.
• The problem with this requirement is its use of vague
terms such as “errors shall be minimized”
– The system should be easy to use by experienced
controllers and should be organized in such a way
that user errors are minimized.
• The error rate should be been quantified.
– Experienced controllers should be able to use all the
system functions after a total of two hours training.
After this training, the average number of errors made
by experienced users should not exceed two per day.
Requirements Measures
Property Measure
Speed Processed transactions/second
User/Event response time
Screen refresh time
Size K Bytes
Number of RAM chips
Ease of use Training time
Number of help frames
Reliability Mean time to failure
Probability of unavailability
Rate of failure occurrence
Availability
Robustness Time to restartafter failure
Percentage of events causing failure
Probability of data corruption on failure
Portability Percentage of target dependentstatements
Number of target systems
Requirements Validation
• Concerned with demonstrating that the
requirements define the system that the
customer really wants.
• Requirements error costs are high so
validation is very important.
– Fixing a requirements error after delivery may
cost up to 100 times the cost of fixing an
implementation error.
• Prototyping is an important technique of
requirements validation.
Requirements Checking
• Validity: Does the system provide the
functions which best support the
customer’s needs?
• Consistency: Are there any requirements
conflicts?
• Completeness: Are all functions required
by the customer included?
• Realism: Can the requirements be
implemented given available budget and
technology?
Requirements Reviews
• Regular reviews should be held while the
requirements definition is being formulated.
• Both client and contractor staff should be
involved in reviews.
• Reviews may be formal (with completed
documents) or informal.
• Good communications between developers,
customers and users can resolve problems at
an early stage.
End of lecture

More Related Content

What's hot

Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
IIITA
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
sslovepk
 
Validating Non Functional Requirements
Validating Non Functional RequirementsValidating Non Functional Requirements
Validating Non Functional Requirements
Reuben Korngold
 
2 software requirements-02
2 software requirements-022 software requirements-02
2 software requirements-02
Zaman Khan
 
Ssad quality assurance
Ssad quality assuranceSsad quality assurance
Ssad quality assurance
Ravi Shekhar
 
software requirements
 software requirements software requirements
software requirements
Zaman Khan
 

What's hot (20)

Software requirement engineering
Software requirement engineeringSoftware requirement engineering
Software requirement engineering
 
Extracting Quality Scenarios from Functional Scenarios
Extracting Quality Scenarios from Functional ScenariosExtracting Quality Scenarios from Functional Scenarios
Extracting Quality Scenarios from Functional Scenarios
 
Requirement Analysis - Software Enigneering
Requirement Analysis - Software EnigneeringRequirement Analysis - Software Enigneering
Requirement Analysis - Software Enigneering
 
Se lect9 btech
Se lect9 btechSe lect9 btech
Se lect9 btech
 
Req specification
Req specificationReq specification
Req specification
 
Visualizing non-functional requirements
Visualizing non-functional requirementsVisualizing non-functional requirements
Visualizing non-functional requirements
 
business requirements functional and non functional
business requirements functional and  non functionalbusiness requirements functional and  non functional
business requirements functional and non functional
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Validating Non Functional Requirements
Validating Non Functional RequirementsValidating Non Functional Requirements
Validating Non Functional Requirements
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineering
 
2 software requirements-02
2 software requirements-022 software requirements-02
2 software requirements-02
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Ssad quality assurance
Ssad quality assuranceSsad quality assurance
Ssad quality assurance
 
Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?Functional vs Non-functional Requirements - Which comes first?
Functional vs Non-functional Requirements - Which comes first?
 
Capturing Measurable Non Functional Requirements
Capturing Measurable Non Functional RequirementsCapturing Measurable Non Functional Requirements
Capturing Measurable Non Functional Requirements
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
 
software requirements
 software requirements software requirements
software requirements
 

Similar to Software Engineering Lec 4-requirments

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
 
04 fse understandingrequirements
04 fse understandingrequirements04 fse understandingrequirements
04 fse understandingrequirements
Mohesh Chandran
 
Software project management requirements analysis
Software project management requirements analysisSoftware project management requirements analysis
Software project management requirements analysis
Antony Alex
 

Similar to Software Engineering Lec 4-requirments (20)

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
 
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
 
22-REQUIREMENT.ppt
22-REQUIREMENT.ppt22-REQUIREMENT.ppt
22-REQUIREMENT.ppt
 
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
 
Se lec 4
Se lec 4Se lec 4
Se lec 4
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
16_10_2018 non functional requirements v
16_10_2018 non functional requirements v16_10_2018 non functional requirements v
16_10_2018 non functional requirements v
 
Development Guideline
Development GuidelineDevelopment Guideline
Development Guideline
 
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
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
 
Software engineering lecture 1
Software engineering  lecture 1Software engineering  lecture 1
Software engineering lecture 1
 
Chapter 4.pptx
Chapter 4.pptxChapter 4.pptx
Chapter 4.pptx
 
RRC Requirements and Use Cases
RRC Requirements and Use CasesRRC Requirements and Use Cases
RRC Requirements and Use Cases
 
SE-Unit II.pdf
SE-Unit II.pdfSE-Unit II.pdf
SE-Unit II.pdf
 
sdlc.pptx
sdlc.pptxsdlc.pptx
sdlc.pptx
 
SRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptxSRE_Lecture_1,2,3,4.pptx
SRE_Lecture_1,2,3,4.pptx
 
04 fse understandingrequirements
04 fse understandingrequirements04 fse understandingrequirements
04 fse understandingrequirements
 
Software project management requirements analysis
Software project management requirements analysisSoftware project management requirements analysis
Software project management requirements analysis
 

More from Taymoor Nazmy

More from Taymoor Nazmy (20)

Cognitive systems
Cognitive  systemsCognitive  systems
Cognitive systems
 
Cognitive systems
Cognitive  systemsCognitive  systems
Cognitive systems
 
Artificial intelligent Lec 5-logic
Artificial intelligent Lec 5-logicArtificial intelligent Lec 5-logic
Artificial intelligent Lec 5-logic
 
Artificial intelligent Lec 3-ai chapter3-search
Artificial intelligent Lec 3-ai chapter3-searchArtificial intelligent Lec 3-ai chapter3-search
Artificial intelligent Lec 3-ai chapter3-search
 
Lec 2-agents
Lec 2-agentsLec 2-agents
Lec 2-agents
 
Artificial intelligent Lec 1-ai-introduction-
Artificial intelligent Lec 1-ai-introduction-Artificial intelligent Lec 1-ai-introduction-
Artificial intelligent Lec 1-ai-introduction-
 
Image processing 2
Image processing 2Image processing 2
Image processing 2
 
Image processing 1-lectures
Image processing  1-lecturesImage processing  1-lectures
Image processing 1-lectures
 
Software Engineering Lec 10 -software testing--
Software Engineering Lec 10 -software testing--Software Engineering Lec 10 -software testing--
Software Engineering Lec 10 -software testing--
 
Software Engineering Lec 8-design-
Software Engineering Lec 8-design-Software Engineering Lec 8-design-
Software Engineering Lec 8-design-
 
Software Engineering Lec 7-uml-
Software Engineering Lec 7-uml-Software Engineering Lec 7-uml-
Software Engineering Lec 7-uml-
 
Software Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-iSoftware Engineering Lec5 oop-uml-i
Software Engineering Lec5 oop-uml-i
 
Software Engineering Lec 3-project managment
Software Engineering Lec 3-project managmentSoftware Engineering Lec 3-project managment
Software Engineering Lec 3-project managment
 
Software Engineering Lec 2
Software Engineering Lec 2Software Engineering Lec 2
Software Engineering Lec 2
 
Software Engineering Lec 1-introduction
Software Engineering Lec 1-introductionSoftware Engineering Lec 1-introduction
Software Engineering Lec 1-introduction
 
Lec 6-
Lec 6-Lec 6-
Lec 6-
 
presentation skill
presentation skillpresentation skill
presentation skill
 
Lec 4
Lec 4Lec 4
Lec 4
 
Lec 3
Lec 3Lec 3
Lec 3
 
Lec 2
Lec 2Lec 2
Lec 2
 

Recently uploaded

Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 

Recently uploaded (20)

Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 

Software Engineering Lec 4-requirments

  • 2. Requirements in Software Development Requirements Operation and MaintenanceImplementation Design Feasibility and Planning All process models include a requirements activity
  • 3. Requirements Engineering • Requirements may be • functional or non-functional: – Functional requirements describe system services or features . – Non-functional requirements is a constraint on the system or on the development process.
  • 4. The requirements process Feasibility Study Requirements Analysis Requirements Model Requirements Specification Feasibility Report Documentation of Requirements Work with the client to understand the requirements Organize the requirements in a systematic and comprehensible manner Requirements Analysis (optional)
  • 5. Requirements Analysis and Definition The requirements analysis and definition establish the system's services, constraints and goals by consultation with users. They are then defined in a manner that is understandable by both users and development staff. This phase can be divided into: • Requirements analysis • Requirements definition • Requirements specification Requirements define the function of the system from the client's viewpoint.
  • 6. Goals during the requirements phase • Understand the requirements in detail (analysis). • Describe the requirements in a manner that is clear to the client. Ensure that the client understands the description of the requirements and their implications. • Describe the requirements in a manner that is clear to the people who will design and implement the system. The Requirements Documentation is the defining document that describes the goals of the system that is being built. It may form a legal contract between client and software developers.
  • 7. Requirements analysis: interviews with clients Should reflect accurately what the client wants . Client interviews are the heart of the requirements analysis and definition. Clients may have only a vague concept of requirements. • Allow plenty of time. • Prepare before you meet with the client • Keep full notes • If you do not understand, delve further, again and again • Repeat what you hear • Small group meetings are often most effective
  • 8. Requirements analysis 1. Identify the stakeholders: • Who is affected by this system? Client Senior management Production staff Computing staff Customers etc., etc., etc., 2. Understand the requirements in depth: • Domain understanding 3. Organize the requirements: • Classification into coherent clusters
  • 9. New and old systems In requirements analysis it is important to distinguish: • features of the current system • proposed new features Clients often confuse the current system with the underlying requirement. A new system is when there is no existing system. A replacement system (or subsystem) is when a system is built to replace an existing system. A legacy system is an existing system that is not being replaced, but must interface to the new system.
  • 10. Functional requirements Requirements about the functions that the system must perform that will be identified by analyzing the use made of the system • Functionality • Data • User interfaces
  • 11. Non-functional requirements Requirements that are not directly related to the functions that the system must perform Product requirements performance, reliability, portability, etc... Organizational requirements delivery, training, standards, etc... Marketing and public relations
  • 12. Example of non-functional requirements Example: Library of Congress Repository Use systems that the client's staff are familiar with: • Hardware and software systems (IBM/Unix) • Database systems (Oracle) • Programming languages (C and C++) Recognize that the client is a federal library: • Regulations covering government contracting • Importance of developing a system that will be respected by other major libraries
  • 13. The Requirements Document • The requirements document is the official statement of what is required of the system developers. • Should include both a definition and a specification of requirements. • It is NOT a design document. As far as possible, it should set out WHAT the system should do rather than HOW it should do it.
  • 14. Requirements Document Requirements • Specify external system behavior. • Specify implementation constraints. • Easy to change. • Serve as reference tool for maintenance. • Record forethought about the life cycle of the system i.e., predict changes. • Characterize responses to unexpected events.
  • 15. Requirements Document Structure • Introduction (Requirements Definition) – Describe need for the system and how it fits with business objectives. • Functional Requirements – Describe the services to be provided in detail. • Non-functional Requirements – Define constraints on the system and the development process. • System Evolution – Define fundamental assumptions on which the system is based and anticipated changes. • Glossary – Define technical terms used. • Index
  • 16. System-level Requirements • Some requirements place constraints on the system as a whole rather than specific system functions. • Example – The time required for training a system operator to be proficient in the use of the system must not exceed 2 working days. • These may be emergent requirements which cannot be derived from any single sub-set of the system requirements
  • 17. Requirements Traceability • Requirements traceability means that related requirements are linked in some way and that requirements are (perhaps) linked to their source. • Traceability is a property of a requirements specification which reflects the ease of finding related requirements.
  • 18. Traceability Techniques • Assign a unique number to all requirements. • Cross-reference related requirements using this unique number. • Use HTML hyperlinks to implement traceability.
  • 19. Requirements Verifiability • Requirements should be written so that they can be verified objectively. • The problem with this requirement is its use of vague terms such as “errors shall be minimized” – The system should be easy to use by experienced controllers and should be organized in such a way that user errors are minimized. • The error rate should be been quantified. – Experienced controllers should be able to use all the system functions after a total of two hours training. After this training, the average number of errors made by experienced users should not exceed two per day.
  • 20. Requirements Measures Property Measure Speed Processed transactions/second User/Event response time Screen refresh time Size K Bytes Number of RAM chips Ease of use Training time Number of help frames Reliability Mean time to failure Probability of unavailability Rate of failure occurrence Availability Robustness Time to restartafter failure Percentage of events causing failure Probability of data corruption on failure Portability Percentage of target dependentstatements Number of target systems
  • 21. Requirements Validation • Concerned with demonstrating that the requirements define the system that the customer really wants. • Requirements error costs are high so validation is very important. – Fixing a requirements error after delivery may cost up to 100 times the cost of fixing an implementation error. • Prototyping is an important technique of requirements validation.
  • 22. Requirements Checking • Validity: Does the system provide the functions which best support the customer’s needs? • Consistency: Are there any requirements conflicts? • Completeness: Are all functions required by the customer included? • Realism: Can the requirements be implemented given available budget and technology?
  • 23. Requirements Reviews • Regular reviews should be held while the requirements definition is being formulated. • Both client and contractor staff should be involved in reviews. • Reviews may be formal (with completed documents) or informal. • Good communications between developers, customers and users can resolve problems at an early stage.