tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split
DESCRIPTION
Tutorial: Quality Management and Process Improvement with the Team Software Process - João Pascoal Faria (FEUP)TRANSCRIPT
![Page 1: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/1.jpg)
Portugal
Quality Management and Process Improvement with
the Team Software Process
João Pascoal FariaAssistant Professor
FEUP
2012-07-06
![Page 2: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/2.jpg)
22
Questions
1. Do you have problems/concerns with software quality?
2. Do you have problems/concerns with cost of quality?
3. Do you know your current quality and cost of quality levels?
4. How do they compare with industry benchmarks?
5. How can you improve quality and reduce the cost of quality?
![Page 3: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/3.jpg)
33
Agenda
Motivation
TSP Performance Results
Factor I – Bottom-Up Performance Improvement
Factor II - Personal Responsibility
Factor III – Feedback Loops for Continual Improvement
Factor IV – Cost-Effective Defect Removal Methods
Factor V - Measurement and Quantitative Methods
Conclusions
![Page 4: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/4.jpg)
44
Motivation
![Page 5: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/5.jpg)
55
Top 10 software engineering trends
1. Increasing emphasis on rapid development and adaptability;
2. Increasing software criticality and need for assurance;
…
Barry Boehm 2011
![Page 6: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/6.jpg)
66
Increasing software criticality and need for assurance
“Although people’s, systems’, and organizations’ dependency on software is becoming increasingly critical, dependability is generally not the top priority for software producers.”
Barry Boehm 2011
![Page 7: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/7.jpg)
77
Increasing software criticality and need for assurance
“Although people’s, systems’, and organizations’ dependency on software is becoming increasingly critical, dependability is generally not the top priority for software producers.”
“(In fact) the IT industry spends the bulk of its resources, both financial and human, on rapidly bringing products to market.”
Barry Boehm 2011
![Page 8: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/8.jpg)
88
Increasing software criticality and need for assurance
“Although people’s, systems’, and organizations’ dependency on software is becoming increasingly critical, dependability is generally not the top priority for software producers.”
“(In fact) the IT industry spends the bulk of its resources, both financial and human, on rapidly bringing products to market.”
“This situation will likely continue until a major software-induced systems catastrophe similar in impact on world consciousness to the 9/11 World Trade Center catastrophe stimulates action toward establishing accountability for software dependability.”
Barry Boehm 2011
![Page 9: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/9.jpg)
99
Why should quality be the top priority?
![Page 10: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/10.jpg)
1010
Why should quality be the top priority?
Increasing dependency on software systems
![Page 11: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/11.jpg)
1111
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
![Page 12: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/12.jpg)
1212
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
![Page 13: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/13.jpg)
1313
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
![Page 14: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/14.jpg)
1414
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
![Page 15: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/15.jpg)
1515
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
– Buffer overflow, SQL injection, etc.
![Page 16: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/16.jpg)
1616
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
– Buffer overflow, SQL injection, etc.
Huge economic impact of software errors
![Page 17: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/17.jpg)
1717
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
– Buffer overflow, SQL injection, etc.
Huge economic impact of software errors
– Direct costs of sw errors represent 0,6% of USA’s GNP [NIST, 2002]
![Page 18: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/18.jpg)
1818
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
– Buffer overflow, SQL injection, etc.
Huge economic impact of software errors
– Direct costs of sw errors represent 0,6% of USA’s GNP [NIST, 2002]
Quality work saves time and money
![Page 19: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/19.jpg)
1919
Why should quality be the top priority?
Increasing dependency on software systems
– 80%+ of functionality of modern aircrafts provided by sw [Humphrey, 2002]
Increasing criticality of functions provided by software
– e-banking, aircraft control software, medical device software, …
Software defects are a primary cause of security vulnerabilities
– Buffer overflow, SQL injection, etc.
Huge economic impact of software errors
– Direct costs of sw errors represent 0,6% of USA’s GNP [NIST, 2002]
Quality work saves time and money
– Defect prevention and early defect removal reduce rework costs
![Page 20: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/20.jpg)
2020
Quality economics: Cost of Quality (COQ)
![Page 21: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/21.jpg)
2121
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
![Page 22: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/22.jpg)
2222
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs
![Page 23: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/23.jpg)
2323
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs • identifying and resolving defect causes • formal spec, prototyping, and design work• process analysis and improvement
![Page 24: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/24.jpg)
2424
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs • identifying and resolving defect causes • formal spec, prototyping, and design work• process analysis and improvement
– Appraisal (defect detection) costs
![Page 25: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/25.jpg)
2525
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs • identifying and resolving defect causes • formal spec, prototyping, and design work• process analysis and improvement
– Appraisal (defect detection) costs• reviews and inspections• test development and execution (once)
![Page 26: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/26.jpg)
2626
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs • identifying and resolving defect causes • formal spec, prototyping, and design work• process analysis and improvement
– Appraisal (defect detection) costs• reviews and inspections• test development and execution (once)
– Internal failure costs
![Page 27: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/27.jpg)
2727
Quality economics: Cost of Quality (COQ)
For producers, the goal is to reduce the cost of quality (COQ)
– Prevention costs • identifying and resolving defect causes • formal spec, prototyping, and design work• process analysis and improvement
– Appraisal (defect detection) costs• reviews and inspections• test development and execution (once)
– Internal failure costs• repair & rework before delivery
– External failure costs• repair & rework plus any scrap after delivery• law suites, loss of customers
![Page 28: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/28.jpg)
2828
Example: Security vulnerabilities
![Page 29: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/29.jpg)
2929
Example: Security vulnerabilities
![Page 30: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/30.jpg)
3030
Example: Security vulnerabilities
What happened
?
![Page 31: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/31.jpg)
3131
Example: Security vulnerabilities
What happened
?What is the
cause?
![Page 32: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/32.jpg)
3232
Example: Security vulnerabilities
What happened
?What is the
cause?
5 min
![Page 33: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/33.jpg)
3333
TSP Performance Results
![Page 34: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/34.jpg)
3434
Better product quality (industrial results)
7,5
6,24
4,73
2,28
1,05
0,06
0
1
2
3
4
5
6
7
8
Def
ecst
/KL
OC
CMM L1 CMM L2 CMM L3 CMM L4 CMM L5 TSP
Average Defect Density of Delivered Software
TSP impact study 2003, 20 projects in 13 organizations, several maturity levels
Capers Jones, 2000
![Page 35: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/35.jpg)
3535
Mea
n N
umbe
r of
Com
pile
and
Tes
t D
efec
ts P
er K
LOC
111098765432100
10
20
30
40
50
60
70
80
90
100
110
120
Program Number
PSP0 PSP1 PSP2
Defects
Better product quality (training results)
PSP Training results, SEI, 298 developers
1/3 with 0 defects
![Page 36: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/36.jpg)
3636
Reduced security vulnerabilities (Microsoft)
TSP + secure coding standards, security design patterns, static analysis tools, secure code inspections and reviews
8-person software development team
Created 30 thousand lines of new and modified code in 7 months
Source: TSP Secure, Noopur Davis et all, TSP Symposium 2009, New Orleans
![Page 37: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/37.jpg)
3737
Better, faster, cheaper (Microsoft IT)
Source: The TSP Story @ Microsoft IT, TSP Symposium, Phoenix, 2008
4 releases with TSP
compared to previous
releases without
TSP
TSP versus non-TSP
projects
![Page 38: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/38.jpg)
3838
Reduced cost of quality (Adobe)
J.Sartain, Senior Director, Quality,
Adobe 2009
![Page 39: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/39.jpg)
3939
Factor I – Bottom-Up Performance Improvement
![Page 40: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/40.jpg)
4040
Build high-performance teams from the bottom-up
TeamMemberSkills
TeamBuilding
TeamManagement
Personal Software Process
Team Software Process
Instance of high-maturity practices for teams
Instance of high-maturity practices for individuals
http://www.sei.cmu.edu/tsp/
![Page 41: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/41.jpg)
4141
Build high-performance teams from the bottom-up
TeamMemberSkills
TeamBuilding
TeamManagement
Process disciplinePerformance measuresEstimating & planning skillsQuality management skills
Personal Software Process
Team Software Process
Instance of high-maturity practices for teams
Instance of high-maturity practices for individuals
http://www.sei.cmu.edu/tsp/
![Page 42: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/42.jpg)
4242
Build high-performance teams from the bottom-up
TeamMemberSkills
TeamBuilding
TeamManagement
Process disciplinePerformance measuresEstimating & planning skillsQuality management skills
Goal settingRole assignmentTailored team processDetailed balanced plans
Personal Software Process
Team Software Process
Instance of high-maturity practices for teams
Instance of high-maturity practices for individuals
http://www.sei.cmu.edu/tsp/
![Page 43: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/43.jpg)
4343
Build high-performance teams from the bottom-up
TeamMemberSkills
TeamBuilding
TeamManagement
Process disciplinePerformance measuresEstimating & planning skillsQuality management skills
Goal settingRole assignmentTailored team processDetailed balanced plans
Team communicationTeam coordinationProject trackingRisk analysis
Personal Software Process
Team Software Process
Instance of high-maturity practices for teams
Instance of high-maturity practices for individuals
http://www.sei.cmu.edu/tsp/
![Page 44: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/44.jpg)
4444
Build personal performance from the bottom-up
Personal practices are introduced stepwise, through a sequence of small projects in a training environment
– The objective is to convince people by seeing their own performance improving as they practice
Team practices are introduced in real projects with the help of a coach
Establish a measured performance baseline
Size and effort estimation
Defect & yield management; design practices
![Page 45: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/45.jpg)
4545
Example: Personal PSP training experience
![Page 46: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/46.jpg)
4646
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
![Page 47: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/47.jpg)
4747
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
![Page 48: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/48.jpg)
4848
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
![Page 49: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/49.jpg)
4949
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
8th project: compute the minimum difference between two Java source files, in lines added, delete and modified, ignoring comments and blank lines (considering that deletions have null cost)
![Page 50: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/50.jpg)
5050
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
8th project: compute the minimum difference between two Java source files, in lines added, delete and modified, ignoring comments and blank lines (considering that deletions have null cost)
– Almost recovered the initial productivity
![Page 51: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/51.jpg)
5151
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
8th project: compute the minimum difference between two Java source files, in lines added, delete and modified, ignoring comments and blank lines (considering that deletions have null cost)
– Almost recovered the initial productivity– 5% effort estimation error
![Page 52: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/52.jpg)
5252
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
8th project: compute the minimum difference between two Java source files, in lines added, delete and modified, ignoring comments and blank lines (considering that deletions have null cost)
– Almost recovered the initial productivity– 5% effort estimation error– 2 defects in unit testing, caused by requirements problems!
![Page 53: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/53.jpg)
5353
Example: Personal PSP training experience
Goal: achieve 0 defects in unit testing and near 0% time estimation error, with the same productivity as before
PSP Fundamentals: Steady reduction of time estimation error, from 70% to 1% in 4 projects/days
PSP Advanced: Initial decrease of productivity because of the introduction of design documentation templates
8th project: compute the minimum difference between two Java source files, in lines added, delete and modified, ignoring comments and blank lines (considering that deletions have null cost)
– Almost recovered the initial productivity– 5% effort estimation error– 2 defects in unit testing, caused by requirements problems!– Next step: improve requirements analysis!
![Page 54: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/54.jpg)
5454
Factor II – Personal Responsibility
![Page 55: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/55.jpg)
5555
Personal responsibility: project management
There is only one way to manage knowledge workers: they must manage themselves [W. Humphrey]
![Page 56: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/56.jpg)
5656
Personal responsibility: project management
There is only one way to manage knowledge workers: they must manage themselves [W. Humphrey]
Traditional teamThe leader plans, directs,
and tracks the team’s work.
Team Leader
![Page 57: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/57.jpg)
5757
Personal responsibility: project management
There is only one way to manage knowledge workers: they must manage themselves [W. Humphrey]
Self-directed teamAll team members participate in planning, managing, and tracking their own work.
TSP Coach
Team Leader
Traditional teamThe leader plans, directs,
and tracks the team’s work.
Team Leader
![Page 58: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/58.jpg)
5858
Personal responsibility: project management
There is only one way to manage knowledge workers: they must manage themselves [W. Humphrey]
Self-directed teamAll team members participate in planning, managing, and tracking their own work.
TSP Coach
Team Leader
Traditional teamThe leader plans, directs,
and tracks the team’s work.
Team Leader
Planning Manager
Process Manager
Quality Manager
Support Manager
Test Manager
Implementation Manager
Design Manager
Costumer Interface Manager
![Page 59: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/59.jpg)
5959
Personal responsibility: project management
There is only one way to manage knowledge workers: they must manage themselves [W. Humphrey]
Self-directed teamAll team members participate in planning, managing, and tracking their own work.
TSP Coach
Team Leader
Traditional teamThe leader plans, directs,
and tracks the team’s work.
Team Leader
Planning Manager
Process Manager
Quality Manager
Support Manager
Test Manager
Implementation Manager
Design Manager
Costumer Interface Manager
OwnershipCommitmentMotivation
Performance
![Page 60: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/60.jpg)
6060
Personal responsibility: quality management
The only way to build high-quality products in a cost-effective way, is by having developers being personally responsible for the quality of their products.
Since defects can best be managed where they are injected,developers should
– remove their own defects– determine the causes of their defects– learn to prevent those defects
![Page 61: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/61.jpg)
6161
Factor III – Feadback Loops for Continual Improvement
![Page 62: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/62.jpg)
6262
Feedback loops: project lifecycle
Developmphaseor cyclephase
or cycle
Phase or cycleRetrospective
Developmentphase
or cycle
Launch
Re-launch
ProjectRetrospective
Lessons, new goals, new requirements, new risks, etc.
Business and technical goals Estimates, plans,
process, commitment
Work products, status, metrics, results
Weekly team meetings
Release planning
Iteration planning
Status
Updated status and plans
![Page 63: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/63.jpg)
6363
Feedback loops: estimating & planning frmwk
Estimate resources (effort)
Define requirements
Produce conceptual
design (PBS)Estimate
size
Produce task list, distribute effort
Produce schedule
Develop product
Size database
Productivity database
Resources available
Size, resource, schedule data
Process analysis
Product delivery
Tracking reports
PROBE method (PROxy Based Estimating)
Hist. distrib., Process def.
Costumer need
Items
Tasks
Costumer
Management
![Page 64: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/64.jpg)
6464
early defect detection &
removal
Feedback loops: quality framework
Development (and defect injection)
phase
Defect Data
Defect removal phase
Checklists, Test Criteria, …
Process/Data analysis
defect prevention
Subsequent phases late defect
detection & removal
Scripts, Standards, Awareness
Learn from past errors, because we tend to repeat the same errors!
![Page 65: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/65.jpg)
6565
Feedback loops: coaching (& leadership)
A coach helps improving individual and team performance through a continuous coaching/learning cycle
3. ConsciousCompetence
2. Conscious Incompetence
1. UnconsciousIncompetence
External Independent
voice
Guidance and
Feedback
4. UnconsciousCompetence
Next Stag
e
Practice
![Page 66: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/66.jpg)
6666
Example: Historical defect data analysis
![Page 67: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/67.jpg)
6767
Example: Historical defect data analysis
![Page 68: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/68.jpg)
6868
Example: Historical defect data analysis
Defect Types10 - Documentation60 – Checking80 – Function40 - Assignment70 - Data50 - Interface30 - Build100 - Environment
![Page 69: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/69.jpg)
6969
Example: Historical defect data analysis
Defect Types10 - Documentation60 – Checking80 – Function40 - Assignment70 - Data50 - Interface30 - Build100 - Environment
Most frequent
![Page 70: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/70.jpg)
7070
Example: Historical defect data analysis
Defect Types10 - Documentation60 – Checking80 – Function40 - Assignment70 - Data50 - Interface30 - Build100 - Environment
Most frequent Most expensive*
![Page 71: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/71.jpg)
7171
Example: Historical defect data analysis
Defect Types10 - Documentation60 – Checking80 – Function40 - Assignment70 - Data50 - Interface30 - Build100 - Environment
Most frequent Most expensive*
(*) further analyses showed that they were mainly injected in design and removed in test.
![Page 72: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/72.jpg)
7272
Example: Historical defect data analysis
Defect Types10 - Documentation60 – Checking80 – Function40 - Assignment70 - Data50 - Interface30 - Build100 - Environment
Most frequent Most expensive*
Þ Improve design review checklistsÞ Improve design standards and scriptsÞ Produce test spec after design spec and before design
reviewÞ Minimize documentation and use spell checker
(*) further analyses showed that they were mainly injected in design and removed in test.
![Page 73: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/73.jpg)
7373
Factor IV - Cost-Effective Defect Removal Methods
![Page 74: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/74.jpg)
7474
Defect removal methods (V-Model)
Requirements & ST Spec
REQ TeamInspection
High-LevelDesign
& IT Spec
Detailed Design
& UT Spec
DLD Personal Review
DLD TeamInspection
CodeCode
PersonalReview
Unit Test(UT)
Code TeamInspection
SystemTest (ST)
IntegrationTest (IT)
Compile
HLD TeamInspection
![Page 75: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/75.jpg)
7575
Efficiency of defect removal methods
Even experienced developers introduce ~100 defects/KLOC
Such high-number of defects must be removed using the most cost-effective methods, such as personal reviews and team inspections(Continue to use unit, integration and system testing)
Source: Jim Sartain, Adobe,2009
Minutes to Find and Resolve a Defect by Discovery Activity
![Page 76: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/76.jpg)
7676
Use checklists derived from historical defect data
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 77: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/77.jpg)
7777
Use checklists derived from historical defect data
Make the review more effective
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 78: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/78.jpg)
7878
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 79: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/79.jpg)
7979
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 80: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/80.jpg)
8080
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 81: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/81.jpg)
8181
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 82: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/82.jpg)
8282
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues– even experts benefit from checklists
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 83: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/83.jpg)
8383
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues– even experts benefit from checklists
But:
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 84: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/84.jpg)
8484
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues– even experts benefit from checklists
But:
– keep it simple and short
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 85: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/85.jpg)
8585
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues– even experts benefit from checklists
But:
– keep it simple and short
– keep it specific for the technology, language, etc.
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 86: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/86.jpg)
8686
Use checklists derived from historical defect data
Make the review more effective– focus the attention on most frequent problems
Make the review more efficient– don’t waste time looking for too rare problems
Reduce the risk of missing critical issues– even experts benefit from checklists
But:
– keep it simple and short
– keep it specific for the technology, language, etc.
– combine with other analysis techniques
Peter Pronovost (Dr. Checklist)
“Most influential people of 2008” (Time magazin)
http://www.youtube.com/watch?v=YKm8NUmPg58
![Page 87: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/87.jpg)
8787
Take enough review time
The review rate (size reviewed per hour) is one of the best leading indicators of review effectiveness (review yield)
Recommended code review rate: about 200LOC/hour
Revewing too slow or too fast is a waste of time
Also recommended to review in a quiet environmenttake a break between producing and reviewing
![Page 88: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/88.jpg)
8888
Use multiple inspectors to improve yield(yield = % of defects detected)
(source: Introduction to the Team Software Process, Watts Humphrey)
![Page 89: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/89.jpg)
8989
Estimate defects remaining with the capture-recapture method
Based on the degree of overlapping between different reviewers
Found by A = 8
Found by B = 6
Common defects: C = A B = 4
Total defects:T A*B/C = 12
Remaining defects:R A*B/C-(A+B-C) = 2
http://en.wikipedia.org/wiki/Mark_and_recapture
![Page 90: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/90.jpg)
9090
Measure the review process and use data to improve the reviews
Effort(review, rework)
Size(of artifact reviewed)
Defects found(number, type, description, severity)
Escaped defects(collected later)
![Page 91: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/91.jpg)
9191
Measure the review process and use data to improve the reviews
Effort(review, rework)
Size(of artifact reviewed)
Defects found(number, type, description, severity)
Defect removal rate (indicator of review efficiency)
Escaped defects(collected later)
![Page 92: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/92.jpg)
9292
Measure the review process and use data to improve the reviews
Effort(review, rework)
Size(of artifact reviewed)
Defects found(number, type, description, severity)
Defect density (indicator of product quality)
Defect removal rate (indicator of review efficiency)
Escaped defects(collected later)
![Page 93: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/93.jpg)
9393
Measure the review process and use data to improve the reviews
Effort(review, rework)
Size(of artifact reviewed)
Defects found(number, type, description, severity)
Defect density (indicator of product quality)
Review rate (leading indicator of review effectiveness)
Defect removal rate (indicator of review efficiency)
Escaped defects(collected later)
![Page 94: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/94.jpg)
9494
Measure the review process and use data to improve the reviews
Effort(review, rework)
Size(of artifact reviewed)
Defects found(number, type, description, severity)
Defect density (indicator of product quality)
Review rate (leading indicator of review effectiveness)
Defect removal rate (indicator of review efficiency)
Escaped defects(collected later)
Review yield(lagging indicator of review effectiveness)
![Page 95: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/95.jpg)
9595
Factor V - Measurement and Quantitative Methods
![Page 96: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/96.jpg)
9696
The need for measurement
![Page 97: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/97.jpg)
9797
The need for measurement
W. Edwards Deming
In God we trust, all others
bring data.
![Page 98: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/98.jpg)
9898
The need for measurement
W. Edwards Deming
In God we trust, all others
bring data.
You can't manage
and improve what you
don't measure.
Tom DeMarco
![Page 99: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/99.jpg)
9999
The need for measurement
W. Edwards Deming
In God we trust, all others
bring data.
You can't manage
and improve what you
don't measure.
Tom DeMarco Watts Humphrey
When performance is unmeasured or improperly measured, the results are often disappointing and can even be disastrous. Unless your measures cover all important aspects, you will likely motivate counterproductive action.
![Page 100: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/100.jpg)
100100
Base measures
In the TSP, 4 core measures are the basis for quantitative project management, quality management, and process improvement at the personal, team and organization level.
Size
ScheduleQuality
Effort Actual and Planned
![Page 101: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/101.jpg)
101101
Defect tracking
Defects are the measure of quality in the TSP.
Any change to an interim or final work product, made to ensure proper subsequent utilization is considered a defect.
![Page 102: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/102.jpg)
102102
Quality planning: Defect injection and removal plan
• Yields (% of defects removed) based on historical data or benchmarks• Defects injected based on historical defects injected per size unit
Removed
![Page 103: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/103.jpg)
103103
Quality tracking: Defect removal profile
The defect removal profile shows– plan and actual defects removed by phase– early vs. late defect removal plan
Defects Removed by Phase for Assembly SYSTEM
0.0
100.0
200.0
300.0
400.0
500.0
600.0
700.0
800.0
900.0
Phase
Defe
cts
Rem
oved
by P
hase
Plan
Actual
![Page 104: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/104.jpg)
104104
Quality tracking: Defect removal profile
The defect removal profile shows– plan and actual defects removed by phase– early vs. late defect removal plan
Defects Removed by Phase for Assembly SYSTEM
0.0
100.0
200.0
300.0
400.0
500.0
600.0
700.0
800.0
900.0
Phase
Defe
cts
Rem
oved
by P
hase
Plan
Actual
Typical software project
![Page 105: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/105.jpg)
105105
Quality Tracking: Quality profile
It examines criteria that are effective predictors of system test and post-release component quality
Quality Profile for Assembly Common Query Changes (BE)
0
0.2
0.4
0.6
0.8
1Design/Code Time
Code Review Time
Compile Defects/KLOCUnit Test Ddefects/KLOC
Design Review Time
Plan
Actual
Quality Profile for Assembly Common Query Changes (BE)
0
0.2
0.4
0.6
0.8
1Design/Code Time
Code Review Time
Compile Defects/KLOCUnit Test Ddefects/KLOC
Design Review Time
Plan
Actual
1
10
½ design time ½ coding time
4
Design Quality
Design Review Quality
Code Review Quality
Code QualityProgram Quality
![Page 106: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/106.jpg)
106106
Conclusions: TSP Quality principles
![Page 107: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/107.jpg)
107107
Conclusions: TSP Quality principles
To produce quality products, developers must feel personally responsible for the quality of their products. Superior products are not produced by accident; developers must strive to do quality work.
![Page 108: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/108.jpg)
108108
Conclusions: TSP Quality principles
To produce quality products, developers must feel personally responsible for the quality of their products. Superior products are not produced by accident; developers must strive to do quality work.
It costs less to find and fix defects earlier in a process than later.
![Page 109: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/109.jpg)
109109
Conclusions: TSP Quality principles
To produce quality products, developers must feel personally responsible for the quality of their products. Superior products are not produced by accident; developers must strive to do quality work.
It costs less to find and fix defects earlier in a process than later.
It is more efficient to prevent defects than to find and fix them.
![Page 110: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/110.jpg)
110110
Conclusions: TSP Quality principles
To produce quality products, developers must feel personally responsible for the quality of their products. Superior products are not produced by accident; developers must strive to do quality work.
It costs less to find and fix defects earlier in a process than later.
It is more efficient to prevent defects than to find and fix them.
The right way is always the fastest and cheapest way to do a job.
![Page 111: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/111.jpg)
111111
Conclusions: TSP Quality principles
To produce quality products, developers must feel personally responsible for the quality of their products. Superior products are not produced by accident; developers must strive to do quality work.
It costs less to find and fix defects earlier in a process than later.
It is more efficient to prevent defects than to find and fix them.
The right way is always the fastest and cheapest way to do a job.
To maximize productivity, focus on quality first.
![Page 112: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/112.jpg)
112112
Conclusions
The TSP approach for producing high-quality software in a cost-effective way is based on learning from your errors and using cost-effective defect removal methods
Data shows that TSP teams produce software with very low defect density and reduced cost of quality
If you have the need to develop top quality software, you should take a look at TSP principles and practices
![Page 113: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/113.jpg)
113113
References
Software Assessments, Benchmarks, and Best Practices, Capers Jones, Addison-Wesley, 2000
Winning with Software, Watts Humphrey, 2002
Introduction to the Team Software Process, Watts S. Humphrey, 2000
TSP: Coaching Development Teams, Watts S. Humphrey, Addison-Wesley, 2006
PSP: A Self-Improvement Process for Software Engineers, Watts S. Humphrey, 2005
“The Economic Impacts of Inadequate Infrastructure for Software Testing”, National Institute of Standards and Technology (NIST), 2002
“Inspiring, enabling and driving the Evolution of Quality at Adobe leveraging the TSP”, Jim Sartain, Senior Director, Quality at Adobe Systems, TSP Symposium 2009
“Some Future Software Engineering Opportunities and Challenges”, Barry Boehm, in The Future of Software Engineering, Springer, 2011
![Page 114: Tutorial joaopascoalfaria-2confcmmiportugal-v1-3-split](https://reader037.vdocuments.site/reader037/viewer/2022110118/555223f6b4c9054c668b4b74/html5/thumbnails/114.jpg)
Portugal
Thank you!Contact information:
João Pascoal Faria (*)Departamento de Engenharia InformáticaFaculdade de Engenharia da Universidade do PortoRua Dr. Roberto Frias, s/n 4200-465 Porto, PORTUGALEmail: [email protected]: +351225082134Mobile: +351966494914(*) SEI Qualified PSP Developer, PSP Instructor, TSP Coach