Introduction to Requirements Eng.Introduction to Requirements Eng.
Copyright, 2001 © Jerzy R. Nawrocki
www.cs.put.poznan.pl/jnawrocki/mse/require/
Requirements Engineering Requirements Engineering
Lecture 1Lecture 1
Requirements Engineering Requirements Engineering
Lecture 1Lecture 1
J. Nawrocki, Requirements Eng. (1)
2
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Organisational issuesStructured meetings• FAST• Delphi method• Fagan inspections
J. Nawrocki, Requirements Eng. (1)
3
Success storiesSuccess storiesSuccess storiesSuccess stories
Scholarships of the Ministry of National Education:Scholarships of the Ministry of National Education:• Leszek GawronLeszek Gawron• Wojtek GryncewiczWojtek Gryncewicz• Grzegorz JachimkoGrzegorz Jachimko• Tomek JaniszewskiTomek Janiszewski• Michał JasinskiMichał JasinskiKKIO’2001:KKIO’2001:• Michał JasinskiMichał Jasinski• Grzegorz WieczerzakGrzegorz Wieczerzak
J. Nawrocki, Requirements Eng. (1)
4
SDS 2001/02SDS 2001/02SDS 2001/02SDS 2001/02
Laboratory 214 (6 workstations + server)Laboratory 214 (6 workstations + server)
Rational SuiteRational Suite
CMMI Level 2 + XP (Customer) + RUPCMMI Level 2 + XP (Customer) + RUP
Standard activities:Standard activities:• FASTFAST, , DelphiDelphi, , Fagan inspectionsFagan inspections
Roles for 5th-year students:Roles for 5th-year students:• FacilitatorFacilitator, , Tester Tester ((acceptance tests)acceptance tests), , ReviewerReviewer
Roles for 4Roles for 4thth-year students:-year students:• Analyst, Project Manager, Configuration Analyst, Project Manager, Configuration
Manager, TrackerManager, Tracker
J. Nawrocki, Requirements Eng. (1)
5
LecturesLecturesLecturesLectures
3.10: Introduction3.10: Introduction
10.10: RequisitePro (1)10.10: RequisitePro (1)
15.10: RequisitePro (2), 15:15, Prof. Club15.10: RequisitePro (2), 15:15, Prof. Club
24.10: RequisitePro (3)24.10: RequisitePro (3)
31.10: ClearCase LT (1)31.10: ClearCase LT (1)
7.11: ClearCase LT (2)7.11: ClearCase LT (2)
14.11: ClearQuest14.11: ClearQuest
21.11: SoDA (1)21.11: SoDA (1)
28.11: SoDA (2)28.11: SoDA (2)
J. Nawrocki, Requirements Eng. (1)
6
LecturesLecturesLecturesLectures
5.12: Rose (1)5.12: Rose (1)
12.12: Rose (2)12.12: Rose (2)
19.12: CMMI Level 219.12: CMMI Level 2
9.01: Personality issues9.01: Personality issues
16.01: Pre-exam16.01: Pre-exam
J. Nawrocki, Requirements Eng. (1)
7
LaboratoriesLaboratoriesLaboratoriesLaboratories10.10: Organisational issues, team game10.10: Organisational issues, team game24.10: RequisitePro24.10: RequisitePro31.10: RequisitePro31.10: RequisitePro 7.11: ClearCase LT7.11: ClearCase LT14.11: ClearCase LT14.11: ClearCase LT21.11: ClearQuest21.11: ClearQuest28.11: SoDA28.11: SoDA 5.12: SoDA5.12: SoDA12.12: Rose12.12: Rose . . .. . .16.01: Pre-exam16.01: Pre-exam23.01: Grades23.01: Grades
J. Nawrocki, Requirements Eng. (1)
8
GradingGradingGradingGrading
Pre-exam:Pre-exam:
14.01, 2 groups:14.01, 2 groups:• 13:45 group A + B (rooms 722 + 214)13:45 group A + B (rooms 722 + 214)• 15:00 group C + D (rooms 16 + 17)15:00 group C + D (rooms 16 + 17)
21.01: grades announcement21.01: grades announcement
Exam grades:Exam grades:
0.6 x Paper + 0.3 x Tutorials + 0.1 x Presence0.6 x Paper + 0.3 x Tutorials + 0.1 x Presence
J. Nawrocki, Requirements Eng. (1)
9
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Organisational issues
Structured meetings• FAST• Delphi method• Fagan inspections
J. Nawrocki, Requirements Eng. (1)
10
Sommerville’s ModelSommerville’s ModelSommerville’s ModelSommerville’s Model
Requirements elicitationRequirements elicitationRequirements elicitationRequirements elicitation
Requirements analysisRequirements analysisRequirements analysisRequirements analysis
Requirements negotiationRequirements negotiationRequirements negotiationRequirements negotiation RequirementsRequirements
definitiondefinition
RequirementsRequirements
definitiondefinition
J. Nawrocki, Requirements Eng. (1)
11
Developers Custom
ers
FASTFASTFASTFAST
FAST = Facilitated Application Specification Technique
JAD Joint Application Development - another approach to FASTFac
ilita
tor Recorder
J. Nawrocki, Requirements Eng. (1)
12
FASTFASTFASTFAST
Facilitator - runs the meeting(s)
Recorder - takes notes, serves tape recorder or video recorder
Developers & customer representatives - work on requirements
Senior manager - knows about the meeting date & time
Persons involved
J. Nawrocki, Requirements Eng. (1)
13
FASTFASTFASTFAST
The list of stakeholders and views should be ready before the project leaders start to organise the first FAST meeting.
Get from the customer the initial list of requirements sources (manuals, organisation charts, technical data, ..) and read it before the meeting.
Conducting a FAST meeting via phone or e-mail should be avoided.
Before the first meeting
J. Nawrocki, Requirements Eng. (1)
14
FASTFASTFASTFAST
Product request ( Project Proposal)
Aim & goals of the meeting
Agenda for the meeting
Information about place and time
Input documents
J. Nawrocki, Requirements Eng. (1)
15
FASTFASTFASTFAST
A worksheet to fill inMissing stakeholdersMissing requirements sourcesObjects (devices, documents, etc.):• external to the system• produced by the system• internal - used by the systemServices that manipulate the objectsConstraints (cost, size, time, ...)
Input documents
J. Nawrocki, Requirements Eng. (1)
16
FASTFASTFASTFAST
Product justification (consensus)Presentation of the worksheets (one
by one, no critique)Deciding (discussion) about:• Stakeholders• System architecture (objects) • Services• Constraints• Validation criteria
An agenda example
J. Nawrocki, Requirements Eng. (1)
17
FASTFASTFASTFAST
Direct:• Meeting minutes
Indirect:• Software Requirements
Specification (validation criteria!)
Meeting outcomes
J. Nawrocki, Requirements Eng. (1)
18
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Organisational issuesStructured meetings• FAST
• Delphi method• Fagan inspections
J. Nawrocki, Requirements Eng. (1)
19
Delphi methodDelphi methodDelphi methodDelphi method
Rand Corporation, Boehm’81Rand Corporation, Boehm’81
• A few experts individually A few experts individually produce effort estimates.produce effort estimates.
• A Delphi process is used to A Delphi process is used to reach a consensus. reach a consensus.
PythiaPythia
J. Nawrocki, Requirements Eng. (1)
20
Delphi methodDelphi methodDelphi methodDelphi method
1. Experts get the specification and an 1. Experts get the specification and an estimation formestimation form
2. They meet for discussion (project goals, 2. They meet for discussion (project goals, assumptions, estimation issues)assumptions, estimation issues)
3. Each expert anonymously lists the tasks 3. Each expert anonymously lists the tasks and estimates the sizeand estimates the size
4. The estimates go to the estimate 4. The estimates go to the estimate moderator. He tabulates the results and moderator. He tabulates the results and returns them to the experts.returns them to the experts.
The Delphi procedureThe Delphi procedureThe Delphi procedureThe Delphi procedure
The estimateThe estimate
moderatormoderator
J. Nawrocki, Requirements Eng. (1)
21
Delphi methodDelphi methodDelphi methodDelphi method
Estimator: Jerzy Nawrocki Date: 22.06.1999Estimator: Jerzy Nawrocki Date: 22.06.1999
Project: Sorting routineProject: Sorting routine
The estimates from the 1st round:The estimates from the 1st round:
e E M e ee E M e e
0 20 40 60 80 1000 20 40 60 80 100
e - estimates, E - your estimate, M - median estimatee - estimates, E - your estimate, M - median estimate
Your estimate for the next round: ......... Hours.Your estimate for the next round: ......... Hours.
A rationale for your estimate: ............................................A rationale for your estimate: ............................................
........................................................................................................................................................................................
J. Nawrocki, Requirements Eng. (1)
22
Delphi methodDelphi methodDelphi methodDelphi method
5. The experts meet to discuss the results. 5. The experts meet to discuss the results. They review the tasks they have defined They review the tasks they have defined but not their size estimates.but not their size estimates.
6. The procedure is repeated from step 3 6. The procedure is repeated from step 3 until the estimates are acceptably nearuntil the estimates are acceptably near
The Delphi procedureThe Delphi procedureThe Delphi procedureThe Delphi procedure
The estimateThe estimate
moderatormoderator
J. Nawrocki, Requirements Eng. (1)
23
Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture
Organisational issuesStructured meetings• FAST• Delphi method
• Fagan inspections
J. Nawrocki, Requirements Eng. (1)
24
Desig
ner
Fagan inspectionsFagan inspectionsFagan inspectionsFagan inspections
Implem
entor
Moder
ator Tester
Reviewsession
J. Nawrocki, Requirements Eng. (1)
25
Fagan inspectionsFagan inspectionsFagan inspectionsFagan inspections
1. Overview (whole team)
2. Preparation (individual)
3. Inspection (whole team)
4. Rework
5. Follow-up
Design
er Implem
.
Mod
erat
or Tester
Reviewsession
J. Nawrocki, Requirements Eng. (1)
26
Fagan inspectionsFagan inspectionsFagan inspectionsFagan inspections
Overview (whole team) 500 not necessary
Preparation (individual) 100 125
Inspection (whole team) 130 150
Rework 50 60
Follow-up - -
II11 II22
Rate of progress (loc/h)Rate of progress (loc/h)
• Inspection session <= 2 hours• 1 - 2 sessions per day
J. Nawrocki, Requirements Eng. (1)
27
SummarySummarySummarySummary
RE has to support SDS
Main theme: Rational Suite
Structured meetings (FAST & inspections)
J. Nawrocki, Requirements Eng. (1)
28
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?