10
An Empirical Study of the Effect of File Editing Patterns on Software Quality Feng Zhang, Foutse Khomh, Ying Zou and Ahmed E. Hassan

An Empirical Study of the Effect of File Editing Patterns

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An Empirical Study of the Effect of File Editing Patterns

An Empirical Study of the

Effect of File Editing Patterns

on Software Quality

Feng Zhang, Foutse Khomh, Ying Zou

and Ahmed E. Hassan

Page 2: An Empirical Study of the Effect of File Editing Patterns

2

Motivation

Page 3: An Empirical Study of the Effect of File Editing Patterns

3

BugzillaTaskEditorPage.java

Frank Steffen Pingel David Green

Concurrent Editing Parallel Editing

Extended Editing Interrupted Editing

Multiple files are edited in parallel by the same developer.

Several developers edit the same file concurrently.

AbstractTaskEditorPage.java

Frank

TasksUiPlugin.java

PlanningPerspectiveFactory.java

DiscoveryViewer.java

4.5 hours

Mylyn Project

1.25 hours

3.6 times

There is a longer idle period during the editing of a file. (threshold: third quantile)

Developers spend longer time editing a file. (threshold: third quantile)

TaskCompareDialog.java

338 hours

Mylyn Project

2 hours

164 times

Page 4: An Empirical Study of the Effect of File Editing Patterns

4

Case Study

Overview of Approach

3,883 logs

2,722 bugs

606 bugs

524 bugs

793 logs

638 logs

Mylyn

Eclipse Platform

PDE Split Date: 2011-01-01

119 developers

98 bugs

2,140 files

5,070 CVS logs

Subject Systems Description of Data

Page 5: An Empirical Study of the Effect of File Editing Patterns

5

Research Questions

Page 6: An Empirical Study of the Effect of File Editing Patterns

6

RQ1: Are there different file editing patterns?

Occurrences of file editing patterns and their interactions

0

500

1000

1500

2000

2500

1. Concurrent

2. Parallel

3. Extended

4. Interrupted

File editing patterns do exist

Combinations of patterns

Single Pattern

No

Patt

ern

Page 7: An Empirical Study of the Effect of File Editing Patterns

7

RQ2: Risk of single editing pattern (Odds Ratio)

Concurrent Editing Parallel Editing

Extended Editing Interrupted Editing

Page 8: An Empirical Study of the Effect of File Editing Patterns

8

RQ2: Risk by level of involvement (Odds Ratio)

Concurrent Editing Parallel Editing

Extended Editing Interrupted Editing

0

1

2

3

No Pattern ≤3rd quantile > 3rd quantile

2.4* 1.6

* Statistically significant

0

1

2

3

4

5

No Pattern ≤3rd quantile > 3rd quantile

1.3

3.8*

0

1

2

No Pattern ≤3rd quantile > 3rd quantile

1.0

1.9*

0

1

2

No Pattern ≤3rd quantile > 3rd quantile

1.2 1.8*

Page 9: An Empirical Study of the Effect of File Editing Patterns

9

RQ3: Do interactions among file editing patterns lead to more bugs?

Odds ratio of 16 groups.

0

1

2

3

4

5

6

1. Concurrent

2. Parallel

3. Extended

4. Interrupted

Combinations of patterns are more risky than single pattern

Combinations of patterns

Single Pattern

No

Patt

ern

Page 10: An Empirical Study of the Effect of File Editing Patterns

10

Conclusion

Feng Zhang, Foutse Khomh, Ying Zou, and Ahmed E. Hassan, An Empirical Study of the

Effect of File Editing Patterns on Software Quality, Proceedings of the 19th Working

Conference on Reverse Engineering (WCRE), October 15-18, 2012, Kingston, Ontario,

Canada. IEEE Computer Society Press.

File Editing Pattern Odds Ratio Average Density of Bug

Concurrent Editing 2.14* 2.46*

Parallel Editing 1.94* 1.67*

Extended Editing 1.86* 2.28*

Interrupted Editing 1.62* 2.10*