Requirements Management
Methodology, tools and CMMI
Presentation Objectives
• What questions should be asked? When:
– Building a Requirement Management
Methodology
– Choosing the tool supporting the methodology
• How these questions relate to CMMI?
21st April 2010 Eric Mariacher - Logitech 2
Intended Audience
• Anyone involved in managing, auditing or
architecturing Requirement Management
Processes
21st April 2010 Eric Mariacher - Logitech 3
Agenda
• Background
• Defining a methodology
• Choosing the right tool
• Using the tool right: my experience
• How right? Bundle it all: CMMI
21st April 2010 Eric Mariacher - Logitech 4
Product lifecycle
Marketing:
•Doing the right thing
Specify Test
Management: Product QA:
•Getting visibility Checking thing is
done right
Process QA:
•Checking how right
thing is done
Develop Developers:
21st April 2010 Eric Mariacher - Logitech
•Doing thing right 5
Product lifecycle
Process Management
Checking how right
Doing the right thing thing is done
Requirement Test
Management Management
Checking thing is
done right
Configuration
Management
Doing thing right
21st April 2010 Eric Mariacher - Logitech 6
Agenda
• Background
• Defining a methodology
• Choosing the right tool
• Using the tool right: my experience
• How right? Bundle it all: CMMI
21st April 2010 Eric Mariacher - Logitech 7
Methodology
• Roles and Responsabilities
• Document Flow
• Iterative
– Manage change proactively
21st April 2010 Eric Mariacher - Logitech 8
Roles and Responabilities
• Management, Project managers
• Marketing
• System architects / Technical leaders
• Developers
• Product QA
• Process QA
21st April 2010 Eric Mariacher - Logitech 9
Document Flow
Marketing / Users
Requirements
Test Plan
System/
Architecture Test Execution
Specification
Test Reports
Functional
Specification
Bugs
Test Management
Files and Configuration Management
Releases
Requirement Management
21st April 2010 Eric Mariacher - Logitech 10
Accept all changes as they
occur
Accept all changes as they
come
changes
time
Passive?
- Un-trackable
- Frustrations
Freeze requirements at Project
start
Accept all changes as they Freeze
come
changes
changes
time time
Passive? Overkill?
- Un-trackable - Waterfall model -> too lengthy
schedule
- Frustrations
« stepped RM process » as a
response to requirement
change
Accept all changes as they Freeze
come Re-negociate changes at
defined milestones
changes
Agile
changes
changes
time
time time
Passive? Overkill?
Proactive
- Un-trackable - Waterfall model -> too lengthy
- Frustrations
schedule + Trackable
+ Iterative
Agenda
• Background
• Defining a methodology
• Choosing the right tool
• Using the tool right: my experience
• How right? Bundle it all: CMMI
21st April 2010 Eric Mariacher - Logitech 14
Questions / checklist:
Centralized & Attributes
Question Priority Tool /
Methodology
Feature
Where do you find this document? Centralized repository
What requirement are you talking Unique ID
about?
I don’t find the info I need in this Attributes / template
requirement?
What is the complexity and/or risk Attributes / template
associated to this requirement?
What is the priority of this Attributes / template
requirement?
Questions / checklist: Process
Flow
Question Priority Tool /
Methodology
Feature
Who is the owner of this Attributes / template,
Roles and
requirement? Responsibility &
Process flow
Is this requirement agreed by Process flow
everyone?
Have we finished to implement this Process flow
requirement?
I commented it, haven’t you read it? Discussion thread &
Process flow
I was not aware of this change Discussion thread &
Process flow
Questions / checklist:
Traceability
Question Priority Tool /
Methodology
Feature
Why are we implementing this Traceability
feature?
What is the impact if we change this Traceability
requirement?
Have all Marketing requirements Traceability
been translated into system
specifications?
Have all requirements been tested? Traceability
What is the minimum set of tests we Traceability
must run to have 100% coverage?
Questions / checklist:
Miscelleanous
Question Priority Tool / Methodology
Feature
Is there something I can print? Printing
On what exact set of History / baselines
requirements did we agree on?
Project/Global Requirement Attributes / template &
History / baselines
Maturity/Stability trend?
Can we reuse this requirement Reuse / platform
from a previous project?
How can I build this special Customization
report and this special view?
Working offline or on distributed Synchronization
servers
Questions / checklist: Easy to
use
Questions / checklist:
Centralized & Attributes
Question Priority Tool /
Methodology
Feature
Where do you find this document? high Centralized
repository
What requirement are you talking mid Unique ID
about?
I don’t find the info I need in this mid Attributes / template
requirement?
What is the complexity and/or risk mid Attributes / template
associated to this requirement?
What is the priority of this high Attributes / template
requirement?
Questions / checklist: Process
Flow
Question Priority Tool /
Methodology
Feature
Who is the owner of this low Attributes / template,
Roles and
requirement? Responsibility &
Process flow
Is this requirement agreed by mid Process flow
everyone?
Have we finished to implement low Process flow
this requirement?
I commented it, haven’t you read low Discussion thread &
Process flow
it?
I was not aware of this change mid Discussion thread &
Process flow
Project document flow
Common Generic
Feature Library In RMTool: Libraries
System Spec
Owner: Owner: In RMTool: Project documents
Mktg & Eng System Architect
In TestMgmtTool
Traceability
Mktg Reqs System Spec Test Plan
Matrix
Owner: Owner: Owner:
Owner:
Mktg System Architect PQA
PQA
21st April 2010 Eric Mariacher - Logitech 26
Questions / checklist:
Traceability
Question Priority Tool /
Methodology
Feature
Why are we implementing this mid Traceability
feature?
What is the impact if we change this low Traceability
requirement?
Have all Marketing requirements mid Traceability
been translated into system
specifications?
Have all requirements been tested? high Traceability
What is the minimum set of tests we low Traceability
must run to have 100% coverage?
Traceability Trees
Marketing System Functional Test Plan
requirements Specifications Specifications
test156
MktgReq12 sys3 func73
test89
sys7 func15
MktgReq53 test67
func26
sys45
test22
func57
test124
21st April 2010 Eric Mariacher - Logitech 28
Traceability Matrix
Tests
Test1 Test2 Test3
Requirements
Req1
Req2
Req3
Questions / checklist:
Miscelleanous
Question Priority Tool /
Methodology
Feature
Is there something I can print? high Printing
On what exact set of mid History / baselines
requirements did we agree on?
Project/Global Requirement low Attributes / template &
History / baselines
Maturity/Stability trend?
Can we reuse this requirement high Reuse / platform &
Traceability
from a previous project?
How can I build this special mid Customization
report and this special view?
Working offline or on distributed mid Synchronization
servers
Requirement Management:
Project stepped maturity trend
Project maturity trend
60
requirement status
50
40 delayed
draft
30
false agreed
20 agreed
10
0
1/1/2006
1/15/2006
1/29/2006
2/12/2006
2/26/2006
3/12/2006
3/26/2006
4/9/2006
4/23/2006
5/7/2006
5/21/2006
21st April 2010 time
Eric Mariacher - Logitech 31
Am I sure this requirement is not going
to change (Stability)?
Requirement change HISTORY
14
12
10
Did not Changed during
last Quarter
8 Changed during last
Quarter
Changed during last
6 Month
Changed during last
4
week
0
N 05
Ju 6
N 5
D 05
25 005
Au 05
Ap 6
Se 5
Ja 5
Ja 6
Fe 6
M 6
Ap 6
M 6
6
Se 5
17 005
05 200
28 200
03 00
21st April 2010 Eric Mariacher - Logitech 32
05 200
09 00
30 200
20 200
13 00
24 00
15 200
00
26 200
07 t20
19 20
15 l20
l2
2
2
b2
r2
n2
p2
ay
ar
ov
ov
r
g
n
c
ec
Ju
Ju
O
04
Ease of use. Document view vs
Database view
Document view Database view
ID Requirements Priority ID Requirements
sys3 Requirement high sys3 Requirement title
title requirement
body ID Requirements Priority
sys4 Another req title
sys3 Requirement high
sys4 Another req title mid title requirement
sys5 Yet another title
another body
requirement body
sys5 Yet another title high
yet another body
Agenda
• Background
• Defining a methodology
• Choosing the right tool
• Using the tool right: my experience
• How right? Bundle it all: CMMI
21st April 2010 Eric Mariacher - Logitech 36
What does the CMMI address?
How
well?
CMMI
How
? Development Processes
Our Delivering the product
job
21st April 2010 Eric Mariacher - Logitech 38
CMMI in 1 slide
Improving processes for better products
• Process Management Process Areas
• Project Management Process Areas
• Support Process Areas
– Configuration Management
• Engineering Process Areas
– Requirement Development
– Requirement Management
• SG specific goal
– SP specific practice
» SubPractices // Typical Work Products
21st April 2010 Eric Mariacher - Logitech 39
RM vs RD
• Requirement Management addresses
managing requirement once they have been
developed
• Requirement Development produces and
analyzes customer and product requirements
• In this presentation: focus is on RM
21st April 2010 Eric Mariacher - Logitech 40
CMMI: Requirements Management
Process Area
• SG 1 Manage Requirements
– SP 1.1 Obtain an Understanding of Requirements
– SP 1.2 Obtain Commitment to Requirements
– SP 1.3 Manage Requirements Changes
– SP 1.4 Maintain Bidirectional Traceability of Requirements
– SP 1.5 Identify Inconsistencies Between Project Work and
Requirements
• GG1 to 5 Generic Practices
21st April 2010 Eric Mariacher - Logitech 41
Questions / checklist:
Centralized & Attributes
Question CMMI practice or
subpractice
Where do you find this document? GP2.6 Manage Configurations
What requirement are you talking GP2.6 Manage Configurations
about?
I don’t find the info I need in this SP 1.1Obtain an Understanding
of Requirements
requirement?
What is the complexity and/or risk SP 1.1Obtain an Understanding
of Requirements
associated to this requirement?
What is the priority of this SP 1.1Obtain an Understanding
of Requirements
requirement?
Questions / checklist: Process
Flow
Question CMMI practice or
subpractice
Who is the owner of this SP 1.2 Obtain Commitment to
Requirements
requirement?
Is this requirement agreed by SP 1.2 Obtain Commitment to
Requirements
everyone?
Have we finished to implement this GP2.6 Manage Configurations
requirement?
I commented it, haven’t you read it? SP 1.1Obtain an Understanding
of Requirements
I was not aware of this change SP 1.3 Manage Requirements
Changes
Questions / checklist:
Traceability
Question CMMI practice or
subpractice
Why are we implementing this SP 1.4 Bidirectional Traceability
SP 1.5 Identify Inconsistencies
feature? Between Work and Requirements
What is the impact if we change this SP 1.5 Identify Inconsistencies…
SP 1.3 Manage Requirements
requirement? Changes
Have all Marketing requirements SP 1.4 Maintain Bidirectional
Traceability of Requirements
been translated into system
specifications?
Have all requirements been tested? SP 1.4 Maintain Bidirectional
Traceability of Requirements
What is the minimum set of tests we SP 1.4 Maintain Bidirectional
Traceability of Requirements
must run to have 100% coverage?
Questions / checklist:
Miscelleanous
Question CMMI practice or
subpractice
Is there something I can print?
On what exact set of requirements SP 1.2 Obtain Commitment to
Requirements
did we agree on?
Project/Global Requirement GP2.8 Monitor and Control the
Process
Maturity/Stability trend?
Can we reuse this requirement from
a previous project?
How can I build this special report
and this special view?
Working offline or on distributed
servers