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

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
  • 7.
  • 8.
    Mining Software Repositories Software Development Analytics Empirical Software Engineering © Microsoft Corporation
  • 9.
    Understanding data ishard! The peak at A is correct! So Why is the peak at B? what? B Researcher A Developer © Microsoft Corporation
  • 10.
    Each project isdifferent! 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 differentneeds Researcher Developer Tester Dev Lead Test Lead Manager © Microsoft Corporation
  • 13.
    Stakeholders have differentneeds Researcher Developer Tester Dev Lead Test Lead Manager © Microsoft Corporation
  • 14.
    A single toolis not enough Surveys Qualitative data Measurements Benchmarking © Microsoft Corporation
  • 15.
    Make data actionableand accessible © Microsoft Corporation
  • 16.
    #1: Data collection Data focused Integration Scenario focused © Microsoft Corporation
  • 17.
    #2: Data quality ©Microsoft Corporation
  • 18.
  • 19.
    #4: Understand userneeds © Microsoft Corporation
  • 20.
    #4: Understand userneeds Developers: well studied (ICSM: 26 papers) © Microsoft Corporation
  • 21.
    #4: Understand userneeds Managers: not many studies (ICSM: 7 papers) Developers: well studied (ICSM: 26 papers) © Microsoft Corporation
  • 22.
    #4: Understand userneeds 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 actionableand accessible Data collection Data quality Privacy Education Understand user needs User experience http://msrconf.org © Microsoft Corporation