SlideShare a Scribd company logo
1 of 24
Analytics for
                          Software Development
                          Thomas Zimmermann
                          Microsoft Research

                          ICSM 2010, Timisoara

                          http://thomas-zimmermann.com
                          Twitter: @tomzimmermann




© Microsoft Corporation
Researcher
                                                             (since 2008)
                                         Assistant
                                         Professor
                                        (2007-2008)                   Microsoft
                                                                      Research
                                                University
                          PhD                   of Calgary
                                Saarland
                                University
                                                Mining                   Empirical
                University                     Software                  Software
                of Passau                     Repositories              Engineering




© Microsoft Corporation
Mining
                           Software
                          Repositories


                                         Software
                                         Analytics
                           Empirical
                           Software
                          Engineering




© Microsoft Corporation
Mining
                           Software
                          Repositories

                                           Software
                                         Development
                                           Analytics
                           Empirical
                           Software
                          Engineering




© Microsoft Corporation
Analytics
                           “Use of analysis, data,
                           and systematic reasoning
                           to make decisions”
                           Financial services
                           Retail
                           Manufacturing
                           Health care
                           Energy
                           And more…


© Microsoft Corporation
Analytics
                              Past            Present                  Future

                             What              What is               What will
  Information              happened?       happening now?            happen?
                            (Reporting)        (Alerts)             (Extrapolation)


                                                                   What’s the
                          How and why      What’s the next
                                                                 best/worst that
       Insight            did it happen?    best action?
                                                                  can happen?
                            (Modeling)     (Recommendation)
                                                                      (Prediction)

                                             From Davenport et al. “Analytics at Work”.


© Microsoft Corporation
Web analytics




© Microsoft Corporation
Mining
                           Software
                          Repositories

                                           Software
                                         Development
                                           Analytics
                           Empirical
                           Software
                          Engineering




© Microsoft Corporation
Understanding data is hard!
                                   The peak at
                                   A is correct!    So
                                   Why is the
                                    peak at B?     what?
                              B
Researcher                A
                                                   Developer




© Microsoft Corporation
Each project is different!
                                                       Has to learn about
        Knows how to                                   analysis to understand
        analyze data                                   and act on results

Researcher                 Makes assumptions   Knows project
                           about project       very well            Developer




© Microsoft Corporation
Software development analyst

                            Knows enough
                            about data analysis


                                    Knows enough
                                    about project to
                                    make the right
                                    assumptions




© Microsoft Corporation
Stakeholders have different needs
Researcher                Developer   Tester   Dev Lead   Test Lead   Manager




© Microsoft Corporation
Stakeholders have different needs


Researcher                Developer   Tester   Dev Lead   Test Lead   Manager




© Microsoft Corporation
A single tool is not enough

                            Surveys


                                      Qualitative data
         Measurements

                                                  Benchmarking




© Microsoft Corporation
Make data actionable and accessible




© Microsoft Corporation
#1: Data collection

                               Data focused




       Integration
                              Scenario focused




© Microsoft Corporation
#2: Data quality




© Microsoft Corporation
#3: Privacy




© Microsoft Corporation
#4: Understand user needs




© Microsoft Corporation
#4: Understand user needs




                                 Developers: well studied
                                  (ICSM: 26 papers)




© Microsoft Corporation
#4: Understand user needs

                          Managers: not many studies
                           (ICSM: 7 papers)




                                      Developers: well studied
                                       (ICSM: 26 papers)




© Microsoft Corporation
#4: Understand user needs

                          Managers: not many studies
                           (ICSM: 7 papers)



                                Communication: not many studies
                                 (ICSM: 5 papers)



                                      Developers: well studied
                                       (ICSM: 26 papers)




© Microsoft Corporation
#5: User experience




© Microsoft Corporation
Make data actionable and accessible

                            Data collection

Data quality                                        Privacy
                          Education
          Understand
          user needs

   User experience
                                        http://msrconf.org
© Microsoft Corporation

More Related Content

What's hot

Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software design
Tech_MX
 
Operating system services 9
Operating system services 9Operating system services 9
Operating system services 9
myrajendra
 
Tutorial on Parallel Computing and Message Passing Model - C1
Tutorial on Parallel Computing and Message Passing Model - C1Tutorial on Parallel Computing and Message Passing Model - C1
Tutorial on Parallel Computing and Message Passing Model - C1
Marcirio Chaves
 
Operating system concepts (notes)
Operating system concepts (notes)Operating system concepts (notes)
Operating system concepts (notes)
Sohaib Danish
 

What's hot (20)

software engineering
software engineeringsoftware engineering
software engineering
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
 
Cpu scheduling in operating System.
Cpu scheduling in operating System.Cpu scheduling in operating System.
Cpu scheduling in operating System.
 
Parallel processing
Parallel processingParallel processing
Parallel processing
 
Software engineering principles in system software design
Software engineering principles in system software designSoftware engineering principles in system software design
Software engineering principles in system software design
 
Operating system
Operating systemOperating system
Operating system
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Assembly Language
Assembly LanguageAssembly Language
Assembly Language
 
Operating system services 9
Operating system services 9Operating system services 9
Operating system services 9
 
Parallel processing
Parallel processingParallel processing
Parallel processing
 
CPU Scheduling in OS Presentation
CPU Scheduling in OS  PresentationCPU Scheduling in OS  Presentation
CPU Scheduling in OS Presentation
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process Improvement
 
Tutorial on Parallel Computing and Message Passing Model - C1
Tutorial on Parallel Computing and Message Passing Model - C1Tutorial on Parallel Computing and Message Passing Model - C1
Tutorial on Parallel Computing and Message Passing Model - C1
 
Monitors
MonitorsMonitors
Monitors
 
Introduction to Compiler design
Introduction to Compiler design Introduction to Compiler design
Introduction to Compiler design
 
Operating system concepts (notes)
Operating system concepts (notes)Operating system concepts (notes)
Operating system concepts (notes)
 
File System Implementation - Part1
File System Implementation - Part1File System Implementation - Part1
File System Implementation - Part1
 
Uncertainty in AI
Uncertainty in AIUncertainty in AI
Uncertainty in AI
 
Parallel Computing
Parallel ComputingParallel Computing
Parallel Computing
 
Requirements prioritization
Requirements prioritizationRequirements prioritization
Requirements prioritization
 

Similar to Analytics for software development

Information Needs for Software Development Analytics
Information Needs for Software Development AnalyticsInformation Needs for Software Development Analytics
Information Needs for Software Development Analytics
Ray Buse
 
10 steps to becoming a professional software engineer
10 steps to becoming a professional software engineer10 steps to becoming a professional software engineer
10 steps to becoming a professional software engineer
Jimmy Sorensen
 
Codestrong 2012 breakout session leveraging titanium as part of your mobile...
Codestrong 2012 breakout session   leveraging titanium as part of your mobile...Codestrong 2012 breakout session   leveraging titanium as part of your mobile...
Codestrong 2012 breakout session leveraging titanium as part of your mobile...
Axway Appcelerator
 
Dataiku r users group v2
Dataiku   r users group v2Dataiku   r users group v2
Dataiku r users group v2
Cdiscount
 

Similar to Analytics for software development (20)

Information Needs for Software Development Analytics
Information Needs for Software Development AnalyticsInformation Needs for Software Development Analytics
Information Needs for Software Development Analytics
 
Empirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft ResearchEmpirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft Research
 
Evaluating Big Data Predictive Analytics Platforms
Evaluating Big Data Predictive Analytics PlatformsEvaluating Big Data Predictive Analytics Platforms
Evaluating Big Data Predictive Analytics Platforms
 
Because Technology Came 2nd
Because Technology Came 2ndBecause Technology Came 2nd
Because Technology Came 2nd
 
The New Normal: Predictive Power on the Front Lines
The New Normal: Predictive Power on the Front LinesThe New Normal: Predictive Power on the Front Lines
The New Normal: Predictive Power on the Front Lines
 
Agile for Startups
Agile for StartupsAgile for Startups
Agile for Startups
 
SC18 DevOps Short Introduction
SC18 DevOps Short IntroductionSC18 DevOps Short Introduction
SC18 DevOps Short Introduction
 
I Am Knowledge Worker 2.0
I Am Knowledge Worker 2.0I Am Knowledge Worker 2.0
I Am Knowledge Worker 2.0
 
Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]Oracle Fusion applications 101 [2010 OAUG Collaborate]
Oracle Fusion applications 101 [2010 OAUG Collaborate]
 
Webinar: Business Intelligence From The Inside Out
Webinar: Business Intelligence From The Inside OutWebinar: Business Intelligence From The Inside Out
Webinar: Business Intelligence From The Inside Out
 
10 steps to becoming a professional software engineer
10 steps to becoming a professional software engineer10 steps to becoming a professional software engineer
10 steps to becoming a professional software engineer
 
Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)
 
Make Better Decisions With Your Data 20080916
Make Better Decisions With Your Data 20080916Make Better Decisions With Your Data 20080916
Make Better Decisions With Your Data 20080916
 
Codestrong 2012 breakout session leveraging titanium as part of your mobile...
Codestrong 2012 breakout session   leveraging titanium as part of your mobile...Codestrong 2012 breakout session   leveraging titanium as part of your mobile...
Codestrong 2012 breakout session leveraging titanium as part of your mobile...
 
Dbydx profile
Dbydx profileDbydx profile
Dbydx profile
 
Hacking Marketing By Scott Brinker
Hacking Marketing By Scott BrinkerHacking Marketing By Scott Brinker
Hacking Marketing By Scott Brinker
 
Empowering the Business with Agile Analytics
Empowering the Business with Agile AnalyticsEmpowering the Business with Agile Analytics
Empowering the Business with Agile Analytics
 
Dataiku r users group v2
Dataiku   r users group v2Dataiku   r users group v2
Dataiku r users group v2
 
[En] Spotter Solutions and Applications 2013
[En] Spotter Solutions and Applications 2013[En] Spotter Solutions and Applications 2013
[En] Spotter Solutions and Applications 2013
 
Managing Connections to Maximize Innovation
Managing Connections to Maximize InnovationManaging Connections to Maximize Innovation
Managing Connections to Maximize Innovation
 

More from Thomas Zimmermann

More from Thomas Zimmermann (20)

Software Analytics = Sharing Information
Software Analytics = Sharing InformationSoftware Analytics = Sharing Information
Software Analytics = Sharing Information
 
MSR 2013 Preview
MSR 2013 PreviewMSR 2013 Preview
MSR 2013 Preview
 
Predicting Method Crashes with Bytecode Operations
Predicting Method Crashes with Bytecode OperationsPredicting Method Crashes with Bytecode Operations
Predicting Method Crashes with Bytecode Operations
 
Analytics for smarter software development
Analytics for smarter software development Analytics for smarter software development
Analytics for smarter software development
 
Characterizing and Predicting Which Bugs Get Reopened
Characterizing and Predicting Which Bugs Get ReopenedCharacterizing and Predicting Which Bugs Get Reopened
Characterizing and Predicting Which Bugs Get Reopened
 
Klingon Countdown Timer
Klingon Countdown TimerKlingon Countdown Timer
Klingon Countdown Timer
 
Data driven games user research
Data driven games user researchData driven games user research
Data driven games user research
 
Not my bug! Reasons for software bug report reassignments
Not my bug! Reasons for software bug report reassignmentsNot my bug! Reasons for software bug report reassignments
Not my bug! Reasons for software bug report reassignments
 
Security trend analysis with CVE topic models
Security trend analysis with CVE topic modelsSecurity trend analysis with CVE topic models
Security trend analysis with CVE topic models
 
Characterizing and predicting which bugs get fixed
Characterizing and predicting which bugs get fixedCharacterizing and predicting which bugs get fixed
Characterizing and predicting which bugs get fixed
 
Changes and Bugs: Mining and Predicting Development Activities
Changes and Bugs: Mining and Predicting Development ActivitiesChanges and Bugs: Mining and Predicting Development Activities
Changes and Bugs: Mining and Predicting Development Activities
 
Cross-project defect prediction
Cross-project defect predictionCross-project defect prediction
Cross-project defect prediction
 
Changes and Bugs: Mining and Predicting Development Activities
Changes and Bugs: Mining and Predicting Development ActivitiesChanges and Bugs: Mining and Predicting Development Activities
Changes and Bugs: Mining and Predicting Development Activities
 
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
 
Quality of Bug Reports in Open Source
Quality of Bug Reports in Open SourceQuality of Bug Reports in Open Source
Quality of Bug Reports in Open Source
 
Meet Tom and his Fish
Meet Tom and his FishMeet Tom and his Fish
Meet Tom and his Fish
 
Predicting Subsystem Defects using Dependency Graph Complexities
Predicting Subsystem Defects using Dependency Graph Complexities Predicting Subsystem Defects using Dependency Graph Complexities
Predicting Subsystem Defects using Dependency Graph Complexities
 
Got Myth? Myths in Software Engineering
Got Myth? Myths in Software EngineeringGot Myth? Myths in Software Engineering
Got Myth? Myths in Software Engineering
 
Mining Workspace Updates in CVS
Mining Workspace Updates in CVSMining Workspace Updates in CVS
Mining Workspace Updates in CVS
 
Mining Software Archives to Support Software Development
Mining Software Archives to Support Software DevelopmentMining Software Archives to Support Software Development
Mining Software Archives to Support Software Development
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Analytics for software development

  • 1. Analytics for Software Development Thomas Zimmermann Microsoft Research ICSM 2010, Timisoara http://thomas-zimmermann.com Twitter: @tomzimmermann © Microsoft Corporation
  • 2. Researcher (since 2008) Assistant Professor (2007-2008) Microsoft Research University PhD of Calgary Saarland University Mining Empirical University Software Software of Passau Repositories Engineering © Microsoft Corporation
  • 3. Mining Software Repositories Software Analytics Empirical Software Engineering © Microsoft Corporation
  • 4. Mining Software Repositories Software Development Analytics Empirical Software Engineering © Microsoft Corporation
  • 5. Analytics “Use of analysis, data, and systematic reasoning to make decisions” Financial services Retail Manufacturing Health care Energy And more… © Microsoft Corporation
  • 6. Analytics Past Present Future What What is What will Information happened? happening now? happen? (Reporting) (Alerts) (Extrapolation) What’s the How and why What’s the next best/worst that Insight did it happen? best action? can happen? (Modeling) (Recommendation) (Prediction) From Davenport et al. “Analytics at Work”. © Microsoft Corporation
  • 8. Mining Software Repositories Software Development Analytics Empirical Software Engineering © Microsoft Corporation
  • 9. Understanding data is hard! The peak at A is correct! So Why is the peak at B? what? B Researcher A Developer © Microsoft Corporation
  • 10. Each project is different! Has to learn about Knows how to analysis to understand analyze data and act on results Researcher Makes assumptions Knows project about project very well Developer © Microsoft Corporation
  • 11. Software development analyst Knows enough about data analysis Knows enough about project to make the right assumptions © Microsoft Corporation
  • 12. Stakeholders have different needs Researcher Developer Tester Dev Lead Test Lead Manager © Microsoft Corporation
  • 13. Stakeholders have different needs Researcher Developer Tester Dev Lead Test Lead Manager © Microsoft Corporation
  • 14. A single tool is not enough Surveys Qualitative data Measurements Benchmarking © Microsoft Corporation
  • 15. Make data actionable and accessible © Microsoft Corporation
  • 16. #1: Data collection Data focused Integration Scenario focused © Microsoft Corporation
  • 17. #2: Data quality © Microsoft Corporation
  • 19. #4: Understand user needs © Microsoft Corporation
  • 20. #4: Understand user needs Developers: well studied (ICSM: 26 papers) © Microsoft Corporation
  • 21. #4: Understand user needs Managers: not many studies (ICSM: 7 papers) Developers: well studied (ICSM: 26 papers) © Microsoft Corporation
  • 22. #4: Understand user needs Managers: not many studies (ICSM: 7 papers) Communication: not many studies (ICSM: 5 papers) Developers: well studied (ICSM: 26 papers) © Microsoft Corporation
  • 23. #5: User experience © Microsoft Corporation
  • 24. Make data actionable and accessible Data collection Data quality Privacy Education Understand user needs User experience http://msrconf.org © Microsoft Corporation