SlideShare a Scribd company logo
Studying	
  the	
  impact	
  of	
  dependency	
  network	
  measures	
  	
  
                      on	
  soIware	
  quality	
  
       Thanh	
  H.	
  D.	
  Nguyen,	
  Bram	
  Adams,	
  Ahmed	
  E.	
  Hassan	
  
      SAIL,	
  School	
  of	
  Compu?ng,	
  Queen’s	
  University,	
  Kingston,	
  Canada	
  
Code	
  Quality	
  
  Problem:	
  
     Quality	
  improvement	
  resources	
  are	
  limited	
  
  Solu?on:	
  
     Bug	
  predic5on	
  iden5fies	
  defect-­‐prone	
  modules	
  




                                                                      2	
  
Bug	
  predic?on	
  models	
  

                               Bug	
  
                            Predic5on	
  
                              Model	
  




High	
  Recall	
  -­‐>	
  We	
  won’t	
  miss	
  a	
  possible	
  bug	
  
  High	
  Precision	
  -­‐>	
  We	
  won’t	
  waste	
  effort	
              3	
  
SoIware	
  is	
  more	
  than	
  just	
  	
  
           size	
  and	
  complexity	
  

Node"                        A	
                            D	
  
                                         C	
  
Local
Neighborhood"        B	
                                 F	
  

Global
Neighborhood"                    E	
             G	
  

                                                                    4	
  
SoIware	
  is	
  more	
  than	
  just	
  	
  
           size	
  and	
  complexity	
  
                      Traditional Metrics
Node"
                             (MET)"
Local
Neighborhood"             Social Network
                            Measures!
Global                        (SNA)"
Neighborhood"

                                                        5	
  
Bug	
  
                Predic5on	
  
                  Model	
  




Would	
  SNA	
  improve	
  performance?	
     6	
  
Would	
  SNA	
  improve	
  performance?	
  




                                              7	
  
Would	
  SNA	
  improve	
  performance?	
  




                                              8	
  
Would	
  SNA	
  improve	
  performance?	
  




                                              9	
  
Would	
  SNA	
  improve	
  performance?	
  




                                              10	
  
Why	
  Eclipse?	
  




                      11	
  
Bug	
  
                Predic5on	
  
                  Model	
  




Would	
  SNA	
  improve	
  performance?	
     12	
  
Bug	
  
                Predic5on	
  
                  Model	
  




Would	
  SNA	
  improve	
  performance?	
     13	
  
+25%	
  for	
  Recall	
  and	
  Precision	
  




                                                14	
  
Does	
  this	
  generalize?	
  	
  




                                      15	
  
Which	
  metrics	
  provide	
  the	
  
              improvement?	
  
Node"                      12	
  Metrics	
  


Local
                           11	
  Metrics	
  
Neighborhood"

Global
Neighborhood"              12	
  Metrics	
  
   Use	
  hierarchical	
  modeling	
  to	
  find	
  
 important	
  group	
  [Caltado	
  et	
  al.	
  TSE10]	
  
                                                         16	
  
Which	
  metrics	
  provide	
  the	
  
             improvement?	
  
Node"                   12	
  Metrics	
          7%	
  


Local
                        11	
  Metrics	
      +2.7%	
  
Neighborhood"

Global
Neighborhood"           12	
  Metrics	
      +0.3%	
  

                                                          17	
  
Which	
  metrics	
  provide	
  the	
  
             improvement?	
  
Node"                    12	
  Metrics	
           7%	
  


Local
                         11	
  Metrics	
         +2.7%	
  
Neighborhood"

Global
Neighborhood"            12	
  Metrics	
         +0.3%	
  
   Local	
  neighbours	
  have	
  most	
  of	
  the	
  
        important	
  improvement	
                          18	
  
Which	
  local	
  measures	
  have	
  the	
  most	
  impact?	
  




                                                            19	
  
Cluster	
  fan-­‐in	
  




                          20	
  
Cluster	
  fan-­‐in	
  




                          21	
  
Layer	
  bypass	
  




                      22	
  
Layer	
  bypass	
  




                      23	
  
Layer	
  bypass	
  




                      24	
  
Consider	
  your	
  neighbor	
  connec?ons	
  




                                                 25	
  
How	
  well	
  do	
  we	
  perform	
  in	
  prac?ce?	
  

                               ✔               ✗



                                                       26	
  
Effort	
  Aware	
  Predic?on	
  Models	
  




                                            27	
  
Comparing	
  Performance	
  Using	
  Effort	
  
                   Aware	
  Curves	
  




                                                             100
                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
LOC	
        48	
        8	
       44	
  

                                                             40
 ROI	
        0	
      0.125	
   0.045	
  
                                                             20
Risk	
      0.78	
     0.56	
     0.34	
  
                                                             0




                                                                   0   20     40     60     80    100

                                                                       % lines of code reviewed
                                                                                                    28	
  
Comparing	
  Performance	
  Using	
  Effort	
  
                   Aware	
  Curves	
  




                                                             100
                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
LOC	
        48	
        8	
       44	
  

                                                             40             A	
  
 ROI	
        0	
      0.125	
   0.045	
  
                                                             20
Risk	
      0.78	
     0.56	
     0.34	
  
                                                             0




                                                                   0   20       40   60     80    100

                                                                       % lines of code reviewed
                                                                                                    29	
  
Comparing	
  Performance	
  Using	
  Effort	
  
                   Aware	
  Curves	
  




                                                             100
                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
LOC	
        48	
        8	
       44	
  

                                                             40
 ROI	
        0	
      0.125	
   0.045	
  
                                                             20
                                                                                          B	
  
Risk	
      0.78	
     0.56	
     0.34	
  
                                                             0




                                                                   0   20     40     60       80   100

                                                                       % lines of code reviewed
                                                                                                     30	
  
Comparing	
  Performance	
  Using	
  Effort	
  
                   Aware	
  Curves	
  




                                                             100
                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
LOC	
        48	
        8	
       44	
  

                                                             40                             C	
  
 ROI	
        0	
      0.125	
   0.045	
  
                                                             20
Risk	
      0.78	
     0.56	
     0.34	
  
                                                             0




                                                                   0   20     40     60     80      100

                                                                       % lines of code reviewed
                                                                                                      31	
  
Is	
  this	
  a	
  good	
  predic?on?	
  




                                                             100
                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
LOC	
        48	
        8	
       44	
  

                                                             40
 ROI	
        0	
      0.125	
   0.045	
  
                                                             20
Risk	
      0.78	
     0.56	
     0.34	
  
                                                             0




                                                                   0   20     40     60     80    100

                                                                       % lines of code reviewed
                                                                                                    32	
  
Beeer	
  predic?on	
  means	
  a	
  higher	
  curve	
  




                                                             100
                                                                       Good	
  



                                                             80
 File	
       A	
        B	
        C	
  



                                             % bugs caught
#bug	
        0	
        1	
        2	
  



                                                             60
 LOC	
       48	
        8	
       44	
  

                                                             40
 ROI	
        0	
      0.125	
   0.045	
                                               Bad	
  
                                                             20
 Bad	
      0.78	
     0.56	
     0.34	
  
Good	
      0.32	
     0.72	
     0.55	
  
                                                             0




                                                                   0    20     40     60     80    100

                                                                        % lines of code reviewed
                                                                                                     33	
  
The	
  predic?on	
  model	
  helps	
  	
  
                         reduce	
  tes?ng	
  effort	
  	
  
                100
                                  Random	
  
                                    File	
  
                80
% bugs caught

                60




                               File	
  
                40




                                               Package	
  
                20
                0




                      0      20           40     60          80    100

                                  % lines of code reviewed               34	
  
35	
  
Class	
  pred.	
  has	
  more	
  poten?al	
  




                                                36	
  
            Thanh	
  H.	
  D.	
  Nguyen	
  
            (thanhnguyen@cs.queensu.ca)	
  
Deviance	
  explained	
  

                    +2.7%"




                                             +0.3%"
                                                            +1,9%"




                 +1.1%"



Bugginess	
  ~	
  Traditional	
  metrics	
  +	
  Local	
  +	
  Global	
  

                                                                            37	
  
                          Thanh	
  H.	
  D.	
  Nguyen	
  
                          (thanhnguyen@cs.queensu.ca)	
  
Anova	
  on	
  M3	
  




                        38	
  

More Related Content

Similar to Studying the impact of dependency network measures on software quality

IHC 2011 - Widgets Internship
IHC 2011 - Widgets InternshipIHC 2011 - Widgets Internship
IHC 2011 - Widgets Internship
Eduardo Oliveira
 
Dp and causal analysis guideline
Dp and causal analysis guidelineDp and causal analysis guideline
Dp and causal analysis guideline
M H Chandra
 
Predicting Defects using Network Analysis on Dependency Graphs
Predicting Defects using Network Analysis on Dependency GraphsPredicting Defects using Network Analysis on Dependency Graphs
Predicting Defects using Network Analysis on Dependency Graphs
Thomas Zimmermann
 
Business Value of Agile Methods: Using ROI and REal Options
Business Value of Agile Methods: Using ROI and REal OptionsBusiness Value of Agile Methods: Using ROI and REal Options
Business Value of Agile Methods: Using ROI and REal OptionsDavid Rico
 
A 3-Day Introduction for Sr. Engineers and Tech. Support Staff
A 3-Day Introduction for Sr. Engineers and Tech. Support StaffA 3-Day Introduction for Sr. Engineers and Tech. Support Staff
A 3-Day Introduction for Sr. Engineers and Tech. Support StaffDavid Rico
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyRoopa Nadkarni
 
Achieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyAchieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyIBM
 
Achieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyAchieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyIBM
 
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...David Rico
 
Competing in a service economy 20120913 v1
Competing in a service economy 20120913 v1Competing in a service economy 20120913 v1
Competing in a service economy 20120913 v1
ISSIP
 
Design Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDesign Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDVClub
 
Design verification--the-past-present-and-future
Design verification--the-past-present-and-futureDesign verification--the-past-present-and-future
Design verification--the-past-present-and-futureObsidian Software
 
Failure Reporting Webex Slides - March 9, 2010
Failure Reporting Webex Slides - March 9, 2010Failure Reporting Webex Slides - March 9, 2010
Failure Reporting Webex Slides - March 9, 2010
Ricky Smith CMRP, CMRT
 
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
OnTechnicalDebt
 
Test-Driven Development (TDD)
Test-Driven Development (TDD)Test-Driven Development (TDD)
Test-Driven Development (TDD)
Brian Rasmussen
 
Chattanooga sme oee down time presentation
Chattanooga sme oee down time presentationChattanooga sme oee down time presentation
Chattanooga sme oee down time presentation
James Mansfield
 
Implications of Change on Workplace Learning
Implications of Change on Workplace LearningImplications of Change on Workplace Learning
Implications of Change on Workplace LearningBill Stirling
 

Similar to Studying the impact of dependency network measures on software quality (20)

IHC 2011 - Widgets Internship
IHC 2011 - Widgets InternshipIHC 2011 - Widgets Internship
IHC 2011 - Widgets Internship
 
Dp and causal analysis guideline
Dp and causal analysis guidelineDp and causal analysis guideline
Dp and causal analysis guideline
 
Predicting Defects using Network Analysis on Dependency Graphs
Predicting Defects using Network Analysis on Dependency GraphsPredicting Defects using Network Analysis on Dependency Graphs
Predicting Defects using Network Analysis on Dependency Graphs
 
Business Value of Agile Methods: Using ROI and REal Options
Business Value of Agile Methods: Using ROI and REal OptionsBusiness Value of Agile Methods: Using ROI and REal Options
Business Value of Agile Methods: Using ROI and REal Options
 
A 3-Day Introduction for Sr. Engineers and Tech. Support Staff
A 3-Day Introduction for Sr. Engineers and Tech. Support StaffA 3-Day Introduction for Sr. Engineers and Tech. Support Staff
A 3-Day Introduction for Sr. Engineers and Tech. Support Staff
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin Nally
 
Achieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyAchieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nally
 
Achieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nallyAchieving agility at_scale-martin_nally
Achieving agility at_scale-martin_nally
 
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...
Lean & Agile Project Management: For Executives, Sr. Managers, & Key Decision...
 
Competing in a service economy 20120913 v1
Competing in a service economy 20120913 v1Competing in a service economy 20120913 v1
Competing in a service economy 20120913 v1
 
Design Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDesign Verification: The Past, Present and Futurere
Design Verification: The Past, Present and Futurere
 
Design verification--the-past-present-and-future
Design verification--the-past-present-and-futureDesign verification--the-past-present-and-future
Design verification--the-past-present-and-future
 
Failure Reporting Webex Slides - March 9, 2010
Failure Reporting Webex Slides - March 9, 2010Failure Reporting Webex Slides - March 9, 2010
Failure Reporting Webex Slides - March 9, 2010
 
Lte asia 2011 s niri
Lte asia 2011 s niriLte asia 2011 s niri
Lte asia 2011 s niri
 
Leuven
LeuvenLeuven
Leuven
 
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
Estimating the principal of Technical Debt - Dr. Bill Curtis - WTD '12
 
Test-Driven Development (TDD)
Test-Driven Development (TDD)Test-Driven Development (TDD)
Test-Driven Development (TDD)
 
Chattanooga sme oee down time presentation
Chattanooga sme oee down time presentationChattanooga sme oee down time presentation
Chattanooga sme oee down time presentation
 
ParticleVM
ParticleVMParticleVM
ParticleVM
 
Implications of Change on Workplace Learning
Implications of Change on Workplace LearningImplications of Change on Workplace Learning
Implications of Change on Workplace Learning
 

More from ICSM 2010

A tree kernel based approach for clone detection
A tree kernel based approach for clone detectionA tree kernel based approach for clone detection
A tree kernel based approach for clone detectionICSM 2010
 
Scalable Semantic Web-based Source Code Search Infrastructure
Scalable Semantic Web-based Source Code Search InfrastructureScalable Semantic Web-based Source Code Search Infrastructure
Scalable Semantic Web-based Source Code Search InfrastructureICSM 2010
 
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...ICSM 2010
 
Wiki dev nlp
Wiki dev nlpWiki dev nlp
Wiki dev nlpICSM 2010
 
iFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsiFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsICSM 2010
 
Using Clone Detection to Identify Bugs in Concurrent Software
Using Clone Detection to Identify Bugs in Concurrent SoftwareUsing Clone Detection to Identify Bugs in Concurrent Software
Using Clone Detection to Identify Bugs in Concurrent SoftwareICSM 2010
 
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...ICSM 2010
 
Automatically Repairing Test Cases for Evolving Method Declarations
Automatically Repairing Test Cases for Evolving Method DeclarationsAutomatically Repairing Test Cases for Evolving Method Declarations
Automatically Repairing Test Cases for Evolving Method DeclarationsICSM 2010
 
Automated Identification of Cross-browser Issues in Web Applications
Automated Identification of Cross-browser Issues in Web ApplicationsAutomated Identification of Cross-browser Issues in Web Applications
Automated Identification of Cross-browser Issues in Web ApplicationsICSM 2010
 
Reverse Engineering Object-Oriented Distributed Systems
Reverse Engineering Object-Oriented Distributed SystemsReverse Engineering Object-Oriented Distributed Systems
Reverse Engineering Object-Oriented Distributed SystemsICSM 2010
 
Software asset management
Software asset managementSoftware asset management
Software asset managementICSM 2010
 
Successfulresearch 100915022614-phpapp01
Successfulresearch 100915022614-phpapp01Successfulresearch 100915022614-phpapp01
Successfulresearch 100915022614-phpapp01ICSM 2010
 
Enabling multi tenancy(An Industrial Experience Report)
Enabling multi tenancy(An Industrial Experience Report)Enabling multi tenancy(An Industrial Experience Report)
Enabling multi tenancy(An Industrial Experience Report)ICSM 2010
 
Ponsini automatic slides
Ponsini automatic slidesPonsini automatic slides
Ponsini automatic slidesICSM 2010
 
Icsm2010 Announcement
Icsm2010 AnnouncementIcsm2010 Announcement
Icsm2010 AnnouncementICSM 2010
 

More from ICSM 2010 (15)

A tree kernel based approach for clone detection
A tree kernel based approach for clone detectionA tree kernel based approach for clone detection
A tree kernel based approach for clone detection
 
Scalable Semantic Web-based Source Code Search Infrastructure
Scalable Semantic Web-based Source Code Search InfrastructureScalable Semantic Web-based Source Code Search Infrastructure
Scalable Semantic Web-based Source Code Search Infrastructure
 
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...
2D and 3D Visualizations In Wikidev2.0 M. Fokaefs, D. Serrano, B. Tansey and ...
 
Wiki dev nlp
Wiki dev nlpWiki dev nlp
Wiki dev nlp
 
iFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature ImplementationsiFL: An Interactive Environment for Understanding Feature Implementations
iFL: An Interactive Environment for Understanding Feature Implementations
 
Using Clone Detection to Identify Bugs in Concurrent Software
Using Clone Detection to Identify Bugs in Concurrent SoftwareUsing Clone Detection to Identify Bugs in Concurrent Software
Using Clone Detection to Identify Bugs in Concurrent Software
 
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...
Physical and Conceptual Identifier Dispersion: Measures and Relation to Fault...
 
Automatically Repairing Test Cases for Evolving Method Declarations
Automatically Repairing Test Cases for Evolving Method DeclarationsAutomatically Repairing Test Cases for Evolving Method Declarations
Automatically Repairing Test Cases for Evolving Method Declarations
 
Automated Identification of Cross-browser Issues in Web Applications
Automated Identification of Cross-browser Issues in Web ApplicationsAutomated Identification of Cross-browser Issues in Web Applications
Automated Identification of Cross-browser Issues in Web Applications
 
Reverse Engineering Object-Oriented Distributed Systems
Reverse Engineering Object-Oriented Distributed SystemsReverse Engineering Object-Oriented Distributed Systems
Reverse Engineering Object-Oriented Distributed Systems
 
Software asset management
Software asset managementSoftware asset management
Software asset management
 
Successfulresearch 100915022614-phpapp01
Successfulresearch 100915022614-phpapp01Successfulresearch 100915022614-phpapp01
Successfulresearch 100915022614-phpapp01
 
Enabling multi tenancy(An Industrial Experience Report)
Enabling multi tenancy(An Industrial Experience Report)Enabling multi tenancy(An Industrial Experience Report)
Enabling multi tenancy(An Industrial Experience Report)
 
Ponsini automatic slides
Ponsini automatic slidesPonsini automatic slides
Ponsini automatic slides
 
Icsm2010 Announcement
Icsm2010 AnnouncementIcsm2010 Announcement
Icsm2010 Announcement
 

Recently uploaded

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 

Studying the impact of dependency network measures on software quality

  • 1. Studying  the  impact  of  dependency  network  measures     on  soIware  quality   Thanh  H.  D.  Nguyen,  Bram  Adams,  Ahmed  E.  Hassan   SAIL,  School  of  Compu?ng,  Queen’s  University,  Kingston,  Canada  
  • 2. Code  Quality     Problem:     Quality  improvement  resources  are  limited     Solu?on:     Bug  predic5on  iden5fies  defect-­‐prone  modules   2  
  • 3. Bug  predic?on  models   Bug   Predic5on   Model   High  Recall  -­‐>  We  won’t  miss  a  possible  bug   High  Precision  -­‐>  We  won’t  waste  effort   3  
  • 4. SoIware  is  more  than  just     size  and  complexity   Node" A   D   C   Local Neighborhood" B   F   Global Neighborhood" E   G   4  
  • 5. SoIware  is  more  than  just     size  and  complexity   Traditional Metrics Node" (MET)" Local Neighborhood" Social Network Measures! Global (SNA)" Neighborhood" 5  
  • 6. Bug   Predic5on   Model   Would  SNA  improve  performance?   6  
  • 7. Would  SNA  improve  performance?   7  
  • 8. Would  SNA  improve  performance?   8  
  • 9. Would  SNA  improve  performance?   9  
  • 10. Would  SNA  improve  performance?   10  
  • 12. Bug   Predic5on   Model   Would  SNA  improve  performance?   12  
  • 13. Bug   Predic5on   Model   Would  SNA  improve  performance?   13  
  • 14. +25%  for  Recall  and  Precision   14  
  • 16. Which  metrics  provide  the   improvement?   Node" 12  Metrics   Local 11  Metrics   Neighborhood" Global Neighborhood" 12  Metrics   Use  hierarchical  modeling  to  find   important  group  [Caltado  et  al.  TSE10]   16  
  • 17. Which  metrics  provide  the   improvement?   Node" 12  Metrics   7%   Local 11  Metrics   +2.7%   Neighborhood" Global Neighborhood" 12  Metrics   +0.3%   17  
  • 18. Which  metrics  provide  the   improvement?   Node" 12  Metrics   7%   Local 11  Metrics   +2.7%   Neighborhood" Global Neighborhood" 12  Metrics   +0.3%   Local  neighbours  have  most  of  the   important  improvement   18  
  • 19. Which  local  measures  have  the  most  impact?   19  
  • 25. Consider  your  neighbor  connec?ons   25  
  • 26. How  well  do  we  perform  in  prac?ce?   ✔ ✗ 26  
  • 27. Effort  Aware  Predic?on  Models   27  
  • 28. Comparing  Performance  Using  Effort   Aware  Curves   100 80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 ROI   0   0.125   0.045   20 Risk   0.78   0.56   0.34   0 0 20 40 60 80 100 % lines of code reviewed 28  
  • 29. Comparing  Performance  Using  Effort   Aware  Curves   100 80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 A   ROI   0   0.125   0.045   20 Risk   0.78   0.56   0.34   0 0 20 40 60 80 100 % lines of code reviewed 29  
  • 30. Comparing  Performance  Using  Effort   Aware  Curves   100 80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 ROI   0   0.125   0.045   20 B   Risk   0.78   0.56   0.34   0 0 20 40 60 80 100 % lines of code reviewed 30  
  • 31. Comparing  Performance  Using  Effort   Aware  Curves   100 80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 C   ROI   0   0.125   0.045   20 Risk   0.78   0.56   0.34   0 0 20 40 60 80 100 % lines of code reviewed 31  
  • 32. Is  this  a  good  predic?on?   100 80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 ROI   0   0.125   0.045   20 Risk   0.78   0.56   0.34   0 0 20 40 60 80 100 % lines of code reviewed 32  
  • 33. Beeer  predic?on  means  a  higher  curve   100 Good   80 File   A   B   C   % bugs caught #bug   0   1   2   60 LOC   48   8   44   40 ROI   0   0.125   0.045   Bad   20 Bad   0.78   0.56   0.34   Good   0.32   0.72   0.55   0 0 20 40 60 80 100 % lines of code reviewed 33  
  • 34. The  predic?on  model  helps     reduce  tes?ng  effort     100 Random   File   80 % bugs caught 60 File   40 Package   20 0 0 20 40 60 80 100 % lines of code reviewed 34  
  • 35. 35  
  • 36. Class  pred.  has  more  poten?al   36   Thanh  H.  D.  Nguyen   (thanhnguyen@cs.queensu.ca)  
  • 37. Deviance  explained   +2.7%" +0.3%" +1,9%" +1.1%" Bugginess  ~  Traditional  metrics  +  Local  +  Global   37   Thanh  H.  D.  Nguyen   (thanhnguyen@cs.queensu.ca)  
  • 38. Anova  on  M3   38