![Page 1: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/1.jpg)
Good Practices of Requirements Eng.Good Practices of Requirements Eng.
Copyright, 2000 © Jerzy R. Nawrocki
www.cs.put.poznan.pl/jnawrocki/mse/require/
Requirements Engineering Requirements Engineering
Lecture 1Lecture 100
Requirements Engineering Requirements Engineering
Lecture 1Lecture 100
![Page 2: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/2.jpg)
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelinesIntermediate guidelinesAdvanced guidelines
![Page 3: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/3.jpg)
J. Nawrocki, Requirements Eng., 10
Overview of RE guidelinesOverview of RE guidelinesOverview of RE guidelinesOverview of RE guidelines
The requirements document
Requirements elicitation
Reqs analysis & negotiation
Describing requirements
System modelling
Requirements validation
Requirements management
RE for critical systems
Basic Interm Adv
8
6
54
3
4
4
2
36
-
6
21
3
3
3
3
21
-
1
1-
-
1
2
4
9
![Page 4: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/4.jpg)
J. Nawrocki, Requirements Eng., 10
ScoringScoringScoringScoring
3 - standardised: documented standard followed and checked as part of the quality management process;
2 - normal use: widely followed but not mandatory;
1 - discretionary use: used at discretion of project manager;
0 - never: never or very rarely used;
3
0
![Page 5: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/5.jpg)
J. Nawrocki, Requirements Eng., 10
Maturity levels for REMaturity levels for REMaturity levels for REMaturity levels for RE
Defined
> 85 Basic & > 40 Interm & Adv
Defined
> 85 Basic & > 40 Interm & AdvRepeatable
> 55 Basic & < 40 Interm & Adv
Repeatable
> 55 Basic & < 40 Interm & AdvInitial
< 55 Basic
Initial
< 55 Basic
![Page 6: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/6.jpg)
J. Nawrocki, Requirements Eng., 10
Legend for RE quidelinesLegend for RE quidelinesLegend for RE quidelinesLegend for RE quidelines
• Responsibility of Project Managers• Responsibility of SDS Senior Responsibility of SDS Senior
Managers or Quality AssurersManagers or Quality Assurers• At a discretion of Project
Managers
![Page 7: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/7.jpg)
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Introduction
Basic guidelinesIntermediate guidelinesAdvanced guidelines
![Page 8: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/8.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Requirements document
• Define a standard document structureDefine a standard document structure• Explain how to use the document• Include a summary of the requirements
(purpose of the system, main actors, titles of main use cases)
• Make a business case for the system (usage scenarios: problem descriptions & improvement proposals)
![Page 9: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/9.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Requirements document
• Define specialised terms (glossary)• Lay out the document for readability• Help readers find information (?)• Make the document easy to change
![Page 10: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/10.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Requirements elicitation
• Assess system feasibility• Be sensitive to organisational &
political considerations• Identify and consult stakeholders• Record requirement sources• Define operating environment• Use business concerns to drive
requirements elicitation (planning game)
Give me a crocodile!
![Page 11: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/11.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Analysis and negotiation
• Define system boundaries (use case diagrams; interaction diagrams)
• Use checklists for requirements analysisUse checklists for requirements analysis (reading scenarios?)
• Provide software to support negotiationsProvide software to support negotiations (e-mail, ClearQuest)
• Plan for conflicts and conflict resolution (FAST & inspections)
• Prioritise requirements (planning game)
![Page 12: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/12.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Describing requirements
• Define standard templates for Define standard templates for describing requirementsdescribing requirements
• Use language simply & concisely• Use diagrams appropriately• Supplement natural language with
other descriptions of requirements (UML diagrams)
![Page 13: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/13.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
System modelling
• Develop complementary system models (UML diagrams)
• Model the system’s environment• Model the system architecture
(deployment diagrams)
![Page 14: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/14.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Requirements validation
• Check that the requirements Check that the requirements document meets your standarddocument meets your standard
• Organise formal requirements Organise formal requirements inspectionsinspections
• Use multidisciplinary teams to Use multidisciplinary teams to review requirementsreview requirements
• Define validation checklistsDefine validation checklists
![Page 15: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/15.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
Requirements management
• Uniquely identify each requirement
• Define policies for requirements Define policies for requirements managementmanagement
• Define traceability policiesDefine traceability policies• Maintain a traceability manual
(RequisitePro)
![Page 16: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/16.jpg)
J. Nawrocki, Requirements Eng., 10
Basic guidelinesBasic guidelinesBasic guidelinesBasic guidelines
RE for critical systems
• Create safety requirements Create safety requirements checklistschecklists
• Involve external reviewers in the Involve external reviewers in the validation processvalidation process
![Page 17: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/17.jpg)
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelines
Intermediate guidelinesAdvanced guidelines
![Page 18: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/18.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Requirements elicitation
• Record requirements rationale• Use scenarios
Give me a crocodile!
![Page 19: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/19.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Analysis and negotiation
• Classify requirements using using a multidimensional approach
• Use interaction matrices to find conflicts and overlaps
![Page 20: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/20.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Describing requirements
• Specify requirements quantitatively
![Page 21: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/21.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
System modelling
• Use structured methods for system modelling
• Use a data dictionary• Document the links between
stakeholder requirements and system models
![Page 22: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/22.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Requirements validation
• Use prototyping to animate requirements
• Write a draft user manual• Propose requirements test
cases
![Page 23: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/23.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Requirements management
• Use a database to manage requirements (RequisitePro)
• Define change management policies (ClearCase LT, ClearQuest)
• Identify global system requirements
![Page 24: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/24.jpg)
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
RE for critical systems
• Identify and analyse hazards• Derive safety requirements from
hazard analysis• Cross-check operational and
functional requirements against safety requirements
![Page 25: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/25.jpg)
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelinesIntermediate guidelines
Advanced guidelines
![Page 26: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/26.jpg)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements elicitation
• Reuse requirements
Give me a crocodile!
![Page 27: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/27.jpg)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Analysis and negotiation
• Assess requirements risks (exploration & planning game)
![Page 28: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/28.jpg)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements validation
• Paraphrase system models
![Page 29: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/29.jpg)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements management
• Identify volatile requirements• Record rejected requirements
![Page 30: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/30.jpg)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
RE for critical systems
• Specify systems using formal specification
• Collect incident experience• Learn from incident experience• Establish an organisational
safety culture
![Page 31: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/31.jpg)
J. Nawrocki, Requirements Eng., 10
Further readingsFurther readingsFurther readingsFurther readings
• I. Sommerville, P. Sawyer, Requirements Engineering, John Wiley & Sons, Chichester, 1997.
![Page 32: Good Practices of Requirements Eng. Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl Requirements](https://reader035.vdocuments.us/reader035/viewer/2022062802/56649eb35503460f94bbb3b5/html5/thumbnails/32.jpg)
J. Nawrocki, Requirements Eng., 10
Quality assessmentQuality assessmentQuality assessmentQuality assessment
1. What is your general impression? (1 - 6)
2. Was it too slow or too fast?
3. What important did you learn during the lecture?
4. What to improve and how?