Mining Software History to Improve Software Maintenance Quality

Post on 22-Mar-2016

23 views 3 download

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

Transcript of 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

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.

2

Outline

Motivation Objective Methodology Experiments and Results Conclusion Comments

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..怎樣~)

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

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Methodology – System Overview

5

Binary Change Tracer (BCT)

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

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

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Conclusion

This model is useful for risk prediction.

82009 年 Micosoft 最佳員工獎

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

Intelligent Database Systems Lab

N.Y.U.S.T.

I. M.Comments

Advantage It really improve software maintenance quality

Drawback …

Application Software Maintenance

9