SlideShare a Scribd company logo
1 of 26
Impact of Process Conformance on the Effects of 
Test-driven Development 
Davide Fucci, Burak Turhan, Markku Oivo 
Department of Information Processing Science 
Faculty of Information Technology and Electrical Engineering 
University of Oulu
OUTLINE 
• Test-driven development (TDD) cycle 
• Research Questions 
• Study Context 
• Results 
• Limitations 
• Conclusion 
2
THE TDD CYCLE 
3
TDD CLAIMS 
4
RESEARCH QUESTION 
What is the relationship between the 
claimed effects of Test-driven 
Development and the conformance 
to the Red-Green-Refactor process? 
5
PROCESS CONFORMANCE 
• Usually considered to mitigate the threat to construct validity 
• We consider it as the main factor of interest (explanatory variable) 
6 
”The extent to which a developer follows the TDD cycle”
PROCESS CONFORMANCE 
1. Create TestCase BowlingScorekeeperTest.java 
2. Edit BowlingScorekeeperTest.java ADD testScore() METHOD 
3. TestRun BowlingScorekeeperTest FAIL 
4. Create JavaClass BowlingScorekeeper.java 
5. Edit BowlingScorekeeper.java ADD int getScore() METHOD 
6. TestRun BowlingScorekeeperTest OK 
7. Edit BowlingScorekeeper.java MODIFY int getScore() METHOD 
8. TestRun BowlingScorekeeperTest OK 
7 
Example of a TDD-compliant sequence
CONSTRUCTS 
DVs 
• External quality 
• Productivity 
• Testing effort 
• Code coverage 
8 
IV 
• Process 
conformance
METRICS 
• QLTY = sum of external quality of each user story 
• User-story quality = % of passing acceptance tests 
• PROD = delivered user stories 
• TEST = number of unit-tests 
• TCOV = block coverage 
• CONF = % of TDD development events 
9
THE STUDY 
Data collected during a previous controlled experiment* 
10 
Subjects: 
• 27 units 
– 7 pairs 
– 20 individual 
• Experience: grad students 
• Training: 20 hours 
* Fucci, D.; Turhan, B., "A Replicated Experiment on the Effectiveness of Test-First Development," Empirical Software Engineering and Measurement, 2013
THE STUDY 
11 
Object: 
• Uncle Bob’s Bowling Scorekeeper 
• 13 fine-grained user stories 
• Incremental difficulty
THE STUDY 
12 
Settings: 
• Java and Junit 
• Eclipse IDE 
• 3 hours
RESULTS 1/2 
13 
1. Is there a linear relationship between external 
quality and process conformance to TDD? 
✗ 
p-value = .21 
r2 = .076 
2. Is there a linear relationship between 
productivity and process conformance to TDD? 
✗ 
p-value = .8 
r2 = 1.8e-7
RESULTS 2/2 
14 
3. Is there a linear relationship between testing 
effort and process conformance to TDD? 
✗ 
p-value = .39 
r2 = .036 
4. Is there a linear relationship between code 
coverage and process conformance to TDD? 
✗ 
p-value = .09 
r2 = .12
DISTRIBUTION OF CONFORMANCE 
15 
mean = 78.09, sd = 21.65
Do the results hold for different levels of process conformance? 
cutoff = 85 (median) 
High Conformance 
• External Quality 
• Productivity 
• Testing effort 
• Coverage 
ADDITIONAL RQ 
Low Conformance 
• External Quality 
• Productivity 
• Testing effort 
• Coverage 
16 
✗ 
✗ 
✗ 
✗ 
✗ 
✗ 
✗ 
✗
EXTERNAL QUALITY 
17 
• Higher baseline for High conformance subjects 
• Reach a cap level after which quality doesn’t improve
PRODUCTIVITY 
18 
• Lower baseline for High conformance subjects 
• Deviate from the process in order to get things done
TESTING EFFORT 
19 
• Higher baseline for Low conformance subjects 
• Improvement for High conformance subjects
COVERAGE 
20 
• Decrease for High conformance subjects 
• Production code is not so minimal
LIMITATIONS 
• Representativeness of the subjects 
• Other effects associated with skills? 
• Interaction with pair-programming 
• Small sample size 
• Simple models 
21
CONCLUSION 
22 
Summary 
The effect of process conformance on: 
• External Quality 
✗ 
• Productivity 
✗ 
• Testing effort 
✗ 
• Coverage 
✗ 
• TDD == write a lot of unit-tests 
• Strictly following TDD is not viable in the short term
FUTURE WORK 
• Replications: 
• Consider the weight of refactoring during the process 
• Use professional software developers 
• Include developers’ skill in the model 
23 
Feel like replicating? Please, contact me
Q&A 
davide.fucci@oulu.fi 
24
SANITY CHECK 
25
DETAILED RESULTS 
26 
ID Regression coeff. p-value r-squared 
QLTY 6.1e-4 .21 .076 
QLTY(LC) 3.2e-4 .66 .240 
QLTY(HC) 3.4e-6 .99 1.8e-7 
PROD -7.2e-04 .80 1.8e-7 
PROD(LC) .002 .58 .030 
PROD(HC) .007 .61 .030 
TEST -.040 .39 .036 
TEST(LC) -.010 .86 .003 
TEST(HC) .080 .74 .010 
TCOV -.310 .09 .120 
TCOV(LC) -1.210 .70 .010 
TCOV(HC) -0.070 .24 .013

More Related Content

What's hot

DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOE
DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOEDOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOE
DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOEBryan Len
 
Derk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both WorldsDerk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both WorldsTEST Huddle
 
Testing in an agile environment
Testing in an agile environmentTesting in an agile environment
Testing in an agile environmentCristiano Caetano
 
John Fodeh - Spend Wisely, Test Well
John Fodeh - Spend Wisely, Test WellJohn Fodeh - Spend Wisely, Test Well
John Fodeh - Spend Wisely, Test WellTEST Huddle
 
Ane Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedAne Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedTEST Huddle
 
Iseb question from book
Iseb question from bookIseb question from book
Iseb question from bookNatalia Iurii
 
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!TEST Huddle
 
Test Estimation
Test Estimation Test Estimation
Test Estimation SQALab
 
Cr 3: Course Outcomes and Program Outcomes
Cr 3: Course Outcomes and Program Outcomes Cr 3: Course Outcomes and Program Outcomes
Cr 3: Course Outcomes and Program Outcomes Mithun Maniyar
 
New Product Commercialization
New Product CommercializationNew Product Commercialization
New Product CommercializationJohn Glenning
 
Mats Grindal - Risk-Based Testing - Details of Our Success
Mats Grindal - Risk-Based Testing - Details of Our Success Mats Grindal - Risk-Based Testing - Details of Our Success
Mats Grindal - Risk-Based Testing - Details of Our Success TEST Huddle
 
Otto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement PotentialOtto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement PotentialTEST Huddle
 
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011TEST Huddle
 
Johan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the ProjectJohan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the ProjectTEST Huddle
 
Software testing
Software testingSoftware testing
Software testingprasad g
 
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010TEST Huddle
 
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010TEST Huddle
 

What's hot (19)

DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOE
DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOEDOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOE
DOE, Design Of Experiments, DoE Training, Learn How To Use DoE, Taguchi DOE
 
Derk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both WorldsDerk jan de Grood - ET, Best of Both Worlds
Derk jan de Grood - ET, Best of Both Worlds
 
Testing in an agile environment
Testing in an agile environmentTesting in an agile environment
Testing in an agile environment
 
John Fodeh - Spend Wisely, Test Well
John Fodeh - Spend Wisely, Test WellJohn Fodeh - Spend Wisely, Test Well
John Fodeh - Spend Wisely, Test Well
 
Ane Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revisedAne Clausen - Success with Automated Regression Test revised
Ane Clausen - Success with Automated Regression Test revised
 
Iseb question from book
Iseb question from bookIseb question from book
Iseb question from book
 
GorantlaVenkataGeethaChowdary
GorantlaVenkataGeethaChowdaryGorantlaVenkataGeethaChowdary
GorantlaVenkataGeethaChowdary
 
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!
Gitte Ottosen - Agility and Process Maturity, Of Course They Mix!
 
Test Estimation
Test Estimation Test Estimation
Test Estimation
 
How to Write Test
How to Write TestHow to Write Test
How to Write Test
 
Cr 3: Course Outcomes and Program Outcomes
Cr 3: Course Outcomes and Program Outcomes Cr 3: Course Outcomes and Program Outcomes
Cr 3: Course Outcomes and Program Outcomes
 
New Product Commercialization
New Product CommercializationNew Product Commercialization
New Product Commercialization
 
Mats Grindal - Risk-Based Testing - Details of Our Success
Mats Grindal - Risk-Based Testing - Details of Our Success Mats Grindal - Risk-Based Testing - Details of Our Success
Mats Grindal - Risk-Based Testing - Details of Our Success
 
Otto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement PotentialOtto Vinter - Analysing Your Defect Data for Improvement Potential
Otto Vinter - Analysing Your Defect Data for Improvement Potential
 
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
 
Johan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the ProjectJohan Jonasson - Introducing Exploratory Testing to Save the Project
Johan Jonasson - Introducing Exploratory Testing to Save the Project
 
Software testing
Software testingSoftware testing
Software testing
 
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010Edwin Van Loon -  How Much Testing is Enough - EuroSTAR 2010
Edwin Van Loon - How Much Testing is Enough - EuroSTAR 2010
 
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010
Thomas Axen - Lean Kaizen Applied To Software Testing - EuroSTAR 2010
 

Similar to 18 - Impact of Process Conformance on the Effects of Test-driven Development

Test-Driven Development.pptx
Test-Driven Development.pptxTest-Driven Development.pptx
Test-Driven Development.pptxTomas561914
 
Software Engineering Practice - Software Quality Management
Software Engineering Practice - Software Quality ManagementSoftware Engineering Practice - Software Quality Management
Software Engineering Practice - Software Quality ManagementRadu_Negulescu
 
Keeping code clean
Keeping code cleanKeeping code clean
Keeping code cleanBrett Child
 
Test-Driven development; why you should never code without it
Test-Driven development; why you should never code without itTest-Driven development; why you should never code without it
Test-Driven development; why you should never code without itJad Salhani
 
Test Driven Development Methodology and Philosophy
Test Driven Development Methodology and Philosophy Test Driven Development Methodology and Philosophy
Test Driven Development Methodology and Philosophy Vijay Kumbhar
 
Software Arch TDD ppt.pdf
Software Arch TDD ppt.pdfSoftware Arch TDD ppt.pdf
Software Arch TDD ppt.pdfTed M. Young
 
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...Modeling and Performance Analysis of Scrumban with Test-Driven Development us...
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...Fernando Sambinelli, MSc
 
Management Dashboard Sample
Management Dashboard SampleManagement Dashboard Sample
Management Dashboard SampleR P
 
Software Process Improvement.ppt
Software Process Improvement.pptSoftware Process Improvement.ppt
Software Process Improvement.pptNadarDinesh
 
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...GoQA
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
 
Test Management in Agile - Agile testing Days 2018
Test Management in Agile - Agile testing Days 2018Test Management in Agile - Agile testing Days 2018
Test Management in Agile - Agile testing Days 2018Derk-Jan de Grood
 
ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2onsoftwaretest
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing BasicsBelal Raslan
 
Discovery on terra incognita
Discovery on terra incognitaDiscovery on terra incognita
Discovery on terra incognitaeugenemospan
 
Continuous test suite failure prediction
Continuous test suite failure predictionContinuous test suite failure prediction
Continuous test suite failure predictionssuser94f898
 

Similar to 18 - Impact of Process Conformance on the Effects of Test-driven Development (20)

Test-Driven Development.pptx
Test-Driven Development.pptxTest-Driven Development.pptx
Test-Driven Development.pptx
 
Software Engineering Practice - Software Quality Management
Software Engineering Practice - Software Quality ManagementSoftware Engineering Practice - Software Quality Management
Software Engineering Practice - Software Quality Management
 
Keeping code clean
Keeping code cleanKeeping code clean
Keeping code clean
 
Introduction to Unit Tests and TDD
Introduction to Unit Tests and TDDIntroduction to Unit Tests and TDD
Introduction to Unit Tests and TDD
 
Test-Driven development; why you should never code without it
Test-Driven development; why you should never code without itTest-Driven development; why you should never code without it
Test-Driven development; why you should never code without it
 
TDD Agile Tour Beirut
TDD  Agile Tour BeirutTDD  Agile Tour Beirut
TDD Agile Tour Beirut
 
Test Driven Development Methodology and Philosophy
Test Driven Development Methodology and Philosophy Test Driven Development Methodology and Philosophy
Test Driven Development Methodology and Philosophy
 
Software Arch TDD ppt.pdf
Software Arch TDD ppt.pdfSoftware Arch TDD ppt.pdf
Software Arch TDD ppt.pdf
 
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...Modeling and Performance Analysis of Scrumban with Test-Driven Development us...
Modeling and Performance Analysis of Scrumban with Test-Driven Development us...
 
Management Dashboard Sample
Management Dashboard SampleManagement Dashboard Sample
Management Dashboard Sample
 
Software Process Improvement.ppt
Software Process Improvement.pptSoftware Process Improvement.ppt
Software Process Improvement.ppt
 
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
 
Ian Cooper webinar for DDD Iran: Kent beck style tdd seven years after
Ian Cooper webinar for DDD Iran: Kent beck style tdd   seven years afterIan Cooper webinar for DDD Iran: Kent beck style tdd   seven years after
Ian Cooper webinar for DDD Iran: Kent beck style tdd seven years after
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 
Test Management in Agile - Agile testing Days 2018
Test Management in Agile - Agile testing Days 2018Test Management in Agile - Agile testing Days 2018
Test Management in Agile - Agile testing Days 2018
 
ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2ISTQB, ISEB Lecture Notes- 2
ISTQB, ISEB Lecture Notes- 2
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
 
08 project quality management
08 project quality management08 project quality management
08 project quality management
 
Discovery on terra incognita
Discovery on terra incognitaDiscovery on terra incognita
Discovery on terra incognita
 
Continuous test suite failure prediction
Continuous test suite failure predictionContinuous test suite failure prediction
Continuous test suite failure prediction
 

More from ESEM 2014

Keynote 2 - The 20% of software engineering practices that contribute to 80% ...
Keynote 2 - The 20% of software engineering practices that contribute to 80% ...Keynote 2 - The 20% of software engineering practices that contribute to 80% ...
Keynote 2 - The 20% of software engineering practices that contribute to 80% ...ESEM 2014
 
Keynote 1 - Engineering Software Analytics Studies
Keynote 1 - Engineering Software Analytics StudiesKeynote 1 - Engineering Software Analytics Studies
Keynote 1 - Engineering Software Analytics StudiesESEM 2014
 
33 - On Knowledge Transfer Skill in Pair Programming
33 - On Knowledge Transfer Skill in Pair Programming33 - On Knowledge Transfer Skill in Pair Programming
33 - On Knowledge Transfer Skill in Pair ProgrammingESEM 2014
 
222 - Design Pattern Decay: The Case for Class Grime
222 - Design Pattern Decay: The Case for Class Grime222 - Design Pattern Decay: The Case for Class Grime
222 - Design Pattern Decay: The Case for Class GrimeESEM 2014
 
210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...ESEM 2014
 
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...ESEM 2014
 
196 - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...
196  - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...196  - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...
196 - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...ESEM 2014
 
42- Using Templates to Elicit Implied Security Requirements from Functional R...
42- Using Templates to Elicit Implied Security Requirements from Functional R...42- Using Templates to Elicit Implied Security Requirements from Functional R...
42- Using Templates to Elicit Implied Security Requirements from Functional R...ESEM 2014
 
166 - ISBSG variables most frequently used for software effort estimation: A ...
166 - ISBSG variables most frequently used for software effort estimation: A ...166 - ISBSG variables most frequently used for software effort estimation: A ...
166 - ISBSG variables most frequently used for software effort estimation: A ...ESEM 2014
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...ESEM 2014
 
224 - Factors Impacting Rapid Releases: An Industrial Case Study
224 - Factors Impacting Rapid Releases: An Industrial Case Study224 - Factors Impacting Rapid Releases: An Industrial Case Study
224 - Factors Impacting Rapid Releases: An Industrial Case StudyESEM 2014
 
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...ESEM 2014
 
214 - Sampling Improvement in Software Engineering Surveys
214 - Sampling Improvement in Software Engineering Surveys214 - Sampling Improvement in Software Engineering Surveys
214 - Sampling Improvement in Software Engineering SurveysESEM 2014
 
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...ESEM 2014
 
130 - Motivated software engineers are engaged and focused, while satisfied o...
130 - Motivated software engineers are engaged and focused, while satisfied o...130 - Motivated software engineers are engaged and focused, while satisfied o...
130 - Motivated software engineers are engaged and focused, while satisfied o...ESEM 2014
 
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...ESEM 2014
 
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...ESEM 2014
 
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...ESEM 2014
 
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...52 - The Impact of Test Ownership and Team Structure on the Reliability and E...
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...ESEM 2014
 
167 - Productivity for proof engineering
167 - Productivity for proof engineering167 - Productivity for proof engineering
167 - Productivity for proof engineeringESEM 2014
 

More from ESEM 2014 (20)

Keynote 2 - The 20% of software engineering practices that contribute to 80% ...
Keynote 2 - The 20% of software engineering practices that contribute to 80% ...Keynote 2 - The 20% of software engineering practices that contribute to 80% ...
Keynote 2 - The 20% of software engineering practices that contribute to 80% ...
 
Keynote 1 - Engineering Software Analytics Studies
Keynote 1 - Engineering Software Analytics StudiesKeynote 1 - Engineering Software Analytics Studies
Keynote 1 - Engineering Software Analytics Studies
 
33 - On Knowledge Transfer Skill in Pair Programming
33 - On Knowledge Transfer Skill in Pair Programming33 - On Knowledge Transfer Skill in Pair Programming
33 - On Knowledge Transfer Skill in Pair Programming
 
222 - Design Pattern Decay: The Case for Class Grime
222 - Design Pattern Decay: The Case for Class Grime222 - Design Pattern Decay: The Case for Class Grime
222 - Design Pattern Decay: The Case for Class Grime
 
210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...210 - Software Population Pyramids: The Current and the Future of OSS Develop...
210 - Software Population Pyramids: The Current and the Future of OSS Develop...
 
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...
169 - Bridging the Gap: SE Technology Transfer into Practice - Study Design a...
 
196 - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...
196  - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...196  - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...
196 - Evaluation in Practice: Artifact-based Requirements Engineering and Sc...
 
42- Using Templates to Elicit Implied Security Requirements from Functional R...
42- Using Templates to Elicit Implied Security Requirements from Functional R...42- Using Templates to Elicit Implied Security Requirements from Functional R...
42- Using Templates to Elicit Implied Security Requirements from Functional R...
 
166 - ISBSG variables most frequently used for software effort estimation: A ...
166 - ISBSG variables most frequently used for software effort estimation: A ...166 - ISBSG variables most frequently used for software effort estimation: A ...
166 - ISBSG variables most frequently used for software effort estimation: A ...
 
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
112 - The Role of Mentoring and Project Characteristics for Onboarding in Ope...
 
224 - Factors Impacting Rapid Releases: An Industrial Case Study
224 - Factors Impacting Rapid Releases: An Industrial Case Study224 - Factors Impacting Rapid Releases: An Industrial Case Study
224 - Factors Impacting Rapid Releases: An Industrial Case Study
 
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...
215 Towards a Framework to Support Large Scale Sampling in Software Engineeri...
 
214 - Sampling Improvement in Software Engineering Surveys
214 - Sampling Improvement in Software Engineering Surveys214 - Sampling Improvement in Software Engineering Surveys
214 - Sampling Improvement in Software Engineering Surveys
 
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...
201 - Using Qualitative Metasummary to Synthesize Empirical Findings in Liter...
 
130 - Motivated software engineers are engaged and focused, while satisfied o...
130 - Motivated software engineers are engaged and focused, while satisfied o...130 - Motivated software engineers are engaged and focused, while satisfied o...
130 - Motivated software engineers are engaged and focused, while satisfied o...
 
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
178 - A replicated study on duplicate detection: Using Apache Lucene to searc...
 
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...
124 - Impact of Developer Reputation on Code Review Outcomes in OSS Projects:...
 
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...
65 - An Empirical Simulation-based Study of Real-Time Speech Translation for ...
 
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...52 - The Impact of Test Ownership and Team Structure on the Reliability and E...
52 - The Impact of Test Ownership and Team Structure on the Reliability and E...
 
167 - Productivity for proof engineering
167 - Productivity for proof engineering167 - Productivity for proof engineering
167 - Productivity for proof engineering
 

Recently uploaded

MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile EnvironmentVictorSzoltysek
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 

Recently uploaded (20)

MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 

18 - Impact of Process Conformance on the Effects of Test-driven Development

  • 1. Impact of Process Conformance on the Effects of Test-driven Development Davide Fucci, Burak Turhan, Markku Oivo Department of Information Processing Science Faculty of Information Technology and Electrical Engineering University of Oulu
  • 2. OUTLINE • Test-driven development (TDD) cycle • Research Questions • Study Context • Results • Limitations • Conclusion 2
  • 5. RESEARCH QUESTION What is the relationship between the claimed effects of Test-driven Development and the conformance to the Red-Green-Refactor process? 5
  • 6. PROCESS CONFORMANCE • Usually considered to mitigate the threat to construct validity • We consider it as the main factor of interest (explanatory variable) 6 ”The extent to which a developer follows the TDD cycle”
  • 7. PROCESS CONFORMANCE 1. Create TestCase BowlingScorekeeperTest.java 2. Edit BowlingScorekeeperTest.java ADD testScore() METHOD 3. TestRun BowlingScorekeeperTest FAIL 4. Create JavaClass BowlingScorekeeper.java 5. Edit BowlingScorekeeper.java ADD int getScore() METHOD 6. TestRun BowlingScorekeeperTest OK 7. Edit BowlingScorekeeper.java MODIFY int getScore() METHOD 8. TestRun BowlingScorekeeperTest OK 7 Example of a TDD-compliant sequence
  • 8. CONSTRUCTS DVs • External quality • Productivity • Testing effort • Code coverage 8 IV • Process conformance
  • 9. METRICS • QLTY = sum of external quality of each user story • User-story quality = % of passing acceptance tests • PROD = delivered user stories • TEST = number of unit-tests • TCOV = block coverage • CONF = % of TDD development events 9
  • 10. THE STUDY Data collected during a previous controlled experiment* 10 Subjects: • 27 units – 7 pairs – 20 individual • Experience: grad students • Training: 20 hours * Fucci, D.; Turhan, B., "A Replicated Experiment on the Effectiveness of Test-First Development," Empirical Software Engineering and Measurement, 2013
  • 11. THE STUDY 11 Object: • Uncle Bob’s Bowling Scorekeeper • 13 fine-grained user stories • Incremental difficulty
  • 12. THE STUDY 12 Settings: • Java and Junit • Eclipse IDE • 3 hours
  • 13. RESULTS 1/2 13 1. Is there a linear relationship between external quality and process conformance to TDD? ✗ p-value = .21 r2 = .076 2. Is there a linear relationship between productivity and process conformance to TDD? ✗ p-value = .8 r2 = 1.8e-7
  • 14. RESULTS 2/2 14 3. Is there a linear relationship between testing effort and process conformance to TDD? ✗ p-value = .39 r2 = .036 4. Is there a linear relationship between code coverage and process conformance to TDD? ✗ p-value = .09 r2 = .12
  • 15. DISTRIBUTION OF CONFORMANCE 15 mean = 78.09, sd = 21.65
  • 16. Do the results hold for different levels of process conformance? cutoff = 85 (median) High Conformance • External Quality • Productivity • Testing effort • Coverage ADDITIONAL RQ Low Conformance • External Quality • Productivity • Testing effort • Coverage 16 ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗
  • 17. EXTERNAL QUALITY 17 • Higher baseline for High conformance subjects • Reach a cap level after which quality doesn’t improve
  • 18. PRODUCTIVITY 18 • Lower baseline for High conformance subjects • Deviate from the process in order to get things done
  • 19. TESTING EFFORT 19 • Higher baseline for Low conformance subjects • Improvement for High conformance subjects
  • 20. COVERAGE 20 • Decrease for High conformance subjects • Production code is not so minimal
  • 21. LIMITATIONS • Representativeness of the subjects • Other effects associated with skills? • Interaction with pair-programming • Small sample size • Simple models 21
  • 22. CONCLUSION 22 Summary The effect of process conformance on: • External Quality ✗ • Productivity ✗ • Testing effort ✗ • Coverage ✗ • TDD == write a lot of unit-tests • Strictly following TDD is not viable in the short term
  • 23. FUTURE WORK • Replications: • Consider the weight of refactoring during the process • Use professional software developers • Include developers’ skill in the model 23 Feel like replicating? Please, contact me
  • 26. DETAILED RESULTS 26 ID Regression coeff. p-value r-squared QLTY 6.1e-4 .21 .076 QLTY(LC) 3.2e-4 .66 .240 QLTY(HC) 3.4e-6 .99 1.8e-7 PROD -7.2e-04 .80 1.8e-7 PROD(LC) .002 .58 .030 PROD(HC) .007 .61 .030 TEST -.040 .39 .036 TEST(LC) -.010 .86 .003 TEST(HC) .080 .74 .010 TCOV -.310 .09 .120 TCOV(LC) -1.210 .70 .010 TCOV(HC) -0.070 .24 .013