SlideShare uma empresa Scribd logo
1 de 36
Ranking the Bugs
    How Open Source Communities
      (Help) Fix Software Defects




                  Diederik van Liere
University of Toronto / Erasmus University Rotterdam
                FSOSS SENECA 2009
                           1
Who am I?
•   Post-doc researcher at the strategy department
    Rotman School of Management / University of
    Toronto
•   PhD information & decision sciences department at
    the Rotterdam School of Management

•   “Networkophile”
•   My research focuses on the intersection of social &
    digital networks and open source software
•   Mosaic / Netscape / Firefox user since 1994
•   Blog: www.network-labs.org
                          2
My Coding Credentials
Python:
   print “Hello FSOSS 2009”
PHP:
   print “Hello FSOSS 2009”;
jQuery:
   $(document).ready(function(){
         $(“body”).append(“<p>Hello FSOSS 2009</
         p>”);
   });                 3
So…it feels like being thrown in front of the lions
                         4
“All Bugs are Shallow Given
      Enough Eyeballs”
             5    Linus Torvalds as quoted by Eric S. Raymond
6
But where is the empirical evidence?
                 6
Physical distance does not affect
post-release fault rates, distance in
  the organizational chart does
        as Quoted from Greg Wilson, StackOveflow Days (Nagappan et al. (2007) & Bird et al. (2009))




                                      7
Data Collection
•   A community member is someone who posted at
    least 1 message at bugzilla.mozilla.org
    •   Date of entry: first time message posted

    •   Date of exit: a month after last message posted
•   Collected bug reports filed at bugzilla.mozilla.org
    with id 1 - 480.000 if product is Firefox / Core /
    Seamonkey, in total 320.655 bug reports
•   This covers the period late 1998 to March 1st, 2009
•   Tried to match different email addresses to single
    developer (more about this later)
                           8
9
10
11
12
13
Starting point:
a single bug report
         14
Bug complexity



  Quality user
  contribution




                   Time needed to      Time needed to
Community churn
                   verify bug report      fix bug




Understanding of
 the information
    repository




                        15
Bug complexity



  Quality user
  contribution




                    Time needed to      Time needed to
Community churn
                    verify bug report      fix bug




Understanding of
 the information
    repository


                   Stage 1
                         16
Bug complexity



  Quality user
  contribution




                   Time needed to       Time needed to
Community churn
                   verify bug report       fix bug




Understanding of
 the information
    repository


                                       Stage 2
                        17
Estimation & Variables
•   Weibull regression (Accelerated Time to Failure
    models, used to predict time-to-failure for hard disks)
•   Unit of analysis: bug report

•   Quality of bug report ranges from 0 to 4:

    •   Sum the presence of ‘steps to reproduce’, ‘stack
        trace’, ‘screenshot’ & ‘version information’
•   Understanding of information repository: average
    experience bug discussants marking bugs duplicate

•   Churn rate community:

•   Bug complexity: centrality in bug dependency
    network               18
High quality contributions
shorten time to verify




                 Quality user   Less time needed to
                 contribution    verify bug report

            19
An open source community is also an
information repository




               20
Community members
build, discuss & update the
information repository



             21
Understanding what’s in the
information repository
 shortens time to verify


                  Understanding of
                                     Less time needed to
                   the information
                                      verify bug report
                      repository
             22
Community churn
reduces understanding of the
information repository




                                    More time needed to
                  Community churn
                                     verify bug report

             23
The Bigger Picture of Bug Complexity




                                       More time needed to
                      Bug complexity
                                             fix bug

                 24
25
Implications
•   Retention of community members is key

•   Get community members through the learning
    curve asap

•   Extend Bugzilla with prediction functionality
    to assist in allocating resources

•   Funnel 1st time bug reporters to ‘user
    assistance area’


                        26
Tools to improve bug
   fixing process:
1. Predict Bugfix (Jetpack Add-on)
2. Crowdsource ‘flaming’ reports
(Jetpack Add-on)

3. Crowdsource developer
handles
                   available at:
       www.network-labs.org

 27
Predicting bug fixes




         28
Crowdsourcing flamy bug
       reports




          29
www.network-labs.org/mozilla/




              30
31
www.network-labs.org
diederik.vanliere@rotman.utoronto.ca

drdee_is_wired   32
Literature References
•   E. S. Raymond, “The Cathedral & the Bazaar: Musings on Linux and Open
    Source by an Accidental Revolutionary”, Sebastopol, CA: O'Reilly & Associates,
    Inc., 1999. Available at: http://www.catb.org/~esr/writings/cathedral-
    bazaar/

•   N. Nagappan, et al., “The Influence of Organizational Structure on Software
    Quality - An Empirical Case Study”, International Conference on Software
    Engineering, 2008. Available at: http://portal.acm.org/citation.cfm?
    id=1368160

•   T. Zimmermann, et al. “Predicting Defects Using Network Analysis on Dependency
    Graphs”, International Conference on Software Engineering, 2008.
    Available at: http://portal.acm.org/citation.cfm?id=1368161

•   C. Bird, et al. “Does Distributed Development Affect Software Quality? An Empirical
    Case Study of Windows Vista”, Communications of the ACM, 2009.
    Available at: http://macbeth.cs.ucdavis.edu/distributed.pdf


                                       33
References
•   http://www.flickr.com/photos/eriknielsen/2233837359/
    sizes/l/
•   http://www.flickr.com/photos/fastjack/282707058/sizes/o/
•   http://www.flickr.com/photos/
    59303791@N00/3398708956/sizes/o/
•   http://www.flickr.com/photos/_ilkin_/3890567460/sizes/o/
•   http://www.flickr.com/photos/wondertubs/2152108411/
•   http://www.flickr.com/photos/asurroca/136223817/sizes/o/
•   http://www.flickr.com/photos/thinmints137/452928157/
    sizes/o/


                            34
References
•   http://www.flickr.com/photos/hanneorla/4032004209/sizes/o/

•   http://www.flickr.com/photos/97629199@N00/3254201501/in/pool-
    bookshelf

•   http://www.flickr.com/photos/gadl/740994053/

•   http://www.flickr.com/photos/blu_blue/262096844/sizes/o/

•   http://www.flickr.com/photos/kurisuuu/3227744533/sizes/o/

•   http://www.flickr.com/photos/astrid/2330867426/sizes/o/

•   http://www.flickr.com/photos/sweetone/2666516868/sizes/o/

•   http://www.flickr.com/photos/caveman_92223/2982595969/sizes/o/

•   http://www.flickr.com/photos/mrtea/2114891329/sizes/o/



                               35

Mais conteúdo relacionado

Último

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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 

Último (20)

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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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, ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
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...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

Destaque

Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 

Destaque (20)

Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 

How Shallow is a Bug - How Open Source Communities (Help) Fix Bugs

  • 1. Ranking the Bugs How Open Source Communities (Help) Fix Software Defects Diederik van Liere University of Toronto / Erasmus University Rotterdam FSOSS SENECA 2009 1
  • 2. Who am I? • Post-doc researcher at the strategy department Rotman School of Management / University of Toronto • PhD information & decision sciences department at the Rotterdam School of Management • “Networkophile” • My research focuses on the intersection of social & digital networks and open source software • Mosaic / Netscape / Firefox user since 1994 • Blog: www.network-labs.org 2
  • 3. My Coding Credentials Python: print “Hello FSOSS 2009” PHP: print “Hello FSOSS 2009”; jQuery: $(document).ready(function(){ $(“body”).append(“<p>Hello FSOSS 2009</ p>”); }); 3
  • 4. So…it feels like being thrown in front of the lions 4
  • 5. “All Bugs are Shallow Given Enough Eyeballs” 5 Linus Torvalds as quoted by Eric S. Raymond
  • 6. 6
  • 7. But where is the empirical evidence? 6
  • 8. Physical distance does not affect post-release fault rates, distance in the organizational chart does as Quoted from Greg Wilson, StackOveflow Days (Nagappan et al. (2007) & Bird et al. (2009)) 7
  • 9. Data Collection • A community member is someone who posted at least 1 message at bugzilla.mozilla.org • Date of entry: first time message posted • Date of exit: a month after last message posted • Collected bug reports filed at bugzilla.mozilla.org with id 1 - 480.000 if product is Firefox / Core / Seamonkey, in total 320.655 bug reports • This covers the period late 1998 to March 1st, 2009 • Tried to match different email addresses to single developer (more about this later) 8
  • 10. 9
  • 11. 10
  • 12. 11
  • 13. 12
  • 14. 13
  • 15. Starting point: a single bug report 14
  • 16. Bug complexity Quality user contribution Time needed to Time needed to Community churn verify bug report fix bug Understanding of the information repository 15
  • 17. Bug complexity Quality user contribution Time needed to Time needed to Community churn verify bug report fix bug Understanding of the information repository Stage 1 16
  • 18. Bug complexity Quality user contribution Time needed to Time needed to Community churn verify bug report fix bug Understanding of the information repository Stage 2 17
  • 19. Estimation & Variables • Weibull regression (Accelerated Time to Failure models, used to predict time-to-failure for hard disks) • Unit of analysis: bug report • Quality of bug report ranges from 0 to 4: • Sum the presence of ‘steps to reproduce’, ‘stack trace’, ‘screenshot’ & ‘version information’ • Understanding of information repository: average experience bug discussants marking bugs duplicate • Churn rate community: • Bug complexity: centrality in bug dependency network 18
  • 20. High quality contributions shorten time to verify Quality user Less time needed to contribution verify bug report 19
  • 21. An open source community is also an information repository 20
  • 22. Community members build, discuss & update the information repository 21
  • 23. Understanding what’s in the information repository shortens time to verify Understanding of Less time needed to the information verify bug report repository 22
  • 24. Community churn reduces understanding of the information repository More time needed to Community churn verify bug report 23
  • 25. The Bigger Picture of Bug Complexity More time needed to Bug complexity fix bug 24
  • 26. 25
  • 27. Implications • Retention of community members is key • Get community members through the learning curve asap • Extend Bugzilla with prediction functionality to assist in allocating resources • Funnel 1st time bug reporters to ‘user assistance area’ 26
  • 28. Tools to improve bug fixing process: 1. Predict Bugfix (Jetpack Add-on) 2. Crowdsource ‘flaming’ reports (Jetpack Add-on) 3. Crowdsource developer handles available at: www.network-labs.org 27
  • 32. 31
  • 34. Literature References • E. S. Raymond, “The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary”, Sebastopol, CA: O'Reilly & Associates, Inc., 1999. Available at: http://www.catb.org/~esr/writings/cathedral- bazaar/ • N. Nagappan, et al., “The Influence of Organizational Structure on Software Quality - An Empirical Case Study”, International Conference on Software Engineering, 2008. Available at: http://portal.acm.org/citation.cfm? id=1368160 • T. Zimmermann, et al. “Predicting Defects Using Network Analysis on Dependency Graphs”, International Conference on Software Engineering, 2008. Available at: http://portal.acm.org/citation.cfm?id=1368161 • C. Bird, et al. “Does Distributed Development Affect Software Quality? An Empirical Case Study of Windows Vista”, Communications of the ACM, 2009. Available at: http://macbeth.cs.ucdavis.edu/distributed.pdf 33
  • 35. References • http://www.flickr.com/photos/eriknielsen/2233837359/ sizes/l/ • http://www.flickr.com/photos/fastjack/282707058/sizes/o/ • http://www.flickr.com/photos/ 59303791@N00/3398708956/sizes/o/ • http://www.flickr.com/photos/_ilkin_/3890567460/sizes/o/ • http://www.flickr.com/photos/wondertubs/2152108411/ • http://www.flickr.com/photos/asurroca/136223817/sizes/o/ • http://www.flickr.com/photos/thinmints137/452928157/ sizes/o/ 34
  • 36. References • http://www.flickr.com/photos/hanneorla/4032004209/sizes/o/ • http://www.flickr.com/photos/97629199@N00/3254201501/in/pool- bookshelf • http://www.flickr.com/photos/gadl/740994053/ • http://www.flickr.com/photos/blu_blue/262096844/sizes/o/ • http://www.flickr.com/photos/kurisuuu/3227744533/sizes/o/ • http://www.flickr.com/photos/astrid/2330867426/sizes/o/ • http://www.flickr.com/photos/sweetone/2666516868/sizes/o/ • http://www.flickr.com/photos/caveman_92223/2982595969/sizes/o/ • http://www.flickr.com/photos/mrtea/2114891329/sizes/o/ 35