SlideShare a Scribd company logo
Chapter 3:
Good Practices for
Requirements Engineering
© Karl E. Wiegers
A Process
� Be iterative, incremental, interleaved
(overlapped)
2
Elicitation Analysis Specification Validation
re-evaluate
clarify rewrite
correct and fill in
3.1 Elicitation, 1
� Define the requirements development
process—its steps and activities.
� Write a vision and scope document
◦ define objectives
◦ set boundaries
◦ focus the project
3
Elicitation, 2
� Identify user classes
◦ Roles
◦ Goals
◦ Features used
◦ Frequency of use
◦ Knowledge and skill levels
◦ Location, attitude
4
Elicitation, 3
� Product champions from user classes
◦ Representatives of group
◦ Speak for them
◦ Decide on their behalf
◦ Long-term commitment to project
� Focus groups from user classes
◦ Describe functionality and quality needs
◦ Short-term commitment
5
Elicitation, 4
� Identify use cases
◦ Tasks to be accomplished
◦ Goals and purpose
◦ User/system interactions
� Identify system events/responses
◦ External signals and data
◦ Temporal events
◦ Business events (customer calls, inventory
changes,…)
6
Elicitation, 5
� Workshops
◦ Collaboration between analyst and user
◦ Discussions and draft documents
� Observe users
◦ Current tasks establish context for new
system
◦ Data flow can be captured
7
Elicitation, 6
� Examine problem reports
◦ Difficulties with old system can reveal needs
for new one
◦ Enhancements may have been explicitly
requested
� Reuse requirements
◦ Look for similarities to previous projects,
existing products
8
3.2 Analysis, 1
� Draw a context diagram
◦ Show environment, boundaries, interfaces
� Create prototypes
◦ User interfaces—to get feedback about a
tangible entity
◦ Technical—to explore feasibility of potential
problem areas
9
3.2 Analysis, 2
� Prioritize
◦ Allocate requirements to releases
◦ Adjust to changes in resources, needs, goals,
market conditions
� Model
◦ Use an abstract, flexible representation
◦ Use rigorous notation to reveal problems
(incomplete, inconsistent, conflicting)
10
Analysis, 4
� Identify the interfaces btw. To other
systems
� Identify the requirements to other
subsystems.
11
3.3 Specification, 1
� Documentation—consistent, accessible,
reviewable
� Adopt SRS template—such as IEEE 830
� Identify sources
◦ Justify presence of requirements
◦ Support future clarification
� Label requirements
◦ Have unique ID for traceability and
management
12
Specification, 2
� Record business rules
◦ Keep separate from SRS, they exist outside
the scope of a single project.
� Specify quality attributes
◦ Performance, efficiency, reliability, robustness,
usability—all affect customer/user satisfaction.
13
3.4 Validation
� Inspect documents
◦ Formal examinations by people with different
perspectives and expertise.
◦ Informal reviews of drafts in progress.
� Define test cases
◦ Describe expected behavior
◦ Review with customer/user
◦ Trace to specification
◦ Define acceptance criteria
14
3.5 Management, 1
� Define change control process—proposal,
analysis, resolution
� Establish a Change Control Board—small,
competent, empowered group
� Perform impact analysis
◦ scope of change (other artifacts affected)
◦ effort and cost
15
Management, 2
� Establish baseline and version control
◦ Distinguish between release baselines
◦ Distinguish between previous and current
versions
� Maintain a change history—know the
what, when, who, and why
� Track change status—know every
requirement’s condition (proposed,
approved, implemented, verified)
16
Management, 3
� Measure volatility
◦ Know the rate of change
◦ Identify problems (poor understanding, ill-
defined scope, business dynamics, politics)
� Use a tool—automation eliminates
drudgery, enables previously-described
tasks
17
Management, 4
� Create a traceability matrix
◦ Connect requirements, code, tests
◦ Ensure no requirements are missed
◦ Prevent extraneous features from appearing
18
19
3.6 Summaries
Development Process in Summary:
20

More Related Content

PPTX
Requirements engineering good practices .pptx
PPT
Software requirements engineering lecture 01
PDF
software requirement
PPTX
1602984229-2-req-engg-process.pptxj89009
PPTX
Requirements Engineering Processes
PPT
SE2.ppt
PPT
Requirements engineering process in software engineering
PDF
Requirements engineering good practices .pptx
Software requirements engineering lecture 01
software requirement
1602984229-2-req-engg-process.pptxj89009
Requirements Engineering Processes
SE2.ppt
Requirements engineering process in software engineering

Similar to Chapter 3Good Practices forRequirements Engineering (20)

PPTX
SE-Unit 2_ Requirement Analysis and Modeling.pptx
PPT
se02_SW_Process.ppt
PPT
Requirements Engineering
PPT
Software engg. pressman_ch-6 & 7
PPT
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
PPT
Software requirements engineering
PPT
vu-re-lecture-06 requirement engineer.ppt
PPTX
L4 RE Processes
PPTX
SRE Lect (week 1).pptx
PPTX
SRE.pptx
PPTX
Good PracticesFor RequirementEngineering.pptx
PPTX
Requirement Engineering Processes & Eliciting Requirement
PPTX
software Processes
PPT
2. Software process
PDF
pandey2010jwewed3wrgd3gegeggrgd3gewew.pdf
PPT
REQUIREMENT ENGINEERING
PPT
lecture_Analysis Phase.ppt
PPT
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
PPT
Unit 2 SEPM_ Requirement Engineering
PDF
SE_Unit 3_System & Requirement Engineering.pdf
SE-Unit 2_ Requirement Analysis and Modeling.pptx
se02_SW_Process.ppt
Requirements Engineering
Software engg. pressman_ch-6 & 7
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
Software requirements engineering
vu-re-lecture-06 requirement engineer.ppt
L4 RE Processes
SRE Lect (week 1).pptx
SRE.pptx
Good PracticesFor RequirementEngineering.pptx
Requirement Engineering Processes & Eliciting Requirement
software Processes
2. Software process
pandey2010jwewed3wrgd3gegeggrgd3gewew.pdf
REQUIREMENT ENGINEERING
lecture_Analysis Phase.ppt
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
Unit 2 SEPM_ Requirement Engineering
SE_Unit 3_System & Requirement Engineering.pdf
Ad

More from EstelaJeffery653 (20)

DOCX
Individual ProjectMedical TechnologyWed, 9617Num.docx
DOCX
Individual ProjectThe Post-Watergate EraWed, 3817Numeric.docx
DOCX
Individual ProjectArticulating the Integrated PlanWed, 31.docx
DOCX
Individual Multilingualism Guidelines1)Where did the a.docx
DOCX
Individual Implementation Strategiesno new messagesObjectives.docx
DOCX
Individual Refine and Finalize WebsiteDueJul 02View m.docx
DOCX
Individual Cultural Communication Written Assignment  (Worth 20 of .docx
DOCX
Individual ProjectThe Basic Marketing PlanWed, 3117N.docx
DOCX
Individual ProjectFinancial Procedures in a Health Care Organiza.docx
DOCX
Individual Expanded Website PlanView more »Expand view.docx
DOCX
Individual Expanded Website PlanDueJul 02View more .docx
DOCX
Individual Communicating to Management Concerning Information Syste.docx
DOCX
Individual Case Analysis-MatavIn max 4 single-spaced total pag.docx
DOCX
Individual Assignment Report Format• Report should contain not m.docx
DOCX
Include LOCO api that allows user to key in an address and get the d.docx
DOCX
Include the title, the name of the composer (if known) and of the .docx
DOCX
include as many events as possible to support your explanation of th.docx
DOCX
Incorporate the suggestions that were provided by your fellow projec.docx
DOCX
inal ProjectDUE Jun 25, 2017 1155 PMGrade DetailsGradeNA.docx
DOCX
include 1page proposal- short introduction to research paper and yo.docx
Individual ProjectMedical TechnologyWed, 9617Num.docx
Individual ProjectThe Post-Watergate EraWed, 3817Numeric.docx
Individual ProjectArticulating the Integrated PlanWed, 31.docx
Individual Multilingualism Guidelines1)Where did the a.docx
Individual Implementation Strategiesno new messagesObjectives.docx
Individual Refine and Finalize WebsiteDueJul 02View m.docx
Individual Cultural Communication Written Assignment  (Worth 20 of .docx
Individual ProjectThe Basic Marketing PlanWed, 3117N.docx
Individual ProjectFinancial Procedures in a Health Care Organiza.docx
Individual Expanded Website PlanView more »Expand view.docx
Individual Expanded Website PlanDueJul 02View more .docx
Individual Communicating to Management Concerning Information Syste.docx
Individual Case Analysis-MatavIn max 4 single-spaced total pag.docx
Individual Assignment Report Format• Report should contain not m.docx
Include LOCO api that allows user to key in an address and get the d.docx
Include the title, the name of the composer (if known) and of the .docx
include as many events as possible to support your explanation of th.docx
Incorporate the suggestions that were provided by your fellow projec.docx
inal ProjectDUE Jun 25, 2017 1155 PMGrade DetailsGradeNA.docx
include 1page proposal- short introduction to research paper and yo.docx
Ad

Recently uploaded (20)

PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
VCE English Exam - Section C Student Revision Booklet
PPTX
Cell Types and Its function , kingdom of life
PPTX
Lesson notes of climatology university.
PDF
Classroom Observation Tools for Teachers
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
RMMM.pdf make it easy to upload and study
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
master seminar digital applications in india
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Yogi Goddess Pres Conference Studio Updates
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
GDM (1) (1).pptx small presentation for students
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PPTX
Orientation - ARALprogram of Deped to the Parents.pptx
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
VCE English Exam - Section C Student Revision Booklet
Cell Types and Its function , kingdom of life
Lesson notes of climatology university.
Classroom Observation Tools for Teachers
Module 4: Burden of Disease Tutorial Slides S2 2025
RMMM.pdf make it easy to upload and study
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Anesthesia in Laparoscopic Surgery in India
master seminar digital applications in india
Final Presentation General Medicine 03-08-2024.pptx
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Yogi Goddess Pres Conference Studio Updates
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
GDM (1) (1).pptx small presentation for students
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
Orientation - ARALprogram of Deped to the Parents.pptx
FourierSeries-QuestionsWithAnswers(Part-A).pdf
O5-L3 Freight Transport Ops (International) V1.pdf

Chapter 3Good Practices forRequirements Engineering

  • 1. Chapter 3: Good Practices for Requirements Engineering © Karl E. Wiegers A Process � Be iterative, incremental, interleaved (overlapped) 2 Elicitation Analysis Specification Validation re-evaluate clarify rewrite correct and fill in 3.1 Elicitation, 1 � Define the requirements development process—its steps and activities. � Write a vision and scope document
  • 2. ◦ define objectives ◦ set boundaries ◦ focus the project 3 Elicitation, 2 � Identify user classes ◦ Roles ◦ Goals ◦ Features used ◦ Frequency of use ◦ Knowledge and skill levels ◦ Location, attitude 4 Elicitation, 3 � Product champions from user classes ◦ Representatives of group
  • 3. ◦ Speak for them ◦ Decide on their behalf ◦ Long-term commitment to project � Focus groups from user classes ◦ Describe functionality and quality needs ◦ Short-term commitment 5 Elicitation, 4 � Identify use cases ◦ Tasks to be accomplished ◦ Goals and purpose ◦ User/system interactions � Identify system events/responses ◦ External signals and data ◦ Temporal events ◦ Business events (customer calls, inventory changes,…) 6
  • 4. Elicitation, 5 � Workshops ◦ Collaboration between analyst and user ◦ Discussions and draft documents � Observe users ◦ Current tasks establish context for new system ◦ Data flow can be captured 7 Elicitation, 6 � Examine problem reports ◦ Difficulties with old system can reveal needs for new one ◦ Enhancements may have been explicitly requested � Reuse requirements ◦ Look for similarities to previous projects, existing products
  • 5. 8 3.2 Analysis, 1 � Draw a context diagram ◦ Show environment, boundaries, interfaces � Create prototypes ◦ User interfaces—to get feedback about a tangible entity ◦ Technical—to explore feasibility of potential problem areas 9 3.2 Analysis, 2 � Prioritize ◦ Allocate requirements to releases ◦ Adjust to changes in resources, needs, goals, market conditions � Model ◦ Use an abstract, flexible representation ◦ Use rigorous notation to reveal problems
  • 6. (incomplete, inconsistent, conflicting) 10 Analysis, 4 � Identify the interfaces btw. To other systems � Identify the requirements to other subsystems. 11 3.3 Specification, 1 � Documentation—consistent, accessible, reviewable � Adopt SRS template—such as IEEE 830 � Identify sources ◦ Justify presence of requirements ◦ Support future clarification � Label requirements ◦ Have unique ID for traceability and management
  • 7. 12 Specification, 2 � Record business rules ◦ Keep separate from SRS, they exist outside the scope of a single project. � Specify quality attributes ◦ Performance, efficiency, reliability, robustness, usability—all affect customer/user satisfaction. 13 3.4 Validation � Inspect documents ◦ Formal examinations by people with different perspectives and expertise. ◦ Informal reviews of drafts in progress. � Define test cases ◦ Describe expected behavior ◦ Review with customer/user ◦ Trace to specification
  • 8. ◦ Define acceptance criteria 14 3.5 Management, 1 � Define change control process—proposal, analysis, resolution � Establish a Change Control Board—small, competent, empowered group � Perform impact analysis ◦ scope of change (other artifacts affected) ◦ effort and cost 15 Management, 2 � Establish baseline and version control ◦ Distinguish between release baselines ◦ Distinguish between previous and current versions � Maintain a change history—know the what, when, who, and why
  • 9. � Track change status—know every requirement’s condition (proposed, approved, implemented, verified) 16 Management, 3 � Measure volatility ◦ Know the rate of change ◦ Identify problems (poor understanding, ill- defined scope, business dynamics, politics) � Use a tool—automation eliminates drudgery, enables previously-described tasks 17 Management, 4 � Create a traceability matrix ◦ Connect requirements, code, tests ◦ Ensure no requirements are missed ◦ Prevent extraneous features from appearing 18