SlideShare a Scribd company logo
1
Chapter 5
 Lecture 5: Understanding Requirements
Slide Set to accompany
Software Engineering: A Practitioner’s Approach, 7/e
by Roger S. Pressman
Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman
For non-profit educational use only
May be reproduced ONLY for student use at the university level when used in conjunction
with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is
prohibited without the express written permission of the author.
All copyright information MUST appear if these slides are posted on a website for student
use.
2
Requirements Engineering-I
 Inception—ask a set of questions that establish …
 basic understanding of the problem
 the people who want a solution
 the nature of the solution that is desired, and
 the effectiveness of preliminary communication and collaboration
between the customer and the developer
 Elicitation—elicit requirements from all stakeholders
 Elaboration—create an analysis model that identifies data,
function and behavioral requirements
 Negotiation—agree on a deliverable system that is realistic for
developers and customers
3
Requirements Engineering-II
 Specification—can be any one (or more) of the following:
 A written document
 A set of models
 A formal mathematical
 A collection of user scenarios (use-cases)
 A prototype
 Validation—a review mechanism that looks for
 errors in content or interpretation
 areas where clarification may be required
 missing information
 inconsistencies (a major problem when large products or systems
are engineered)
 conflicting or unrealistic (unachievable) requirements.
 Requirements management
4
Inception
 Identify stakeholders
 “who else do you think I should talk to?”
 Recognize multiple points of view
 Work toward collaboration
 The first questions
 Who is behind the request for this work?
 Who will use the solution?
 What will be the economic benefit of a successful
solution
 Is there another source for the solution that you
need?
5
Eliciting Requirements
 meetings are conducted and attended by both software
engineers and customers
 rules for preparation and participation are established
 an agenda is suggested
 a "facilitator" (can be a customer, a developer, or an outsider)
controls the meeting
 a "definition mechanism" (can be work sheets, flip charts, or wall
stickers or an electronic bulletin board, chat room or virtual
forum) is used
 the goal is
 to identify the problem
 propose elements of the solution
 negotiate different approaches, and
 specify a preliminary set of solution requirements
6
Eliciting Requirements
7
Elicitation Work Products
 a statement of need and feasibility.
 a bounded statement of scope for the system or product.
 a list of customers, users, and other stakeholders who
participated in requirements elicitation
 a description of the system’s technical environment.
 a list of requirements (preferably organized by function)
and the domain constraints that apply to each.
 a set of usage scenarios that provide insight into the use of
the system or product under different operating conditions.
 any prototypes developed to better define requirements.
8
Building the Analysis Model
 Elements of the analysis model
 Scenario-based elements
• Functional—processing narratives for software functions
• Use-case—descriptions of the interaction between an
“actor” and the system
 Class-based elements
• Implied by scenarios
 Behavioral elements
• State diagram
 Flow-oriented elements
• Data flow diagram
9
Use-Cases
 A collection of user scenarios that describe the thread of usage of a
system
 Each scenario is described from the point-of-view of an “actor”—a
person or device that interacts with the software in some way
 Each scenario answers the following questions:
 Who is the primary actor, the secondary actor (s)?
 What are the actor’s goals?
 What preconditions should exist before the story begins?
 What main tasks or functions are performed by the actor?
 What extensions might be considered as the story is described?
 What variations in the actor’s interaction are possible?
 What system information will the actor acquire, produce, or change?
 Will the actor have to inform the system about changes in the external
environment?
 What information does the actor desire from the system?
 Does the actor wish to be informed about unexpected changes?
10
Use-Case Diagram
11
Class Diagram
From the SafeHome system …
12
State Diagram
Reading
Commands
System status = “ready”
Display msg = “enter cmd”
Display status = steady
Entry/subsystems ready
Do: poll user input panel
Do: read user input
Do: interpret user input
State name
State variables
State activities
13
Negotiating Requirements
 Identify the key stakeholders
 These are the people who will be involved in the
negotiation
 Determine each of the stakeholders “win
conditions”
 Win conditions are not always obvious
 Negotiate
 Work toward a set of requirements that lead to “win-
win”
14
Validating Requirements - I
 Is each requirement consistent with the overall objective for the
system/product?
 Have all requirements been specified at the proper level of
abstraction? That is, do some requirements provide a level of
technical detail that is inappropriate at this stage?
 Is the requirement really necessary or does it represent an add-
on feature that may not be essential to the objective of the
system?
 Is each requirement bounded and unambiguous?
 Does each requirement have attribution? That is, is a source
(generally, a specific individual) noted for each requirement?
 Do any requirements conflict with other requirements?
15
Validating Requirements - II
 Is each requirement achievable in the technical environment
that will house the system or product?
 Is each requirement testable, once implemented?
 Does the requirements model properly reflect the information,
function and behavior of the system to be built.
 Has the requirements model been “partitioned” in a way that
exposes progressively more detailed information about the
system.
 Have requirements patterns been used to simplify the
requirements model. Have all patterns been properly
validated? Are all patterns consistent with customer
requirements?

More Related Content

PDF
6. ch 5-understanding requirements
PDF
6-180117160306. software engineering concepts
PPTX
PDF
Understanding software requirements chapter 5
PPTX
software engineering understanding requirements
PPTX
Software engineering -Requirement engineering.pptx
PPT
Software engg. pressman_ch-6 & 7
PDF
Requirement Engineering.pdf
6. ch 5-understanding requirements
6-180117160306. software engineering concepts
Understanding software requirements chapter 5
software engineering understanding requirements
Software engineering -Requirement engineering.pptx
Software engg. pressman_ch-6 & 7
Requirement Engineering.pdf

Similar to Software engineering requirements help11 (20)

PPT
PPT
Chapter 5 - 2,Chapter 5 - 2,Chapter 5 - 2
PPT
Chapter 5 SE Chapter 5 SE.pptChapter 5 SE.ppt
PPT
5- Requirement.ppt
PPT
05 REQUIREMENT ENGINEERING for students of
PPT
Requirement Management.ppt
PPT
REQUIREMENT ENGINEERING
PDF
software requirement
PPTX
Project planning and development cycle and testing
PPT
Chapter 5 - 1.ppt,Chapter 5 - 1.ppt,Chapter 5 - 1.ppt
PPTX
SRE.pptx
PPT
Requirements Engineering
PDF
Lecture 3 Software Requirements Analysis I.pdf
PDF
PPT
Requirement analysis and specification, software engineering
PDF
se cph - 4---7-WA0008..pdf ejejekkekekememm
PPT
Lec11
DOCX
LESSON 4 SOFTWARE REQUIREMENT (3).docx.
PPT
Chapter 4 Requirement of Engineering.ppt
Chapter 5 - 2,Chapter 5 - 2,Chapter 5 - 2
Chapter 5 SE Chapter 5 SE.pptChapter 5 SE.ppt
5- Requirement.ppt
05 REQUIREMENT ENGINEERING for students of
Requirement Management.ppt
REQUIREMENT ENGINEERING
software requirement
Project planning and development cycle and testing
Chapter 5 - 1.ppt,Chapter 5 - 1.ppt,Chapter 5 - 1.ppt
SRE.pptx
Requirements Engineering
Lecture 3 Software Requirements Analysis I.pdf
Requirement analysis and specification, software engineering
se cph - 4---7-WA0008..pdf ejejekkekekememm
Lec11
LESSON 4 SOFTWARE REQUIREMENT (3).docx.
Chapter 4 Requirement of Engineering.ppt
Ad

Recently uploaded (20)

PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Classroom Observation Tools for Teachers
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Pharma ospi slides which help in ospi learning
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Business Ethics Teaching Materials for college
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Classroom Observation Tools for Teachers
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Final Presentation General Medicine 03-08-2024.pptx
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
Abdominal Access Techniques with Prof. Dr. R K Mishra
Pharma ospi slides which help in ospi learning
Module 4: Burden of Disease Tutorial Slides S2 2025
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
O7-L3 Supply Chain Operations - ICLT Program
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Business Ethics Teaching Materials for college
Microbial disease of the cardiovascular and lymphatic systems
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
FourierSeries-QuestionsWithAnswers(Part-A).pdf
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Ad

Software engineering requirements help11

  • 1. 1 Chapter 5  Lecture 5: Understanding Requirements Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman For non-profit educational use only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is prohibited without the express written permission of the author. All copyright information MUST appear if these slides are posted on a website for student use.
  • 2. 2 Requirements Engineering-I  Inception—ask a set of questions that establish …  basic understanding of the problem  the people who want a solution  the nature of the solution that is desired, and  the effectiveness of preliminary communication and collaboration between the customer and the developer  Elicitation—elicit requirements from all stakeholders  Elaboration—create an analysis model that identifies data, function and behavioral requirements  Negotiation—agree on a deliverable system that is realistic for developers and customers
  • 3. 3 Requirements Engineering-II  Specification—can be any one (or more) of the following:  A written document  A set of models  A formal mathematical  A collection of user scenarios (use-cases)  A prototype  Validation—a review mechanism that looks for  errors in content or interpretation  areas where clarification may be required  missing information  inconsistencies (a major problem when large products or systems are engineered)  conflicting or unrealistic (unachievable) requirements.  Requirements management
  • 4. 4 Inception  Identify stakeholders  “who else do you think I should talk to?”  Recognize multiple points of view  Work toward collaboration  The first questions  Who is behind the request for this work?  Who will use the solution?  What will be the economic benefit of a successful solution  Is there another source for the solution that you need?
  • 5. 5 Eliciting Requirements  meetings are conducted and attended by both software engineers and customers  rules for preparation and participation are established  an agenda is suggested  a "facilitator" (can be a customer, a developer, or an outsider) controls the meeting  a "definition mechanism" (can be work sheets, flip charts, or wall stickers or an electronic bulletin board, chat room or virtual forum) is used  the goal is  to identify the problem  propose elements of the solution  negotiate different approaches, and  specify a preliminary set of solution requirements
  • 7. 7 Elicitation Work Products  a statement of need and feasibility.  a bounded statement of scope for the system or product.  a list of customers, users, and other stakeholders who participated in requirements elicitation  a description of the system’s technical environment.  a list of requirements (preferably organized by function) and the domain constraints that apply to each.  a set of usage scenarios that provide insight into the use of the system or product under different operating conditions.  any prototypes developed to better define requirements.
  • 8. 8 Building the Analysis Model  Elements of the analysis model  Scenario-based elements • Functional—processing narratives for software functions • Use-case—descriptions of the interaction between an “actor” and the system  Class-based elements • Implied by scenarios  Behavioral elements • State diagram  Flow-oriented elements • Data flow diagram
  • 9. 9 Use-Cases  A collection of user scenarios that describe the thread of usage of a system  Each scenario is described from the point-of-view of an “actor”—a person or device that interacts with the software in some way  Each scenario answers the following questions:  Who is the primary actor, the secondary actor (s)?  What are the actor’s goals?  What preconditions should exist before the story begins?  What main tasks or functions are performed by the actor?  What extensions might be considered as the story is described?  What variations in the actor’s interaction are possible?  What system information will the actor acquire, produce, or change?  Will the actor have to inform the system about changes in the external environment?  What information does the actor desire from the system?  Does the actor wish to be informed about unexpected changes?
  • 11. 11 Class Diagram From the SafeHome system …
  • 12. 12 State Diagram Reading Commands System status = “ready” Display msg = “enter cmd” Display status = steady Entry/subsystems ready Do: poll user input panel Do: read user input Do: interpret user input State name State variables State activities
  • 13. 13 Negotiating Requirements  Identify the key stakeholders  These are the people who will be involved in the negotiation  Determine each of the stakeholders “win conditions”  Win conditions are not always obvious  Negotiate  Work toward a set of requirements that lead to “win- win”
  • 14. 14 Validating Requirements - I  Is each requirement consistent with the overall objective for the system/product?  Have all requirements been specified at the proper level of abstraction? That is, do some requirements provide a level of technical detail that is inappropriate at this stage?  Is the requirement really necessary or does it represent an add- on feature that may not be essential to the objective of the system?  Is each requirement bounded and unambiguous?  Does each requirement have attribution? That is, is a source (generally, a specific individual) noted for each requirement?  Do any requirements conflict with other requirements?
  • 15. 15 Validating Requirements - II  Is each requirement achievable in the technical environment that will house the system or product?  Is each requirement testable, once implemented?  Does the requirements model properly reflect the information, function and behavior of the system to be built.  Has the requirements model been “partitioned” in a way that exposes progressively more detailed information about the system.  Have requirements patterns been used to simplify the requirements model. Have all patterns been properly validated? Are all patterns consistent with customer requirements?