SlideShare a Scribd company logo
1 of 57
Download to read offline
Yujuan Jiang, Bram Adams (MCIS, Polytechnique Montréal)
Daniel M. German (University ofVictoria )
Will My Patch Make It?
And How Fast?
1
1Sunday, 19 May, 13
I do hold out hope that Google does
come around and works to fix their
codebase to get it merged upstream to
stop the huge blockage that they have
now caused in a large number of
embedded Linux hardware companies
[…] But I need the help of the Google
developers to make it happen, without
them, nothing can change.
http://www.kroah.com/log/linux/android-kernel-problems.html
2
Greg
Kroah-Hartman
2Sunday, 19 May, 13
Integration Process
3
3Sunday, 19 May, 13
Integration Process
3
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
maintainer
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
maintainer
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
maintainer Linus Torvalds
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
maintainer Linus Torvalds
3Sunday, 19 May, 13
Integration Process
3
contributor 1
contributor 2
contributor 3
linux-usb
linux-scsi
lkml
linux 3.5
subsystem
maintainer1
subsystem
maintainer1
Reviewing Integration Staging
maintainer Linus Torvalds
3Sunday, 19 May, 13
Research Questions
4
RQ1:
How many
patches are
merged?
RQ2:
What kind of
patch is merged
more likely?
RQ 3:
What kind of
patch is
accepted faster?
4Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
linux-usb
linux-scsi
lkml
linux 3.5
contributor 1
contributor 2
contributor 3
subsystem
maintainer1
subsystem
maintainer1
maintainer
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
linux-usb
linux-scsi
lkml
linux 3.5
contributor 1
contributor 2
contributor 3
subsystem
maintainer1
subsystem
maintainer1
maintainer
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
linux-usb
linux-scsi
lkml
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
linux-usb
linux-scsi
lkml
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
Linus Torvalds
email1
email3
email2 email patch2
email patch1
email patch3
...
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
email1
email3
email2 email patch2
email patch1
email patch3
...
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
email1
email3
email2 email patch2
email patch1
email patch3
...
commit3
commit2
commit1commit patch1
commit patch2
commit patch3
...
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
email1
email3
email2 email patch2
email patch1
email patch3
...
commit3
commit2
commit1commit patch1
commit patch2
commit patch3
...
checksum1
checksum3
checksum2
...
5Sunday, 19 May, 13
Setup Of Case Study
5
Reviewing Integration Staging
email1
email3
email2 email patch2
email patch1
email patch3
...
commit3
commit2
commit1commit patch1
commit patch2
commit patch3
...
checksum1
checksum3
checksum2
...
5Sunday, 19 May, 13
Experience
Email
Review
E
Patch
Commit
6
5 Dimensions of
29 Patch Metrics
6Sunday, 19 May, 13
size: LOC > 50
Number of reviewers > 3 ?
not accepted Number of review messages > 3 ?
Is this first patch in thread?
not acceptedaccepted
Decision Tree
Building Decision Trees
7
7Sunday, 19 May, 13
8
RQ1:
How many
patches are
merged?
RQ2:
What kind of
patch is merged
more likely?
RQ 3:
What kind of
patch is
accepted faster?
8Sunday, 19 May, 13
9
RQ1:
How many
patches are
merged?
RQ2:
What kind of
patch is merged
more likely?
RQ 3:
What kind of
patch is
accepted faster?
9Sunday, 19 May, 13
RQ1:33% of patches make it!
10
2005 2006 2007 2008 2009 2010 2011 2012
accepted/rejected patches
percentageofpatches
0
20000
40000
60000
80000
100000
120000
28.63
28.7
27.03
32.83 32.79 33.87
33.55
30.74
71.37
71.3
72.97
67.17
67.21 66.13
66.45
69.26
% accepted by linus
% rejected by linus
#ofpatches
72.97%
67.17%
71.3%
71.73%
69.26%
66.45%
66.13%67.21%
28.63%
28.7%
32.79%
32.83%
27.03%
30.74%33.55%
33.87%
A
C
C
E
P
T
R
E
J
E
C
T
10Sunday, 19 May, 13
RQ1:Requiring 1~6months!
11
2005 2006 2007 2008 2009 2010 2011 2012
year
percentageofacceptedpatchesofeachyear
020406080
instantly
within_hour
within_day
within_week
within_month
within_quarter
within_half_year
within_year
took_ages
Text
%
accepted
patches
11Sunday, 19 May, 13
RQ1: reviewing time speeds up
& integration slows down
12
reviewing time integration time
12Sunday, 19 May, 13
13
RQ1:
How many
patches are
merged?
RQ2:
What kind of
patch is merged
more likely?
RQ 3:
What kind of
patch is
accepted faster?
13Sunday, 19 May, 13
RQ2: What kind of patch is
merged more likely?
precision:73%
recall:68.47%
14
14Sunday, 19 May, 13
RQ2: What kind of patch is
merged more likely?
precision:73%
recall:68.47%
14
14Sunday, 19 May, 13
RQ2: What kind of patch is
merged more likely?
precision:73%
recall:68.47%
14
14Sunday, 19 May, 13
RQ2: What kind of patch is
merged more likely?
precision:73%
recall:68.47%
14
14Sunday, 19 May, 13
RQ2: What kind of patch is
merged more likely?
precision:73%
recall:68.47%
14
14Sunday, 19 May, 13
15
RQ1:
How many
patches are
merged?
RQ2:
What kind of
patch is merged
more likely?
RQ 3:
What kind of
patch is
accepted faster?
15Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
16Sunday, 19 May, 13
RQ3: What kind of patch is
accepted faster?
16
Acceptance is
determined by
integration
phase
16Sunday, 19 May, 13
17
17Sunday, 19 May, 13
17
17Sunday, 19 May, 13
2005 2006 2007 2008 2009 2010 2011 2012
year
percentageofpatches
0
20000
40000
60000
80000
100000
28.63
28.7
27.03
32.83 32.79 33.87
33.55
30.74
71.37
71.3
72.97
67.17
67.21 66.13
66.45% accepted by linus
% rejected by linus
72.97%
67.17%
71.3%
71.73%
66.45%
66.13%67.21%
28.63%
28.7%
32.79%
32.83%
27.03%
30.74%33.55%
33.87%
17
17Sunday, 19 May, 13
2005 2006 2007 2008 2009 2010 2011 2012
year
percentageofpatches
0
20000
40000
60000
80000
100000
28.63
28.7
27.03
32.83 32.79 33.87
33.55
30.74
71.37
71.3
72.97
67.17
67.21 66.13
66.45% accepted by linus
% rejected by linus
72.97%
67.17%
71.3%
71.73%
66.45%
66.13%67.21%
28.63%
28.7%
32.79%
32.83%
27.03%
30.74%33.55%
33.87%
17
17Sunday, 19 May, 13
2005 2006 2007 2008 2009 2010 2011 2012
year
percentageofpatches
0
20000
40000
60000
80000
100000
28.63
28.7
27.03
32.83 32.79 33.87
33.55
30.74
71.37
71.3
72.97
67.17
67.21 66.13
66.45% accepted by linus
% rejected by linus
72.97%
67.17%
71.3%
71.73%
66.45%
66.13%67.21%
28.63%
28.7%
32.79%
32.83%
27.03%
30.74%33.55%
33.87%
17
17Sunday, 19 May, 13

More Related Content

Viewers also liked

Achievement Motivation Training
Achievement Motivation TrainingAchievement Motivation Training
Achievement Motivation TrainingHRD Forum
 
Materi Pelatihan Motivasi Kerja Karyawan
Materi Pelatihan Motivasi Kerja Karyawan Materi Pelatihan Motivasi Kerja Karyawan
Materi Pelatihan Motivasi Kerja Karyawan Yodhia Antariksa
 
Motivasi Diri - MT
Motivasi Diri - MTMotivasi Diri - MT
Motivasi Diri - MTaggna354
 
Presentasi motivasi diri
Presentasi motivasi diriPresentasi motivasi diri
Presentasi motivasi diriRona Binham
 
Presentasi motivasi kerja
Presentasi motivasi kerjaPresentasi motivasi kerja
Presentasi motivasi kerjaPrizky Sari
 

Viewers also liked (8)

Hard Skills vs Soft Skills
Hard Skills vs Soft SkillsHard Skills vs Soft Skills
Hard Skills vs Soft Skills
 
Achievement Motivation Training
Achievement Motivation TrainingAchievement Motivation Training
Achievement Motivation Training
 
Materi Pelatihan Motivasi Kerja Karyawan
Materi Pelatihan Motivasi Kerja Karyawan Materi Pelatihan Motivasi Kerja Karyawan
Materi Pelatihan Motivasi Kerja Karyawan
 
Manajemen waktu
Manajemen waktuManajemen waktu
Manajemen waktu
 
Motivasi Diri - MT
Motivasi Diri - MTMotivasi Diri - MT
Motivasi Diri - MT
 
Presentasi motivasi diri
Presentasi motivasi diriPresentasi motivasi diri
Presentasi motivasi diri
 
Motivasi Kerja
Motivasi KerjaMotivasi Kerja
Motivasi Kerja
 
Presentasi motivasi kerja
Presentasi motivasi kerjaPresentasi motivasi kerja
Presentasi motivasi kerja
 

Recently uploaded

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 

Recently uploaded (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

Will My Patch Make It? And How Fast?

  • 1. Yujuan Jiang, Bram Adams (MCIS, Polytechnique Montréal) Daniel M. German (University ofVictoria ) Will My Patch Make It? And How Fast? 1 1Sunday, 19 May, 13
  • 2. I do hold out hope that Google does come around and works to fix their codebase to get it merged upstream to stop the huge blockage that they have now caused in a large number of embedded Linux hardware companies […] But I need the help of the Google developers to make it happen, without them, nothing can change. http://www.kroah.com/log/linux/android-kernel-problems.html 2 Greg Kroah-Hartman 2Sunday, 19 May, 13
  • 4. Integration Process 3 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 5. Integration Process 3 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 6. Integration Process 3 contributor 1 contributor 2 contributor 3 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 7. Integration Process 3 contributor 1 contributor 2 contributor 3 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 8. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml Reviewing Integration Staging 3Sunday, 19 May, 13
  • 9. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml Reviewing Integration Staging 3Sunday, 19 May, 13
  • 10. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml Reviewing Integration Staging 3Sunday, 19 May, 13
  • 11. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml Reviewing Integration Staging 3Sunday, 19 May, 13
  • 12. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 13. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 14. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 15. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging 3Sunday, 19 May, 13
  • 16. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging maintainer 3Sunday, 19 May, 13
  • 17. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging maintainer 3Sunday, 19 May, 13
  • 18. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging maintainer Linus Torvalds 3Sunday, 19 May, 13
  • 19. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging maintainer Linus Torvalds 3Sunday, 19 May, 13
  • 20. Integration Process 3 contributor 1 contributor 2 contributor 3 linux-usb linux-scsi lkml linux 3.5 subsystem maintainer1 subsystem maintainer1 Reviewing Integration Staging maintainer Linus Torvalds 3Sunday, 19 May, 13
  • 21. Research Questions 4 RQ1: How many patches are merged? RQ2: What kind of patch is merged more likely? RQ 3: What kind of patch is accepted faster? 4Sunday, 19 May, 13
  • 22. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds linux-usb linux-scsi lkml linux 3.5 contributor 1 contributor 2 contributor 3 subsystem maintainer1 subsystem maintainer1 maintainer 5Sunday, 19 May, 13
  • 23. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds linux-usb linux-scsi lkml linux 3.5 contributor 1 contributor 2 contributor 3 subsystem maintainer1 subsystem maintainer1 maintainer 5Sunday, 19 May, 13
  • 24. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds linux-usb linux-scsi lkml 5Sunday, 19 May, 13
  • 25. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds linux-usb linux-scsi lkml 5Sunday, 19 May, 13
  • 26. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds 5Sunday, 19 May, 13
  • 27. Setup Of Case Study 5 Reviewing Integration Staging Linus Torvalds email1 email3 email2 email patch2 email patch1 email patch3 ... 5Sunday, 19 May, 13
  • 28. Setup Of Case Study 5 Reviewing Integration Staging email1 email3 email2 email patch2 email patch1 email patch3 ... 5Sunday, 19 May, 13
  • 29. Setup Of Case Study 5 Reviewing Integration Staging email1 email3 email2 email patch2 email patch1 email patch3 ... commit3 commit2 commit1commit patch1 commit patch2 commit patch3 ... 5Sunday, 19 May, 13
  • 30. Setup Of Case Study 5 Reviewing Integration Staging email1 email3 email2 email patch2 email patch1 email patch3 ... commit3 commit2 commit1commit patch1 commit patch2 commit patch3 ... checksum1 checksum3 checksum2 ... 5Sunday, 19 May, 13
  • 31. Setup Of Case Study 5 Reviewing Integration Staging email1 email3 email2 email patch2 email patch1 email patch3 ... commit3 commit2 commit1commit patch1 commit patch2 commit patch3 ... checksum1 checksum3 checksum2 ... 5Sunday, 19 May, 13
  • 33. size: LOC > 50 Number of reviewers > 3 ? not accepted Number of review messages > 3 ? Is this first patch in thread? not acceptedaccepted Decision Tree Building Decision Trees 7 7Sunday, 19 May, 13
  • 34. 8 RQ1: How many patches are merged? RQ2: What kind of patch is merged more likely? RQ 3: What kind of patch is accepted faster? 8Sunday, 19 May, 13
  • 35. 9 RQ1: How many patches are merged? RQ2: What kind of patch is merged more likely? RQ 3: What kind of patch is accepted faster? 9Sunday, 19 May, 13
  • 36. RQ1:33% of patches make it! 10 2005 2006 2007 2008 2009 2010 2011 2012 accepted/rejected patches percentageofpatches 0 20000 40000 60000 80000 100000 120000 28.63 28.7 27.03 32.83 32.79 33.87 33.55 30.74 71.37 71.3 72.97 67.17 67.21 66.13 66.45 69.26 % accepted by linus % rejected by linus #ofpatches 72.97% 67.17% 71.3% 71.73% 69.26% 66.45% 66.13%67.21% 28.63% 28.7% 32.79% 32.83% 27.03% 30.74%33.55% 33.87% A C C E P T R E J E C T 10Sunday, 19 May, 13
  • 37. RQ1:Requiring 1~6months! 11 2005 2006 2007 2008 2009 2010 2011 2012 year percentageofacceptedpatchesofeachyear 020406080 instantly within_hour within_day within_week within_month within_quarter within_half_year within_year took_ages Text % accepted patches 11Sunday, 19 May, 13
  • 38. RQ1: reviewing time speeds up & integration slows down 12 reviewing time integration time 12Sunday, 19 May, 13
  • 39. 13 RQ1: How many patches are merged? RQ2: What kind of patch is merged more likely? RQ 3: What kind of patch is accepted faster? 13Sunday, 19 May, 13
  • 40. RQ2: What kind of patch is merged more likely? precision:73% recall:68.47% 14 14Sunday, 19 May, 13
  • 41. RQ2: What kind of patch is merged more likely? precision:73% recall:68.47% 14 14Sunday, 19 May, 13
  • 42. RQ2: What kind of patch is merged more likely? precision:73% recall:68.47% 14 14Sunday, 19 May, 13
  • 43. RQ2: What kind of patch is merged more likely? precision:73% recall:68.47% 14 14Sunday, 19 May, 13
  • 44. RQ2: What kind of patch is merged more likely? precision:73% recall:68.47% 14 14Sunday, 19 May, 13
  • 45. 15 RQ1: How many patches are merged? RQ2: What kind of patch is merged more likely? RQ 3: What kind of patch is accepted faster? 15Sunday, 19 May, 13
  • 46. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 47. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 48. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 49. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 50. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 51. RQ3: What kind of patch is accepted faster? 16 16Sunday, 19 May, 13
  • 52. RQ3: What kind of patch is accepted faster? 16 Acceptance is determined by integration phase 16Sunday, 19 May, 13
  • 55. 2005 2006 2007 2008 2009 2010 2011 2012 year percentageofpatches 0 20000 40000 60000 80000 100000 28.63 28.7 27.03 32.83 32.79 33.87 33.55 30.74 71.37 71.3 72.97 67.17 67.21 66.13 66.45% accepted by linus % rejected by linus 72.97% 67.17% 71.3% 71.73% 66.45% 66.13%67.21% 28.63% 28.7% 32.79% 32.83% 27.03% 30.74%33.55% 33.87% 17 17Sunday, 19 May, 13
  • 56. 2005 2006 2007 2008 2009 2010 2011 2012 year percentageofpatches 0 20000 40000 60000 80000 100000 28.63 28.7 27.03 32.83 32.79 33.87 33.55 30.74 71.37 71.3 72.97 67.17 67.21 66.13 66.45% accepted by linus % rejected by linus 72.97% 67.17% 71.3% 71.73% 66.45% 66.13%67.21% 28.63% 28.7% 32.79% 32.83% 27.03% 30.74%33.55% 33.87% 17 17Sunday, 19 May, 13
  • 57. 2005 2006 2007 2008 2009 2010 2011 2012 year percentageofpatches 0 20000 40000 60000 80000 100000 28.63 28.7 27.03 32.83 32.79 33.87 33.55 30.74 71.37 71.3 72.97 67.17 67.21 66.13 66.45% accepted by linus % rejected by linus 72.97% 67.17% 71.3% 71.73% 66.45% 66.13%67.21% 28.63% 28.7% 32.79% 32.83% 27.03% 30.74%33.55% 33.87% 17 17Sunday, 19 May, 13