SlideShare a Scribd company logo
1 of 25
Download to read offline
Practical use of defect
detection and
prediction
Christopher Beal
Principal Engineer
Sun Microsystems

                          1
Sun Microsystems
• Founded in 1982
  > Stanford University Network
• Large R&D for size
• Delivers
  >   Software
  >   Services
  >   Systems
  >   Microelectronics
• Guided by a singular vision
  > quot;The Network is the Computerquot;
                                    2
Solaris
• The most advanced Operating System
  >   Zfs
  >   Fault management
  >   Dtrace
  >   Containers
  >   Open Source
      – http://www.opensolaris.org
• Made up of many different projects
  > Known as consolidations



                                       3
Solaris
• Projects include
  >   Desktop: What you see
  >   Install: To get it installed
  >   X: The windowing system
  >   Docs
  >   Internationalization/Localization
  >   ON: Operating System and Networking




                                            4
Solaris
• Multiple releases
  > Opensolaris
     – Project nevada
     – http://www.opensolaris.com
  > Solaris 10
     – 3-4 update releases a year
           –   New features
     – Fixes delivered via patches
  > Solaris 9
     – No new features
     – Fixes delivered via patches


                                     5
Sun Support
• 5 tier support model       Bug Fix

• More complex
  problems get passed                    50%
  up                   Escalation

                       Product           0.4%
                       Problem
                       Problem

                                   50%   75000

                                                 6
One Consolidation: ON
• The core OS
  > Kernel, networking, libraries, utilities
  > Low Level platform code
  > Multithreaded, complex interactions
• Size and complexity
  > 15,555,000 lines
  > 44324 files
• Contributers
  > ~2000 people contribute


                                               7
The Data Sets
• Defects are recorded in a database
  > Bugs
  > Request for enhancement (RFE)
  > Thousands recorded over the years
• Escalations are recorded in a separate database
  > < 0.1% of incoming calls result from a bug




                                                    8
The Problem
• It was noticed that about 1/6 of the incoming
  escalations were from a pre-existing bug
• If these can be fixed before customers hit them it
  will save both Sun and the Customer money




                                                       9
The Supposition
• Proactive bug fixing is good
• Saves money
  > Each escalation cost $32000
  > Proactive fixing costs $9000
     – To generate a patch
• Promotes quality
  > Fewer customers hit problems
• Prevents damage to reputation
  > Fewer escalations
• The key is fixing the right bugs
                                     10
Too much work
• Escalation work is done by the Revenue Product
  Engineering team
  > ~200 engineers
• Aim to fix the right bugs first
  > High customer impact
  > Low risk
• The key is identifying the right ones to fix
  > How can we do this?



                                                   11
Escalation Prediction
• Use data a tool to learn which Bugs are likely to get
  escalated
  > Commercially available data mining A/I used
     – Data captured from bugs and escalations
     – Pre processed to add historical data, and statistics
     – Train it on historical data,
     – Derive a suitable model
     – Validate results with real escalation data
• Run on current data
  > Initially verify based on knowledge and experience
  > Feedback for improvement to the model
                                                              12
The Model
Data Mining                           Solaris RPE
          Train

      Add Statistics   Validate            Feedback

       Add History     Predict                Fix

      Input Values     Report               Evaluate




                       Data Sources

                                                       13
The Model
• Data Mining uses a subset of the data points
  > Numerical and range based field
  > Fields with limited number of possibilities
     – Category and subcategory
     – Customer Name
          –   Statistically corrected
  > No text analysis




                                                  14
Sample Report




                15
The Implementation
• Identify resources to proactively work
  > Solaris RPE
• Run a weekly report of Escalation Prediction
  > Use knowledge and judgement to identify the most
    important
  > Proactively Fix
  > For false positives provide feedback to EP team
     – To improve the model




                                                       16
Successes
✔   41 patches for EP fixes released
    > Proactively preventing escalations
✔   Notable fixes include
    > 4964867 boot.bin: boot panic requires console presence
      for reboot
       – Allows better diagnosis after a problem
    > 4876829 console: bind with uninitialized sin6_scope_id
       – Identified a regression in a patch
    > 6280143 lufs_enable() strikes again
       – Panic on boot


                                                               17
More Successes and some issues
✔   With training the model improved
✗   Some bugs which could not be hit always reported
✗   Slow cycle of learning
✗   Too much reactive work to do
✗   Lack of text analysis in the prediction
    ✗   Led to people mistrust results




                                                       18
Why we discontinued
• Resource crunch
  > The teams identified to proactively work these suddenly
    was overloaded by reactive work
     – Success os Solaris 10
     – Reduction in force elsewhere moved more work to RPE
• Lack of expertise
  > The author of the model left the company
  > Difficult to retrain the model
     – Gradual decline in report quality




                                                              19
Why we discontinued
• Lack of a champion
  > Existing executive champions moved on
  > New executives struggled to grasp the model
• All this in a background of tough financial times
  > Many people leaving Sun
  > Reduction in force
  > Focus on the present




                                                      20
Lessons Learned
• Ring Fence your resources
  > If you have a team implementing your model then keep
    them safe
• Keep it simple
  > Exec sponsors move on, make sure it can be resold
     – Without a champion funding will be challenging
• Keep improving it
  > If it goes backwards it loses credibility
  > Implementor buy in is key



                                                           21
What we do now
• Release criteria
  > Review P1 and P2 bugs for fixing
• Incoming triage
  > All new bugs reviewed to see if they are complete
     – ie. an analysis can be performed with the data provided
  > Identify need to be fixed protectively




                                                                 22
What we do now
• Work on getting bugs defined properly
  > Use Kepner Tregoe based trouble shooting methodology
• Fix in update releases
  > Allow all changes to be tested together
  > Improves quality
  > Regular release schedule allows for focused work




                                                           23
What are we considering next?
• Upgrading static analysis tools
  > Better analysis of source code
• Performing run time checking
  > Use tools to verify code correctness during execution
• Use of defect prediction?
  > Should we be looking at ways of identifying code likely to
    contain bugs




                                                                 24
Practical use of defect
detection and
prediction
Christopher Beal
chris.beal@sun.com


                          25

More Related Content

Similar to Practical use of defect detection and prediction

Tools and Tips to Diagnose Performance Issues
Tools and Tips to Diagnose Performance IssuesTools and Tips to Diagnose Performance Issues
Tools and Tips to Diagnose Performance IssuesClaudio Miranda
 
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Simon Storm
 
The 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPThe 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPIoannis Baltopoulos
 
Agile Maintenance
Agile MaintenanceAgile Maintenance
Agile MaintenanceNaresh Jain
 
Designing and Deploying Internet-Scale Services
Designing and Deploying Internet-Scale ServicesDesigning and Deploying Internet-Scale Services
Designing and Deploying Internet-Scale Servicesbigqiang zou
 
How to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsHow to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsDynatrace
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCA Technologies
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCA Technologies
 
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Preeya Selvarajah
 
How to downscope your EBS upgrade project
How to downscope your EBS upgrade projectHow to downscope your EBS upgrade project
How to downscope your EBS upgrade projectpanayaofficial
 
Netcetera Proactive Management Service
Netcetera Proactive Management ServiceNetcetera Proactive Management Service
Netcetera Proactive Management ServicePeter Skelton
 
Continuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at DashlaneContinuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at DashlaneDashlane
 
Getting The Most Out Of My Sql Enterprise Monitor 20
Getting The Most Out Of My Sql Enterprise Monitor 20Getting The Most Out Of My Sql Enterprise Monitor 20
Getting The Most Out Of My Sql Enterprise Monitor 20MySQLConference
 
Working With People Adl Uni
Working With People Adl UniWorking With People Adl Uni
Working With People Adl UniMatthew Landauer
 
How to Overcome the 5 Barriers to Production App Security Testing
How to Overcome the 5 Barriers to Production App Security TestingHow to Overcome the 5 Barriers to Production App Security Testing
How to Overcome the 5 Barriers to Production App Security TestingCenzic
 
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...CA Technologies
 
How to manage and monitor large sql server estates
How to manage and monitor large sql server estatesHow to manage and monitor large sql server estates
How to manage and monitor large sql server estatesRed Gate Software
 
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More DefectsDevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More DefectsTechWell
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardTechWell
 

Similar to Practical use of defect detection and prediction (20)

Tools and Tips to Diagnose Performance Issues
Tools and Tips to Diagnose Performance IssuesTools and Tips to Diagnose Performance Issues
Tools and Tips to Diagnose Performance Issues
 
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
 
The 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPThe 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEP
 
Bof4162 kovalsky
Bof4162 kovalskyBof4162 kovalsky
Bof4162 kovalsky
 
Agile Maintenance
Agile MaintenanceAgile Maintenance
Agile Maintenance
 
Designing and Deploying Internet-Scale Services
Designing and Deploying Internet-Scale ServicesDesigning and Deploying Internet-Scale Services
Designing and Deploying Internet-Scale Services
 
How to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsHow to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOps
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software Development
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software Development
 
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
 
How to downscope your EBS upgrade project
How to downscope your EBS upgrade projectHow to downscope your EBS upgrade project
How to downscope your EBS upgrade project
 
Netcetera Proactive Management Service
Netcetera Proactive Management ServiceNetcetera Proactive Management Service
Netcetera Proactive Management Service
 
Continuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at DashlaneContinuous Delivery: releasing Better and Faster at Dashlane
Continuous Delivery: releasing Better and Faster at Dashlane
 
Getting The Most Out Of My Sql Enterprise Monitor 20
Getting The Most Out Of My Sql Enterprise Monitor 20Getting The Most Out Of My Sql Enterprise Monitor 20
Getting The Most Out Of My Sql Enterprise Monitor 20
 
Working With People Adl Uni
Working With People Adl UniWorking With People Adl Uni
Working With People Adl Uni
 
How to Overcome the 5 Barriers to Production App Security Testing
How to Overcome the 5 Barriers to Production App Security TestingHow to Overcome the 5 Barriers to Production App Security Testing
How to Overcome the 5 Barriers to Production App Security Testing
 
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
Case Study: Ecolab Transforms Infrastructure and Application Monitoring into ...
 
How to manage and monitor large sql server estates
How to manage and monitor large sql server estatesHow to manage and monitor large sql server estates
How to manage and monitor large sql server estates
 
DevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More DefectsDevOps: Find Solutions, Not More Defects
DevOps: Find Solutions, Not More Defects
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 

More from gregoryg

Community-Assisted Software Engineering Decision Making
Community-Assisted Software Engineering Decision MakingCommunity-Assisted Software Engineering Decision Making
Community-Assisted Software Engineering Decision Makinggregoryg
 
The Robust Optimization of Non-Linear Requirements Models
The Robust Optimization of Non-Linear Requirements ModelsThe Robust Optimization of Non-Linear Requirements Models
The Robust Optimization of Non-Linear Requirements Modelsgregoryg
 
Finding Robust Solutions to Requirements Models
Finding Robust Solutions to Requirements ModelsFinding Robust Solutions to Requirements Models
Finding Robust Solutions to Requirements Modelsgregoryg
 
Distributed Decision Tree Induction
Distributed Decision Tree InductionDistributed Decision Tree Induction
Distributed Decision Tree Inductiongregoryg
 
Irrf Presentation
Irrf PresentationIrrf Presentation
Irrf Presentationgregoryg
 
Optimizing Requirements Decisions with KEYS
Optimizing Requirements Decisions with KEYSOptimizing Requirements Decisions with KEYS
Optimizing Requirements Decisions with KEYSgregoryg
 
Confidence in Software Cost Estimation Results based on MMRE and PRED
Confidence in Software Cost Estimation Results based on MMRE and PREDConfidence in Software Cost Estimation Results based on MMRE and PRED
Confidence in Software Cost Estimation Results based on MMRE and PREDgregoryg
 
Promise08 Wrapup
Promise08 WrapupPromise08 Wrapup
Promise08 Wrapupgregoryg
 
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...gregoryg
 
Software Defect Repair Times: A Multiplicative Model
Software Defect Repair Times: A Multiplicative ModelSoftware Defect Repair Times: A Multiplicative Model
Software Defect Repair Times: A Multiplicative Modelgregoryg
 
Complementing Approaches in ERP Effort Estimation Practice: an Industrial Study
Complementing Approaches in ERP Effort Estimation Practice: an Industrial StudyComplementing Approaches in ERP Effort Estimation Practice: an Industrial Study
Complementing Approaches in ERP Effort Estimation Practice: an Industrial Studygregoryg
 
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...gregoryg
 
Implications of Ceiling Effects in Defect Predictors
Implications of Ceiling Effects in Defect PredictorsImplications of Ceiling Effects in Defect Predictors
Implications of Ceiling Effects in Defect Predictorsgregoryg
 
Risk And Relevance 20080414ppt
Risk And Relevance 20080414pptRisk And Relevance 20080414ppt
Risk And Relevance 20080414pptgregoryg
 
Organizations Use Data
Organizations Use DataOrganizations Use Data
Organizations Use Datagregoryg
 
Cukic Promise08 V3
Cukic Promise08 V3Cukic Promise08 V3
Cukic Promise08 V3gregoryg
 
Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2gregoryg
 
Elane - Promise08
Elane - Promise08Elane - Promise08
Elane - Promise08gregoryg
 
Risk And Relevance 20080414ppt
Risk And Relevance 20080414pptRisk And Relevance 20080414ppt
Risk And Relevance 20080414pptgregoryg
 
Introduction Promise 2008 V3
Introduction Promise 2008 V3Introduction Promise 2008 V3
Introduction Promise 2008 V3gregoryg
 

More from gregoryg (20)

Community-Assisted Software Engineering Decision Making
Community-Assisted Software Engineering Decision MakingCommunity-Assisted Software Engineering Decision Making
Community-Assisted Software Engineering Decision Making
 
The Robust Optimization of Non-Linear Requirements Models
The Robust Optimization of Non-Linear Requirements ModelsThe Robust Optimization of Non-Linear Requirements Models
The Robust Optimization of Non-Linear Requirements Models
 
Finding Robust Solutions to Requirements Models
Finding Robust Solutions to Requirements ModelsFinding Robust Solutions to Requirements Models
Finding Robust Solutions to Requirements Models
 
Distributed Decision Tree Induction
Distributed Decision Tree InductionDistributed Decision Tree Induction
Distributed Decision Tree Induction
 
Irrf Presentation
Irrf PresentationIrrf Presentation
Irrf Presentation
 
Optimizing Requirements Decisions with KEYS
Optimizing Requirements Decisions with KEYSOptimizing Requirements Decisions with KEYS
Optimizing Requirements Decisions with KEYS
 
Confidence in Software Cost Estimation Results based on MMRE and PRED
Confidence in Software Cost Estimation Results based on MMRE and PREDConfidence in Software Cost Estimation Results based on MMRE and PRED
Confidence in Software Cost Estimation Results based on MMRE and PRED
 
Promise08 Wrapup
Promise08 WrapupPromise08 Wrapup
Promise08 Wrapup
 
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...
Improving Analogy Software Effort Estimation using Fuzzy Feature Subset Selec...
 
Software Defect Repair Times: A Multiplicative Model
Software Defect Repair Times: A Multiplicative ModelSoftware Defect Repair Times: A Multiplicative Model
Software Defect Repair Times: A Multiplicative Model
 
Complementing Approaches in ERP Effort Estimation Practice: an Industrial Study
Complementing Approaches in ERP Effort Estimation Practice: an Industrial StudyComplementing Approaches in ERP Effort Estimation Practice: an Industrial Study
Complementing Approaches in ERP Effort Estimation Practice: an Industrial Study
 
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...
Multi-criteria Decision Analysis for Customization of Estimation by Analogy M...
 
Implications of Ceiling Effects in Defect Predictors
Implications of Ceiling Effects in Defect PredictorsImplications of Ceiling Effects in Defect Predictors
Implications of Ceiling Effects in Defect Predictors
 
Risk And Relevance 20080414ppt
Risk And Relevance 20080414pptRisk And Relevance 20080414ppt
Risk And Relevance 20080414ppt
 
Organizations Use Data
Organizations Use DataOrganizations Use Data
Organizations Use Data
 
Cukic Promise08 V3
Cukic Promise08 V3Cukic Promise08 V3
Cukic Promise08 V3
 
Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2Boetticher Presentation Promise 2008v2
Boetticher Presentation Promise 2008v2
 
Elane - Promise08
Elane - Promise08Elane - Promise08
Elane - Promise08
 
Risk And Relevance 20080414ppt
Risk And Relevance 20080414pptRisk And Relevance 20080414ppt
Risk And Relevance 20080414ppt
 
Introduction Promise 2008 V3
Introduction Promise 2008 V3Introduction Promise 2008 V3
Introduction Promise 2008 V3
 

Recently uploaded

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Recently uploaded (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Practical use of defect detection and prediction

  • 1. Practical use of defect detection and prediction Christopher Beal Principal Engineer Sun Microsystems 1
  • 2. Sun Microsystems • Founded in 1982 > Stanford University Network • Large R&D for size • Delivers > Software > Services > Systems > Microelectronics • Guided by a singular vision > quot;The Network is the Computerquot; 2
  • 3. Solaris • The most advanced Operating System > Zfs > Fault management > Dtrace > Containers > Open Source – http://www.opensolaris.org • Made up of many different projects > Known as consolidations 3
  • 4. Solaris • Projects include > Desktop: What you see > Install: To get it installed > X: The windowing system > Docs > Internationalization/Localization > ON: Operating System and Networking 4
  • 5. Solaris • Multiple releases > Opensolaris – Project nevada – http://www.opensolaris.com > Solaris 10 – 3-4 update releases a year – New features – Fixes delivered via patches > Solaris 9 – No new features – Fixes delivered via patches 5
  • 6. Sun Support • 5 tier support model Bug Fix • More complex problems get passed 50% up Escalation Product 0.4% Problem Problem 50% 75000 6
  • 7. One Consolidation: ON • The core OS > Kernel, networking, libraries, utilities > Low Level platform code > Multithreaded, complex interactions • Size and complexity > 15,555,000 lines > 44324 files • Contributers > ~2000 people contribute 7
  • 8. The Data Sets • Defects are recorded in a database > Bugs > Request for enhancement (RFE) > Thousands recorded over the years • Escalations are recorded in a separate database > < 0.1% of incoming calls result from a bug 8
  • 9. The Problem • It was noticed that about 1/6 of the incoming escalations were from a pre-existing bug • If these can be fixed before customers hit them it will save both Sun and the Customer money 9
  • 10. The Supposition • Proactive bug fixing is good • Saves money > Each escalation cost $32000 > Proactive fixing costs $9000 – To generate a patch • Promotes quality > Fewer customers hit problems • Prevents damage to reputation > Fewer escalations • The key is fixing the right bugs 10
  • 11. Too much work • Escalation work is done by the Revenue Product Engineering team > ~200 engineers • Aim to fix the right bugs first > High customer impact > Low risk • The key is identifying the right ones to fix > How can we do this? 11
  • 12. Escalation Prediction • Use data a tool to learn which Bugs are likely to get escalated > Commercially available data mining A/I used – Data captured from bugs and escalations – Pre processed to add historical data, and statistics – Train it on historical data, – Derive a suitable model – Validate results with real escalation data • Run on current data > Initially verify based on knowledge and experience > Feedback for improvement to the model 12
  • 13. The Model Data Mining Solaris RPE Train Add Statistics Validate Feedback Add History Predict Fix Input Values Report Evaluate Data Sources 13
  • 14. The Model • Data Mining uses a subset of the data points > Numerical and range based field > Fields with limited number of possibilities – Category and subcategory – Customer Name – Statistically corrected > No text analysis 14
  • 16. The Implementation • Identify resources to proactively work > Solaris RPE • Run a weekly report of Escalation Prediction > Use knowledge and judgement to identify the most important > Proactively Fix > For false positives provide feedback to EP team – To improve the model 16
  • 17. Successes ✔ 41 patches for EP fixes released > Proactively preventing escalations ✔ Notable fixes include > 4964867 boot.bin: boot panic requires console presence for reboot – Allows better diagnosis after a problem > 4876829 console: bind with uninitialized sin6_scope_id – Identified a regression in a patch > 6280143 lufs_enable() strikes again – Panic on boot 17
  • 18. More Successes and some issues ✔ With training the model improved ✗ Some bugs which could not be hit always reported ✗ Slow cycle of learning ✗ Too much reactive work to do ✗ Lack of text analysis in the prediction ✗ Led to people mistrust results 18
  • 19. Why we discontinued • Resource crunch > The teams identified to proactively work these suddenly was overloaded by reactive work – Success os Solaris 10 – Reduction in force elsewhere moved more work to RPE • Lack of expertise > The author of the model left the company > Difficult to retrain the model – Gradual decline in report quality 19
  • 20. Why we discontinued • Lack of a champion > Existing executive champions moved on > New executives struggled to grasp the model • All this in a background of tough financial times > Many people leaving Sun > Reduction in force > Focus on the present 20
  • 21. Lessons Learned • Ring Fence your resources > If you have a team implementing your model then keep them safe • Keep it simple > Exec sponsors move on, make sure it can be resold – Without a champion funding will be challenging • Keep improving it > If it goes backwards it loses credibility > Implementor buy in is key 21
  • 22. What we do now • Release criteria > Review P1 and P2 bugs for fixing • Incoming triage > All new bugs reviewed to see if they are complete – ie. an analysis can be performed with the data provided > Identify need to be fixed protectively 22
  • 23. What we do now • Work on getting bugs defined properly > Use Kepner Tregoe based trouble shooting methodology • Fix in update releases > Allow all changes to be tested together > Improves quality > Regular release schedule allows for focused work 23
  • 24. What are we considering next? • Upgrading static analysis tools > Better analysis of source code • Performing run time checking > Use tools to verify code correctness during execution • Use of defect prediction? > Should we be looking at ways of identifying code likely to contain bugs 24
  • 25. Practical use of defect detection and prediction Christopher Beal chris.beal@sun.com 25