9
Intelligent Database Systems Lab 國國國國國國國國 National Yunlin University of Science and Technology Mining Software History to Improve Software Maintenance Quality Presenter : Li Shu-Ya Authors : Alexander Tarvo, Microsoft Software, 2009

Mining Software History to Improve Software Maintenance Quality

  • Upload
    kanan

  • View
    21

  • Download
    3

Embed Size (px)

DESCRIPTION

Mining Software History to Improve Software Maintenance Quality. Presenter : Li Shu-Ya Authors : Alexander Tarvo , Microsoft. Software, 2009 . Outline. Motivation Objective Methodology Experiments and Results Conclusion Comments. 我最會 Debug 了 ( 叫我 king..). Motivation. - PowerPoint PPT Presentation

Citation preview

Page 1: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

國立雲林科技大學National Yunlin University of Science and Technology

Mining Software History to Improve Software Maintenance Quality

Presenter : Li Shu-YaAuthors : Alexander Tarvo, Microsoft

Software, 2009

Page 2: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.

2

Outline

Motivation Objective Methodology Experiments and Results Conclusion Comments

Page 3: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Motivation

3

Bug? UpdateBug? Update

Bug? UpateBug? UpdateBug? UpdateBug? Update

Bug? UpdateBug? Update

Alex

專長:把 bug 越 De 越多…專長: Debug

Oh! SoftwareRegressions?!

I must improve it!

A story in Micosoft …

King of Garbage

我最會 Debug 了(叫我 king..)

King of Destruction

我是破壞王(我也是 king..怎樣~)

Page 4: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Objectives

The best method to avoid regressions’ consequences extensive testing of all fixes.

Need a tool or a method that can predict the amount of risk for each fix.

4

Page 5: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Methodology – System Overview

5

Binary Change Tracer (BCT)

Page 6: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Binary Change Tracer (BCT)

6

1. Dividing the binary into components.2. Extracting the history of code changes

3. Associating code changes with bugs. 4. Storing the extracted data

Bug trackingdatabases

(BTDs)

Check-in IDs in VCS

Relate

BCT

Bugscheck-insDevelopersBinariessource filesfunctions

code complexityCouplingOO metrics

MaX

Page 7: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Experiments

7

the best indicators of regression risksource files affected by the fixAll functions changea new functionality

Page 8: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Conclusion

This model is useful for risk prediction.

82009 年 Micosoft 最佳員工獎

還好有這個系統讓我沒有被裁員

Page 9: Mining Software History to  Improve Software Maintenance Quality

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Comments

Advantage It really improve software maintenance quality

Drawback …

Application Software Maintenance

9