SlideShare una empresa de Scribd logo
1 de 36
Lund University - cs.lth.se/markus_borg/
Recommendation Systems for Issue
Management
MARKUS BORG, SOFTWARE ENGINEERING RESEARCH GROUP
Lund University - cs.lth.se/markus_borg/
• PhD student 2010-
• Software engineering
• Requirements-test alignment
• Member of SWELL
• Supervisor: Per Runeson
Markus Borg
Per Runeson
• MSc CS and Eng. 2007
• Developer, ABB (2007-2010)
• Compiler and editor development
• Safety-critical systems
• Embedded development
Lund University - cs.lth.se/markus_borg/
Agenda
• Background
– Bug report inflow in large projects
– Recommendation systems
• Overview of some ongoing bug research
– Duplicate detection
– Team assignment
– Effort prediction
– Change impact analysis
Lund University - cs.lth.se/markus_borg/
There Will Be Bugs!
Lund University - cs.lth.se/markus_borg/
Issue Reports as Batons in the
Development “Relay Race”
Release
Change Board
Project manager
Tester
Issue handover
Developer
Developer Tester
Developer
Architect
Analyst
Designer
Lund University - cs.lth.se/markus_borg/
Challenges in the Bug Overflow
• 10 000s of bug reports in large projects
– Continous inflow of bug reports
– Limited resources to deal with it
• Q1. Which issues do we already know about?
• Q2. Who should investigate the issue?
• Q3. How long time will it take to correct this bug?
• Q4. If we make a corrective change, what is the impact?
Lund University - cs.lth.se/markus_borg/
Recommendation System
• General definition
“a software application that aim to support users in
their decision-making while interacting with large
information spaces”
– Amazon, Netflix, RateBeer, Filmtipset...
• In software engineering
”a software application that provides information items
estimated to be valuable for a software engineering task
in a given context”
Lund University - cs.lth.se/markus_borg/
Two main approaches to recommendations
Bug
example
Lund University - cs.lth.se/markus_borg/
Q1. Which issues do we already
know about?
Duplicate Detection
Lund University - cs.lth.se/markus_borg/
Issue Duplicate Detection
Lund University - cs.lth.se/markus_borg/
Network Analysis of Bug Reports
Lund University - cs.lth.se/markus_borg/
Subgraph Analysis in Bug Networks
Bug star
One central bug report
pointing at several others
Dense ring
Most bug reports are
connected
Lund University - cs.lth.se/markus_borg/
Textual Similarity Analysis
1. Study natural
language content
2. Calculate overlap
3. Recommend
duplicates
Lund University - cs.lth.se/markus_borg/
Calculating Textual Similarity
Issue
reports
Represent
Calculate angles in
vector space
Lund University - cs.lth.se/markus_borg/
Reported Results
• Results typically reported as:
– ”% found among top 10 recommendations”
• Sony Ericsson 40%
• Firefox 60%, 90%
• Eclipse 40%, 70%
• Open Office 60%, 65%
• Mozilla Foundation 45%, 65%
• Android 60% (Jens?)
• Are these good results? Good question.
Lund University - cs.lth.se/markus_borg/
Q2. Who should investigate the
issue?
Team assignment
Lund University - cs.lth.se/markus_borg/
Bug Assignment
Bug
tossing!
Lund University - cs.lth.se/markus_borg/
Machine Learning to Find Patterns
• Bugs found in India late in testing phase are severe?
• Bugs reports containing term ”termination” are costly?
• Bugs reported on fridays with attached stack traces tend to
be deferred to later releases?
Lund University - cs.lth.se/markus_borg/
Automated Bug Assignment –
Supervised Machine Learning
Machine
learning
Train
Recommend team
Lund University - cs.lth.se/markus_borg/
How to Represent a Bug Report?
• Function
• Severity
• System Version
• Submit Date
• Submitter Location
etc.
• … And the text! Title and description.
Lund University - cs.lth.se/markus_borg/
Experimental Setup
Ericsson
Company A
Machine
learning
4 x
Pre-processing
& feature
selection
Lund University - cs.lth.se/markus_borg/
Results
• Prediction accuracy using state-of-the-art machine learning:
– Ericsson 30-70%
– Company A 30%
• At Ericsson
– In line with accuracy of human assignment
– Deploying tool in selected projects
• Textual features improve predictions, but training times
increase a lot!
– Working on finding a good balance
Lund University - cs.lth.se/markus_borg/
Q3. How long time will it take to
correct this bug?
Effort prediction
Lund University - cs.lth.se/markus_borg/
Bug Report Clustering
– Unsupervised Machine Learning
Automatically cluster
bug reports based on
natural language in
report
Lund University - cs.lth.se/markus_borg/
Prediction of Bug Resolution Time
1. A new bug is submitted
2. Put it in the right cluster
3. Predict its resolution time
Lund University - cs.lth.se/markus_borg/
Results
• Clustered bug reports based on textual content
– Android
– Eclipse
– Company A
• Average resolution times in bug clusters are different
– Statistically significant
• Is it a good way to predict resolution times?
– No, at least not yet…
Lund University - cs.lth.se/markus_borg/
Q4. If we make a corrective
change, what is the impact?
Change impact analysis
Lund University - cs.lth.se/markus_borg/
Recommendations for Impact Analysis
Mandated by safety standards!
Reqs.
Tests
Lund University - cs.lth.se/markus_borg/
Networks of Impacted Artifacts
Data mining in archive of previous
impact analysis reports
Lund University - cs.lth.se/markus_borg/
Identification of Key Artifacts
Lund University - cs.lth.se/markus_borg/
Recommend Possible Impact
1. Textual similarity analysis
2. Follow links
in network
Lund University - cs.lth.se/markus_borg/
Recommend Possible Impact
3. Rank recommendations
– Network statistics
– Textual similarity
Lund University - cs.lth.se/markus_borg/
Lund University - cs.lth.se/markus_borg/
Results
• Experiments in a laboratory setting
– 30% of previous impact among top 5 recommendations
– 40% among top 10 recommendations
• Prototype evaluation in industrial setting ongoing...
Lund University - cs.lth.se/markus_borg/
Summary
Lund University - cs.lth.se/markus_borg/
Summary
• Issue inflow in large projects can be daunting
• On the other hand, issue reports contain
important information!
• With the right tools, the information overflow
can be tamed to recommendations!

Más contenido relacionado

Similar a Recommendation Systems for Issue Management

Argument Papers (5-7 pages in length)1. Do schools perpe.docx
Argument Papers (5-7 pages in length)1. Do schools perpe.docxArgument Papers (5-7 pages in length)1. Do schools perpe.docx
Argument Papers (5-7 pages in length)1. Do schools perpe.docx
fredharris32
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global Analysis
Editor IJMTER
 
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
Radu Marinescu
 
Sangram Nayak_22Jan15
Sangram Nayak_22Jan15Sangram Nayak_22Jan15
Sangram Nayak_22Jan15
Sangram Nayak
 

Similar a Recommendation Systems for Issue Management (20)

Supporting Change Impact Analysis Using a Recommendation System - An Industri...
Supporting Change Impact Analysis Using a Recommendation System - An Industri...Supporting Change Impact Analysis Using a Recommendation System - An Industri...
Supporting Change Impact Analysis Using a Recommendation System - An Industri...
 
Automation in the Bug Flow - Machine Learning for Triaging and Tracing
Automation in the Bug Flow - Machine Learning for Triaging and TracingAutomation in the Bug Flow - Machine Learning for Triaging and Tracing
Automation in the Bug Flow - Machine Learning for Triaging and Tracing
 
Argument Papers (5-7 pages in length)1. Do schools perpe.docx
Argument Papers (5-7 pages in length)1. Do schools perpe.docxArgument Papers (5-7 pages in length)1. Do schools perpe.docx
Argument Papers (5-7 pages in length)1. Do schools perpe.docx
 
Enhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code ForensicsEnhancing Developer Productivity with Code Forensics
Enhancing Developer Productivity with Code Forensics
 
CV-LukaGligic
CV-LukaGligicCV-LukaGligic
CV-LukaGligic
 
Software Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global AnalysisSoftware Defect Prediction Using Local and Global Analysis
Software Defect Prediction Using Local and Global Analysis
 
Ekta Gupta - CV
Ekta Gupta - CVEkta Gupta - CV
Ekta Gupta - CV
 
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
 
When do software issues get reported in large open source software
When do software issues get reported in large open source softwareWhen do software issues get reported in large open source software
When do software issues get reported in large open source software
 
When do software issues get reported in large open source software - Rakesh Rana
When do software issues get reported in large open source software - Rakesh RanaWhen do software issues get reported in large open source software - Rakesh Rana
When do software issues get reported in large open source software - Rakesh Rana
 
Software Engineering - Basics
Software Engineering - BasicsSoftware Engineering - Basics
Software Engineering - Basics
 
2014 toronto-torbug
2014 toronto-torbug2014 toronto-torbug
2014 toronto-torbug
 
Resume
Resume Resume
Resume
 
lecture 1-5.pdf
lecture 1-5.pdflecture 1-5.pdf
lecture 1-5.pdf
 
Sangram Nayak_22Jan15
Sangram Nayak_22Jan15Sangram Nayak_22Jan15
Sangram Nayak_22Jan15
 
Believe it or not - keynote CAS 2015
Believe it or not - keynote CAS 2015Believe it or not - keynote CAS 2015
Believe it or not - keynote CAS 2015
 
Can we induce change with what we measure?
Can we induce change with what we measure?Can we induce change with what we measure?
Can we induce change with what we measure?
 
End note web slides
End note web slidesEnd note web slides
End note web slides
 
Prototyping for knowledge based entrepreneurship
Prototyping for knowledge based entrepreneurshipPrototyping for knowledge based entrepreneurship
Prototyping for knowledge based entrepreneurship
 
Software systems engineering PRINCIPLES
Software systems engineering PRINCIPLESSoftware systems engineering PRINCIPLES
Software systems engineering PRINCIPLES
 

Más de Markus Borg

Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
Markus Borg
 

Más de Markus Borg (16)

Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...
Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...
Agility in Software 2.0 - Notebook Interfaces and MLOps with Buttresses and R...
 
Quality Assurance Of Generative Dialog Models in an evolving Conversationa...
Quality Assurance  Of  Generative Dialog Models in an evolving  Conversationa...Quality Assurance  Of  Generative Dialog Models in an evolving  Conversationa...
Quality Assurance Of Generative Dialog Models in an evolving Conversationa...
 
Test Automation with Grad-CAM Heatmaps - A Future Pipe Segment in MLOps for V...
Test Automation with Grad-CAM Heatmaps - A Future Pipe Segment in MLOps for V...Test Automation with Grad-CAM Heatmaps - A Future Pipe Segment in MLOps for V...
Test Automation with Grad-CAM Heatmaps - A Future Pipe Segment in MLOps for V...
 
Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
Digital Twins Are Not Monozygotic - Cross-Replicating ADAS Testing in Two Ind...
 
Illuminating a Blind Spot in Digitalization - Software Development in Sweden’...
Illuminating a Blind Spot in Digitalization - Software Development in Sweden’...Illuminating a Blind Spot in Digitalization - Software Development in Sweden’...
Illuminating a Blind Spot in Digitalization - Software Development in Sweden’...
 
Trained, Not Coded - Still Safe?
Trained, Not Coded - Still Safe?Trained, Not Coded - Still Safe?
Trained, Not Coded - Still Safe?
 
SZZ Unleashed: An Open Implementation of the SZZ Algorithm
SZZ Unleashed:  An Open Implementation of the SZZ AlgorithmSZZ Unleashed:  An Open Implementation of the SZZ Algorithm
SZZ Unleashed: An Open Implementation of the SZZ Algorithm
 
Explainability First! Cousteauing the Depths of Neural Networks
Explainability First! Cousteauing the Depths of Neural NetworksExplainability First! Cousteauing the Depths of Neural Networks
Explainability First! Cousteauing the Depths of Neural Networks
 
Test Automation Research... Is That Really Needed in 2018?
Test Automation Research... Is That Really Needed in 2018?Test Automation Research... Is That Really Needed in 2018?
Test Automation Research... Is That Really Needed in 2018?
 
Component Source Origin Decisions in Practice - A Survey of Decision Making i...
Component Source Origin Decisions in Practice - A Survey of Decision Making i...Component Source Origin Decisions in Practice - A Survey of Decision Making i...
Component Source Origin Decisions in Practice - A Survey of Decision Making i...
 
Enabling Visual Analytics with Unity - Exploring Regression Test Results in A...
Enabling Visual Analytics with Unity - Exploring Regression Test Results in A...Enabling Visual Analytics with Unity - Exploring Regression Test Results in A...
Enabling Visual Analytics with Unity - Exploring Regression Test Results in A...
 
Testing Quality Requirements of a System-of-Systems in the Public Sector - Ch...
Testing Quality Requirements of a System-of-Systems in the Public Sector - Ch...Testing Quality Requirements of a System-of-Systems in the Public Sector - Ch...
Testing Quality Requirements of a System-of-Systems in the Public Sector - Ch...
 
Comparing Cousins – A Harmonized Analysis of Racket Sport Set Scores using Ra...
Comparing Cousins – A Harmonized Analysis of Racket Sport Set Scores using Ra...Comparing Cousins – A Harmonized Analysis of Racket Sport Set Scores using Ra...
Comparing Cousins – A Harmonized Analysis of Racket Sport Set Scores using Ra...
 
Revisiting the Challenges in Aligning RE and V&V: Experiences from the Public...
Revisiting the Challenges in Aligning RE and V&V: Experiences from the Public...Revisiting the Challenges in Aligning RE and V&V: Experiences from the Public...
Revisiting the Challenges in Aligning RE and V&V: Experiences from the Public...
 
Enabling Traceability Reuse for Impact Analyses - Toward a Recommendation Sys...
Enabling Traceability Reuse for Impact Analyses - Toward a Recommendation Sys...Enabling Traceability Reuse for Impact Analyses - Toward a Recommendation Sys...
Enabling Traceability Reuse for Impact Analyses - Toward a Recommendation Sys...
 
Analyzing networks of issue reports
Analyzing networks of issue reportsAnalyzing networks of issue reports
Analyzing networks of issue reports
 

Último

Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Sérgio Sacani
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Sérgio Sacani
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
RizalinePalanog2
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Sérgio Sacani
 

Último (20)

All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
All-domain Anomaly Resolution Office U.S. Department of Defense (U) Case: “Eg...
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
TEST BANK For Radiologic Science for Technologists, 12th Edition by Stewart C...
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls AgencyHire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
Hire 💕 9907093804 Hooghly Call Girls Service Call Girls Agency
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCRStunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
Stunning ➥8448380779▻ Call Girls In Panchshil Enclave Delhi NCR
 
VIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C PVIRUSES structure and classification ppt by Dr.Prince C P
VIRUSES structure and classification ppt by Dr.Prince C P
 
Chemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdfChemistry 4th semester series (krishna).pdf
Chemistry 4th semester series (krishna).pdf
 
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
PossibleEoarcheanRecordsoftheGeomagneticFieldPreservedintheIsuaSupracrustalBe...
 
Animal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptxAnimal Communication- Auditory and Visual.pptx
Animal Communication- Auditory and Visual.pptx
 
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43bNightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
Nightside clouds and disequilibrium chemistry on the hot Jupiter WASP-43b
 
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLKochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
 
Botany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questionsBotany krishna series 2nd semester Only Mcq type questions
Botany krishna series 2nd semester Only Mcq type questions
 
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
Discovery of an Accretion Streamer and a Slow Wide-angle Outflow around FUOri...
 
Zoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdfZoology 4th semester series (krishna).pdf
Zoology 4th semester series (krishna).pdf
 
Biological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdfBiological Classification BioHack (3).pdf
Biological Classification BioHack (3).pdf
 
Botany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdfBotany 4th semester series (krishna).pdf
Botany 4th semester series (krishna).pdf
 

Recommendation Systems for Issue Management

  • 1. Lund University - cs.lth.se/markus_borg/ Recommendation Systems for Issue Management MARKUS BORG, SOFTWARE ENGINEERING RESEARCH GROUP
  • 2. Lund University - cs.lth.se/markus_borg/ • PhD student 2010- • Software engineering • Requirements-test alignment • Member of SWELL • Supervisor: Per Runeson Markus Borg Per Runeson • MSc CS and Eng. 2007 • Developer, ABB (2007-2010) • Compiler and editor development • Safety-critical systems • Embedded development
  • 3. Lund University - cs.lth.se/markus_borg/ Agenda • Background – Bug report inflow in large projects – Recommendation systems • Overview of some ongoing bug research – Duplicate detection – Team assignment – Effort prediction – Change impact analysis
  • 4. Lund University - cs.lth.se/markus_borg/ There Will Be Bugs!
  • 5. Lund University - cs.lth.se/markus_borg/ Issue Reports as Batons in the Development “Relay Race” Release Change Board Project manager Tester Issue handover Developer Developer Tester Developer Architect Analyst Designer
  • 6. Lund University - cs.lth.se/markus_borg/ Challenges in the Bug Overflow • 10 000s of bug reports in large projects – Continous inflow of bug reports – Limited resources to deal with it • Q1. Which issues do we already know about? • Q2. Who should investigate the issue? • Q3. How long time will it take to correct this bug? • Q4. If we make a corrective change, what is the impact?
  • 7. Lund University - cs.lth.se/markus_borg/ Recommendation System • General definition “a software application that aim to support users in their decision-making while interacting with large information spaces” – Amazon, Netflix, RateBeer, Filmtipset... • In software engineering ”a software application that provides information items estimated to be valuable for a software engineering task in a given context”
  • 8. Lund University - cs.lth.se/markus_borg/ Two main approaches to recommendations Bug example
  • 9. Lund University - cs.lth.se/markus_borg/ Q1. Which issues do we already know about? Duplicate Detection
  • 10. Lund University - cs.lth.se/markus_borg/ Issue Duplicate Detection
  • 11. Lund University - cs.lth.se/markus_borg/ Network Analysis of Bug Reports
  • 12. Lund University - cs.lth.se/markus_borg/ Subgraph Analysis in Bug Networks Bug star One central bug report pointing at several others Dense ring Most bug reports are connected
  • 13. Lund University - cs.lth.se/markus_borg/ Textual Similarity Analysis 1. Study natural language content 2. Calculate overlap 3. Recommend duplicates
  • 14. Lund University - cs.lth.se/markus_borg/ Calculating Textual Similarity Issue reports Represent Calculate angles in vector space
  • 15. Lund University - cs.lth.se/markus_borg/ Reported Results • Results typically reported as: – ”% found among top 10 recommendations” • Sony Ericsson 40% • Firefox 60%, 90% • Eclipse 40%, 70% • Open Office 60%, 65% • Mozilla Foundation 45%, 65% • Android 60% (Jens?) • Are these good results? Good question.
  • 16. Lund University - cs.lth.se/markus_borg/ Q2. Who should investigate the issue? Team assignment
  • 17. Lund University - cs.lth.se/markus_borg/ Bug Assignment Bug tossing!
  • 18. Lund University - cs.lth.se/markus_borg/ Machine Learning to Find Patterns • Bugs found in India late in testing phase are severe? • Bugs reports containing term ”termination” are costly? • Bugs reported on fridays with attached stack traces tend to be deferred to later releases?
  • 19. Lund University - cs.lth.se/markus_borg/ Automated Bug Assignment – Supervised Machine Learning Machine learning Train Recommend team
  • 20. Lund University - cs.lth.se/markus_borg/ How to Represent a Bug Report? • Function • Severity • System Version • Submit Date • Submitter Location etc. • … And the text! Title and description.
  • 21. Lund University - cs.lth.se/markus_borg/ Experimental Setup Ericsson Company A Machine learning 4 x Pre-processing & feature selection
  • 22. Lund University - cs.lth.se/markus_borg/ Results • Prediction accuracy using state-of-the-art machine learning: – Ericsson 30-70% – Company A 30% • At Ericsson – In line with accuracy of human assignment – Deploying tool in selected projects • Textual features improve predictions, but training times increase a lot! – Working on finding a good balance
  • 23. Lund University - cs.lth.se/markus_borg/ Q3. How long time will it take to correct this bug? Effort prediction
  • 24. Lund University - cs.lth.se/markus_borg/ Bug Report Clustering – Unsupervised Machine Learning Automatically cluster bug reports based on natural language in report
  • 25. Lund University - cs.lth.se/markus_borg/ Prediction of Bug Resolution Time 1. A new bug is submitted 2. Put it in the right cluster 3. Predict its resolution time
  • 26. Lund University - cs.lth.se/markus_borg/ Results • Clustered bug reports based on textual content – Android – Eclipse – Company A • Average resolution times in bug clusters are different – Statistically significant • Is it a good way to predict resolution times? – No, at least not yet…
  • 27. Lund University - cs.lth.se/markus_borg/ Q4. If we make a corrective change, what is the impact? Change impact analysis
  • 28. Lund University - cs.lth.se/markus_borg/ Recommendations for Impact Analysis Mandated by safety standards! Reqs. Tests
  • 29. Lund University - cs.lth.se/markus_borg/ Networks of Impacted Artifacts Data mining in archive of previous impact analysis reports
  • 30. Lund University - cs.lth.se/markus_borg/ Identification of Key Artifacts
  • 31. Lund University - cs.lth.se/markus_borg/ Recommend Possible Impact 1. Textual similarity analysis 2. Follow links in network
  • 32. Lund University - cs.lth.se/markus_borg/ Recommend Possible Impact 3. Rank recommendations – Network statistics – Textual similarity
  • 33. Lund University - cs.lth.se/markus_borg/
  • 34. Lund University - cs.lth.se/markus_borg/ Results • Experiments in a laboratory setting – 30% of previous impact among top 5 recommendations – 40% among top 10 recommendations • Prototype evaluation in industrial setting ongoing...
  • 35. Lund University - cs.lth.se/markus_borg/ Summary
  • 36. Lund University - cs.lth.se/markus_borg/ Summary • Issue inflow in large projects can be daunting • On the other hand, issue reports contain important information! • With the right tools, the information overflow can be tamed to recommendations!

Notas del editor

  1. Knowledge workers spend too much time finding infoFindability definition: “the degree to which a system or environment supports navigation and retrieval”Connection to alignment
  2. Issue reports as information carriers.
  3. Vi vet att buggar hänger ihop. Det här är nätverk av buggar i Android.
  4. Before changes to production codeIn the safety audits to strengthen the safety case
  5. Before changes to production codeIn the safety audits to strengthen the safety case
  6. Before changes to production codeIn the safety audits to strengthen the safety case
  7. Before changes to production codeIn the safety audits to strengthen the safety case