Lecture 7&8
Requirement
Engineering
CSC291 - Software Engineering
Concepts
(Fall 2019)
Outline
• Software Requirements
• Requirement Engineering
• Types of Requirements
• Stakeholders
26/3/2020 CSC291 - Software Engineering Concepts
Requirements
3
IEEE Standard 729 defines it as
• “A condition or capability needed by a user to solve a problem
or achieve an objective”
• “A condition or capability that must be met or possessed by a
system...to satisfy a contract, standard, specification, or other
formally imposed document”
6/3/2020 CSC291 - Software Engineering Concepts
Software Requirements and Requirement
Engineering
• The requirements for a system
• are the descriptions of the services provided by the system and its
operational constraints.
• These requirements reflect the
• needs of customers for a system that helps solve some problem
such as controlling a device, placing an order or finding
information.
• “The process of finding out, analysing, documenting and
checking these services and constraints is called
requirements engineering (RE).”
46/3/2020 CSC291 - Software Engineering Concepts
Why Requirements?
• System customers
• specify the requirements and read them to check if they
meet their needs
• Project managers
• Use the requirements document to plan a bid for system
and to plan the system development process
• System engineers
• Use the requirements to understand what system is to
be developed
56/3/2020 CSC291 - Software Engineering Concepts
Why Requirements? (Contd..)
• System test engineers
• Use the requirements to develop validation tests for the
system
• System maintenance engineers
• Use the requirements to help understand the system
and the relationships between its parts
66/3/2020 CSC291 - Software Engineering Concepts
Different Levels Of Abstraction
• User requirements
• are statements, in a natural language plus diagrams, of what
services the system is expected to provide and the constraints
under which it must operate.
• System requirements
• System requirements set out the system’s functions, services and
operational constraints in detail.
• The system requirements document (sometimes called a functional
specification) should be define exactly what is to be implemented.
• It may be part of the contract between the system buyer and the
software developers.
6/3/2020 CSC291 - Software Engineering Concepts 7
Example
• User requirement: The library system should provide a way to
allow a student to borrow a book from the library.
• System requirement: The library system should provide a
withdraw interaction that allows a student to withdraw a book
given the isbn and copy number of the book to be withdrawn.
• The interaction fails if: the book is already withdrawn, the book is
not in the library's collection, the student has already withdrawn 5
books, the student owes more than $5, the book is on hold by
someone else. Otherwise…(To be completed)
6/3/2020 CSC291 - Software Engineering Concepts 8
Types Of Requirements
Business Requirements
These are used to state the high-level business objectives of
the organization or customer requesting the system or product.
They are used to document main system features and
functionalities without going into their nitty-gritty details.
They are captured in a document describing the project vision
and scope.
6/3/2020 CSC291 - Software Engineering Concepts 9
Types Of Requirements
• Software system requirements are often classified as
• Functional requirements
• Non-functional requirements
106/3/2020 CSC291 - Software Engineering Concepts
Functional Requirements
• These are statements of services the system should
provide.
• They bring in the system’s view and define from the
system’s perspective
• Services the system should provide
• How the system should react to particular input
• How the system should behave in a particular situations
or
• What the system should not do
116/3/2020 CSC291 - Software Engineering Concepts
Non-functional Requirements (NFR’s)
• These are constraints on the services or functions offered
by the system.
• They include timing constraints, constraints on the
development process and constraints imposed by
standards.
• Non-functional requirements often apply to the system as
a whole. They do not usually just apply to individual
system features or services.
126/3/2020 CSC291 - Software Engineering Concepts
Types of NFR’s
Performance
requirements
Space
requirements
Usability
requirements
Efficiency
requirements
Reliability
requirements
Portability
requirements
Interoperability
requirements
Ethical
requirements
Legislative
requirements
Implementation
requirements
Standards
requirements
Delivery
requirements
Safety
requirements
Privacy
requirements
Product
requirements
Organizational
requirements
External
requirements
Non-functional
requirements
136/3/2020 CSC291 - Software Engineering Concepts
Types of NFR’s (Contd..)
• Product requirements
• Requirements which specify that the delivered product
must behave in a particular way.
• e.g. execution speed, reliability, Usability, etc.
• Organizational requirements
• Requirements which are a consequence of organizational
policies and procedures in the customer’s and
developer's organization.
• External requirements
• Requirements which arise from factors which are external
to the system and its development process
• e.g. legislative requirements, etc.
146/3/2020 CSC291 - Software Engineering Concepts
Types of NFR’s (Contd..)
Reliability Requirements:
Reliability requirements deal with the failure to provide
service.
Example :
The failure frequency of a heart-monitoring unit that will
operate in a hospital’s intensive care ward is required to be
less than one in 20 years. Its heart attack detection function
is required to have a failure rate of less than one per million
cases.
156/3/2020 CSC291 - Software Engineering Concepts
Types of NFR’s (Contd..)
Efficiency Requirements:
• Deals with the hardware resources needed to perform the functions of
the software.
• The main hardware resources to be considered are the computer’s
processing capabilities (measured in MIPS – million instructions per
second, MHz or megahertz etc.), its data storage capability in terms
of memory and disk capacity (measured in MBs – megabytes, GBs –
gigabytes, etc.) and the data communication capability of the
communication lines (usually measured in KBPS – kilobits per
second., etc)
• The requirements may include the maximum values at which the
hardware resources will be applied in the developed software system
166/3/2020 CSC291 - Software Engineering Concepts
Types of NFR’s (Contd..)
Portability Requirements:
Portability requirements tend to the adaptation of a
software system to other environments consisting of
different hardware, different operating systems, and so
forth.
Interoperability Requirements:
• Interoperability describes the extent to which systems and
devices can exchange data, and interpret that shared
data.
• For two systems to be interoperable, they must be able to
exchange data and present that data such that it can be
understood by a user
176/3/2020 CSC291 - Software Engineering Concepts
Integrity – deal with system security that prevent
unauthorized persons access.
Usability – deals with the scope of staff resources needed
to train new employees and to operate the software system.
Types of NFR’s (Contd..)
6/3/2020 CSC291 - Software Engineering Concepts 18
Integrity
196/3/2020 CSC291 - Software Engineering Concepts
Usability
206/3/2020 CSC291 - Software Engineering Concepts
Example: A Word Processor
Let us now look at an example to understand the difference
between these different types of requirements.
Let us assume that we have a word-processing system that
does not have a spell checker. In order to be able to sell the
product, it is determined that it must have a spell checker
216/3/2020 CSC291 - Software Engineering Concepts
Contd..
• Business Requirement could be stated as:
user will be able to correct spelling errors in a document
efficiently. Hence, the Spell checker will be included as a
feature in the product.
• In the next step we need to describe what tasks must be
included to accomplish the above-mentioned business
requirement.
• The resulting User Requirement could be as follows:
Finding spelling errors in the document and deciding whether
to replace each misspelled word with one chosen from a list of
suggested words. It is important to note that this requirement is
written from a user’s perspective.
226/3/2020 CSC291 - Software Engineering Concepts
Contd..
• After documenting the user’s perspective in the form of user
requirements, we look at the system’s perspective:
• what is the functionality provided by the system and how will it
help the user to accomplish these tasks.
The functional requirement for the same user requirement
could be written as follows:
• The spell checker will find and highlight misspelled words.
• It will then display a dialog box with suggested replacements.
• The user will be allowed to select from the list of suggested
replacements.
• Upon selection it will replace the misspelled word with the selected
word.
236/3/2020 CSC291 - Software Engineering Concepts
Contd..
• Finally, a non-functional requirement of the system could
require that it must be integrated into the existing word-
processor that runs on windows platform
246/3/2020 CSC291 - Software Engineering Concepts
The Need For Comprehensive Software Non -Functional
Requirements
256/3/2020 CSC291 - Software Engineering Concepts
Contd..
266/3/2020 CSC291 - Software Engineering Concepts
Contd..
• Mostly software projects satisfactorily fulfilled the basic
requirements for correct calculations (correct inventory figures,
correct average class’s score, correct loan interest, etc.)
• Software projects suffered from poor performance in important
areas such as maintenance, reliability, software reuse, or
training.
Cause for the poor performance - lack of predefined
requirements
276/3/2020 CSC291 - Software Engineering Concepts
Specifying the Requirements
• Functional and nonfunctional requirements should be
specified in such a way that they are understandable by
system users who don’t have detailed technical
knowledge.
• These requirements are defined using natural language,
tables and diagrams as these can be understood by all
users.
286/3/2020 CSC291 - Software Engineering Concepts
Guidelines
• While specifying or writing the requirements, following
guidelines must be followed:
• Invent a standard format and use it for all requirements.
• Use language in a consistent way.
• Avoid the use of computer jargons.
• Separate functional and non-functional requirements.
• Distinguish requirements priorities
• Example: MoSCoW (Must, Shall, Could, Want/Will (no
TBD))
• Testable (write test cases
296/3/2020 CSC291 - Software Engineering Concepts
Example – Identify the problem
If sales for current month are below target sales, then
report is to be printed unless difference between target
sales and actual sales is less than half of difference
between target sales and actual sales in previous month, or
if difference between target sales and actual sales for the
current month is less than 5%.
306/3/2020 CSC291 - Software Engineering Concepts
Contd..
Problems:
• Difficult to read
• Ambiguity: sales and actual sales, 5% of what?
• Incomplete: what if sales are above target sales?
316/3/2020 CSC291 - Software Engineering Concepts
Stakeholders
Stakeholders are different people who would be
interested in the software.
326/3/2020 CSC291 - Software Engineering Concepts
Chapter Reading
• Chapter 4, Requirement Engineering,
Software Engineering by Ian Sommerville
336/3/2020 CSC291 - Software Engineering Concepts

More Related Content

PPTX
Software Requirements
PPTX
Requirement Analysis & Specification sharbani bhattacharya
PPTX
software requirements
PPT
Requirement specification (SRS)
PPTX
Requirement and Specification
PPTX
Software requirement and specification
PPTX
SRS(software requirement specification)
PDF
Software project management requirements analysis
Software Requirements
Requirement Analysis & Specification sharbani bhattacharya
software requirements
Requirement specification (SRS)
Requirement and Specification
Software requirement and specification
SRS(software requirement specification)
Software project management requirements analysis

What's hot (20)

PPTX
2.software requirement specification
PPT
Requirement analysis and specification, software engineering
PPT
Requirements analysis
PPTX
Requirements engineering
PPT
Requirement Analysis
PPTX
Requirements Engineering (CS 5032 2012)
PPT
Software Requirements in Software Engineering SE5
PPT
Requirement specification
PDF
Software requirementspecification
PPT
7(srs template)
PDF
3. 1 req elicitation
PDF
Requirement analysis
PPTX
Requirement analysis
PPT
Requirement Analysis - Software Enigneering
PPTX
Requirements analysis and modeling
PPT
An overview of software requirements engineering
PPT
Requirement Engineering
PPTX
selection of hardware & software in SAD
PPTX
Requirements Engineering - "Ch2 an introduction to requirements"
PPTX
software requirement specification
2.software requirement specification
Requirement analysis and specification, software engineering
Requirements analysis
Requirements engineering
Requirement Analysis
Requirements Engineering (CS 5032 2012)
Software Requirements in Software Engineering SE5
Requirement specification
Software requirementspecification
7(srs template)
3. 1 req elicitation
Requirement analysis
Requirement analysis
Requirement Analysis - Software Enigneering
Requirements analysis and modeling
An overview of software requirements engineering
Requirement Engineering
selection of hardware & software in SAD
Requirements Engineering - "Ch2 an introduction to requirements"
software requirement specification
Ad

Similar to W4 lecture 7&8 - requirements gathering (20)

PPT
unit2_1 in software engineering note ppt complete
PDF
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
PPT
Software engineering lecture 1
PPTX
Software requirement and specification
PDF
9-Requirements Engineering process, Requirement Elicitation-21-01-2025.pdf
PPTX
SE Unit 2(1).pptx
PPT
Requirements Engineering - SRS - IEEE.ppt
PPT
Requirements Engineering about one of requirement engineering process
PPTX
Un it 2-se-mod-staff
PPTX
Software Engineering and Project Management - A Beginner's Guide - Part 2
DOCX
1 Software Requirements Descriptions and specification.docx
PDF
2-Reqerwsrhfdfsfgtdrttddjdiuiversion 2.pdf
PPTX
Software Requrement
PPTX
Software Engineering Unit 2 AKTU Complete
PPT
chapter_3_8 of software requirements engineering
PPTX
Requirements engeneering due Datascience
PPT
cccccccccccccccccccccccccchapter_3_8.ppt
PDF
SE-Unit II.pdf
PPTX
Requirements engineering
PPTX
Requirements engineering
unit2_1 in software engineering note ppt complete
2nd MODULE Software Requirements _ SW ENGG 22CSE141.pdf
Software engineering lecture 1
Software requirement and specification
9-Requirements Engineering process, Requirement Elicitation-21-01-2025.pdf
SE Unit 2(1).pptx
Requirements Engineering - SRS - IEEE.ppt
Requirements Engineering about one of requirement engineering process
Un it 2-se-mod-staff
Software Engineering and Project Management - A Beginner's Guide - Part 2
1 Software Requirements Descriptions and specification.docx
2-Reqerwsrhfdfsfgtdrttddjdiuiversion 2.pdf
Software Requrement
Software Engineering Unit 2 AKTU Complete
chapter_3_8 of software requirements engineering
Requirements engeneering due Datascience
cccccccccccccccccccccccccchapter_3_8.ppt
SE-Unit II.pdf
Requirements engineering
Requirements engineering
Ad

Recently uploaded (20)

PDF
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
PDF
Time Tracking Features That Teams and Organizations Actually Need
PPTX
Trending Python Topics for Data Visualization in 2025
PDF
AI Guide for Business Growth - Arna Softech
PDF
Salesforce Agentforce AI Implementation.pdf
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PDF
Website Design Services for Small Businesses.pdf
PDF
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
PDF
Types of Token_ From Utility to Security.pdf
PDF
iTop VPN Crack Latest Version Full Key 2025
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
CCleaner 6.39.11548 Crack 2025 License Key
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
DOCX
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PDF
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PDF
MCP Security Tutorial - Beginner to Advanced
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
Time Tracking Features That Teams and Organizations Actually Need
Trending Python Topics for Data Visualization in 2025
AI Guide for Business Growth - Arna Softech
Salesforce Agentforce AI Implementation.pdf
Wondershare Recoverit Full Crack New Version (Latest 2025)
Website Design Services for Small Businesses.pdf
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
Types of Token_ From Utility to Security.pdf
iTop VPN Crack Latest Version Full Key 2025
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
CCleaner 6.39.11548 Crack 2025 License Key
Oracle Fusion HCM Cloud Demo for Beginners
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
AI/ML Infra Meetup | Beyond S3's Basics: Architecting for AI-Native Data Access
Why Generative AI is the Future of Content, Code & Creativity?
How Tridens DevSecOps Ensures Compliance, Security, and Agility
Monitoring Stack: Grafana, Loki & Promtail
MCP Security Tutorial - Beginner to Advanced

W4 lecture 7&8 - requirements gathering

  • 1. Lecture 7&8 Requirement Engineering CSC291 - Software Engineering Concepts (Fall 2019)
  • 2. Outline • Software Requirements • Requirement Engineering • Types of Requirements • Stakeholders 26/3/2020 CSC291 - Software Engineering Concepts
  • 3. Requirements 3 IEEE Standard 729 defines it as • “A condition or capability needed by a user to solve a problem or achieve an objective” • “A condition or capability that must be met or possessed by a system...to satisfy a contract, standard, specification, or other formally imposed document” 6/3/2020 CSC291 - Software Engineering Concepts
  • 4. Software Requirements and Requirement Engineering • The requirements for a system • are the descriptions of the services provided by the system and its operational constraints. • These requirements reflect the • needs of customers for a system that helps solve some problem such as controlling a device, placing an order or finding information. • “The process of finding out, analysing, documenting and checking these services and constraints is called requirements engineering (RE).” 46/3/2020 CSC291 - Software Engineering Concepts
  • 5. Why Requirements? • System customers • specify the requirements and read them to check if they meet their needs • Project managers • Use the requirements document to plan a bid for system and to plan the system development process • System engineers • Use the requirements to understand what system is to be developed 56/3/2020 CSC291 - Software Engineering Concepts
  • 6. Why Requirements? (Contd..) • System test engineers • Use the requirements to develop validation tests for the system • System maintenance engineers • Use the requirements to help understand the system and the relationships between its parts 66/3/2020 CSC291 - Software Engineering Concepts
  • 7. Different Levels Of Abstraction • User requirements • are statements, in a natural language plus diagrams, of what services the system is expected to provide and the constraints under which it must operate. • System requirements • System requirements set out the system’s functions, services and operational constraints in detail. • The system requirements document (sometimes called a functional specification) should be define exactly what is to be implemented. • It may be part of the contract between the system buyer and the software developers. 6/3/2020 CSC291 - Software Engineering Concepts 7
  • 8. Example • User requirement: The library system should provide a way to allow a student to borrow a book from the library. • System requirement: The library system should provide a withdraw interaction that allows a student to withdraw a book given the isbn and copy number of the book to be withdrawn. • The interaction fails if: the book is already withdrawn, the book is not in the library's collection, the student has already withdrawn 5 books, the student owes more than $5, the book is on hold by someone else. Otherwise…(To be completed) 6/3/2020 CSC291 - Software Engineering Concepts 8
  • 9. Types Of Requirements Business Requirements These are used to state the high-level business objectives of the organization or customer requesting the system or product. They are used to document main system features and functionalities without going into their nitty-gritty details. They are captured in a document describing the project vision and scope. 6/3/2020 CSC291 - Software Engineering Concepts 9
  • 10. Types Of Requirements • Software system requirements are often classified as • Functional requirements • Non-functional requirements 106/3/2020 CSC291 - Software Engineering Concepts
  • 11. Functional Requirements • These are statements of services the system should provide. • They bring in the system’s view and define from the system’s perspective • Services the system should provide • How the system should react to particular input • How the system should behave in a particular situations or • What the system should not do 116/3/2020 CSC291 - Software Engineering Concepts
  • 12. Non-functional Requirements (NFR’s) • These are constraints on the services or functions offered by the system. • They include timing constraints, constraints on the development process and constraints imposed by standards. • Non-functional requirements often apply to the system as a whole. They do not usually just apply to individual system features or services. 126/3/2020 CSC291 - Software Engineering Concepts
  • 14. Types of NFR’s (Contd..) • Product requirements • Requirements which specify that the delivered product must behave in a particular way. • e.g. execution speed, reliability, Usability, etc. • Organizational requirements • Requirements which are a consequence of organizational policies and procedures in the customer’s and developer's organization. • External requirements • Requirements which arise from factors which are external to the system and its development process • e.g. legislative requirements, etc. 146/3/2020 CSC291 - Software Engineering Concepts
  • 15. Types of NFR’s (Contd..) Reliability Requirements: Reliability requirements deal with the failure to provide service. Example : The failure frequency of a heart-monitoring unit that will operate in a hospital’s intensive care ward is required to be less than one in 20 years. Its heart attack detection function is required to have a failure rate of less than one per million cases. 156/3/2020 CSC291 - Software Engineering Concepts
  • 16. Types of NFR’s (Contd..) Efficiency Requirements: • Deals with the hardware resources needed to perform the functions of the software. • The main hardware resources to be considered are the computer’s processing capabilities (measured in MIPS – million instructions per second, MHz or megahertz etc.), its data storage capability in terms of memory and disk capacity (measured in MBs – megabytes, GBs – gigabytes, etc.) and the data communication capability of the communication lines (usually measured in KBPS – kilobits per second., etc) • The requirements may include the maximum values at which the hardware resources will be applied in the developed software system 166/3/2020 CSC291 - Software Engineering Concepts
  • 17. Types of NFR’s (Contd..) Portability Requirements: Portability requirements tend to the adaptation of a software system to other environments consisting of different hardware, different operating systems, and so forth. Interoperability Requirements: • Interoperability describes the extent to which systems and devices can exchange data, and interpret that shared data. • For two systems to be interoperable, they must be able to exchange data and present that data such that it can be understood by a user 176/3/2020 CSC291 - Software Engineering Concepts
  • 18. Integrity – deal with system security that prevent unauthorized persons access. Usability – deals with the scope of staff resources needed to train new employees and to operate the software system. Types of NFR’s (Contd..) 6/3/2020 CSC291 - Software Engineering Concepts 18
  • 19. Integrity 196/3/2020 CSC291 - Software Engineering Concepts
  • 20. Usability 206/3/2020 CSC291 - Software Engineering Concepts
  • 21. Example: A Word Processor Let us now look at an example to understand the difference between these different types of requirements. Let us assume that we have a word-processing system that does not have a spell checker. In order to be able to sell the product, it is determined that it must have a spell checker 216/3/2020 CSC291 - Software Engineering Concepts
  • 22. Contd.. • Business Requirement could be stated as: user will be able to correct spelling errors in a document efficiently. Hence, the Spell checker will be included as a feature in the product. • In the next step we need to describe what tasks must be included to accomplish the above-mentioned business requirement. • The resulting User Requirement could be as follows: Finding spelling errors in the document and deciding whether to replace each misspelled word with one chosen from a list of suggested words. It is important to note that this requirement is written from a user’s perspective. 226/3/2020 CSC291 - Software Engineering Concepts
  • 23. Contd.. • After documenting the user’s perspective in the form of user requirements, we look at the system’s perspective: • what is the functionality provided by the system and how will it help the user to accomplish these tasks. The functional requirement for the same user requirement could be written as follows: • The spell checker will find and highlight misspelled words. • It will then display a dialog box with suggested replacements. • The user will be allowed to select from the list of suggested replacements. • Upon selection it will replace the misspelled word with the selected word. 236/3/2020 CSC291 - Software Engineering Concepts
  • 24. Contd.. • Finally, a non-functional requirement of the system could require that it must be integrated into the existing word- processor that runs on windows platform 246/3/2020 CSC291 - Software Engineering Concepts
  • 25. The Need For Comprehensive Software Non -Functional Requirements 256/3/2020 CSC291 - Software Engineering Concepts
  • 26. Contd.. 266/3/2020 CSC291 - Software Engineering Concepts
  • 27. Contd.. • Mostly software projects satisfactorily fulfilled the basic requirements for correct calculations (correct inventory figures, correct average class’s score, correct loan interest, etc.) • Software projects suffered from poor performance in important areas such as maintenance, reliability, software reuse, or training. Cause for the poor performance - lack of predefined requirements 276/3/2020 CSC291 - Software Engineering Concepts
  • 28. Specifying the Requirements • Functional and nonfunctional requirements should be specified in such a way that they are understandable by system users who don’t have detailed technical knowledge. • These requirements are defined using natural language, tables and diagrams as these can be understood by all users. 286/3/2020 CSC291 - Software Engineering Concepts
  • 29. Guidelines • While specifying or writing the requirements, following guidelines must be followed: • Invent a standard format and use it for all requirements. • Use language in a consistent way. • Avoid the use of computer jargons. • Separate functional and non-functional requirements. • Distinguish requirements priorities • Example: MoSCoW (Must, Shall, Could, Want/Will (no TBD)) • Testable (write test cases 296/3/2020 CSC291 - Software Engineering Concepts
  • 30. Example – Identify the problem If sales for current month are below target sales, then report is to be printed unless difference between target sales and actual sales is less than half of difference between target sales and actual sales in previous month, or if difference between target sales and actual sales for the current month is less than 5%. 306/3/2020 CSC291 - Software Engineering Concepts
  • 31. Contd.. Problems: • Difficult to read • Ambiguity: sales and actual sales, 5% of what? • Incomplete: what if sales are above target sales? 316/3/2020 CSC291 - Software Engineering Concepts
  • 32. Stakeholders Stakeholders are different people who would be interested in the software. 326/3/2020 CSC291 - Software Engineering Concepts
  • 33. Chapter Reading • Chapter 4, Requirement Engineering, Software Engineering by Ian Sommerville 336/3/2020 CSC291 - Software Engineering Concepts