Date post: | 13-Jan-2016 |
Category: |
Documents |
Upload: | shawn-robbins |
View: | 215 times |
Download: | 0 times |
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
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelinesIntermediate guidelinesAdvanced guidelines
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
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
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
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
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Introduction
Basic guidelinesIntermediate guidelinesAdvanced guidelines
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)
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
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!
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)
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)
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)
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
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)
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
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelines
Intermediate guidelinesAdvanced guidelines
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Requirements elicitation
• Record requirements rationale• Use scenarios
Give me a crocodile!
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
J. Nawrocki, Requirements Eng., 10
Intermediate guidelinesIntermediate guidelinesIntermediate guidelinesIntermediate guidelines
Describing requirements
• Specify requirements quantitatively
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
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
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
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
J. Nawrocki, Requirements Eng., 10
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
IntroductionBasic guidelinesIntermediate guidelines
Advanced guidelines
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements elicitation
• Reuse requirements
Give me a crocodile!
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Analysis and negotiation
• Assess requirements risks (exploration & planning game)
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements validation
• Paraphrase system models
J. Nawrocki, Requirements Eng., 10
Advanced guidelinesAdvanced guidelinesAdvanced guidelinesAdvanced guidelines
Requirements management
• Identify volatile requirements• Record rejected requirements
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
J. Nawrocki, Requirements Eng., 10
Further readingsFurther readingsFurther readingsFurther readings
• I. Sommerville, P. Sawyer, Requirements Engineering, John Wiley & Sons, Chichester, 1997.
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?