Top Banner
Empirical Evaluation of Reliability Improvement in an Evolving Software Product Line Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1 This research is supported by NSF grants 0916275 and 0916284
17

Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

Mar 28, 2015

Download

Documents

Maggie Harnage
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

1

Empirical Evaluation of Reliability Improvement in an Evolving Software

Product Line

Sandeep Krishnan, ISURobyn R. Lutz, ISU & JPL

Katerina Goseva-Popstojanova, WVU

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

This research is supported by NSF grants 0916275 and 0916284

Page 2: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

2

BackgroundProduct line – “A family of products designed to take advantage of

their common aspects and predicted variabilities” [Weiss and Lai 1999]

e.g. Nokia cellphones, HP printers, etc.

Products -

Commonalities – Shared by all products. e.g. Platform

Variabilities – Differentiate the productsHigh-reuse variation – JDT, PDE, Mylyn, Webtools, etc. Low-reuse variation – CDT, Datatools, Java EE tools.

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Page 3: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

3

MotivationDoes reliability improve as a product line evolves?

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

PL Evolution

Reliability

Reliability – Continuity of correct service; measured in terms of post-deployment failures [Avizienis, et al., 2001]

Page 4: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

4

Research QuestionsFailure trends: Do serious failures decrease over time

as the common/high-reuse variation/ low-reuse variation components evolve over releases?

Change trends: Does the percentage of new files and/or modifications to the source code decrease across releases for common/ high-reuse variation/ low-reuse variation components?

Failure/Change relationships: Does the number of serious failures normalized for source-code changes decrease over time for the common/ high-reuse variation/ low-reuse variation components?

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Page 5: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

5

FindingsFailure trends: Do serious failures decrease over time as the

common/high-reuse variation/ low-reuse variation components evolve over releases?

Common High-reuse Low-reuse

Change trends: Does the percentage of new files and/or modifications to the source code decrease across releases for common/ high-reuse variation/ low-reuse variation components?

Common High-reuse Low-reuse

Failure/Change relationships: Does the number of serious failures normalized for source-code changes decrease over time for the common/ high-reuse variation/ low-reuse variation components?

Common High-reuse Low-reuse Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Page 6: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

6

Approach

Source of failure reports-

Failure cateogries –

Raw number of severe failures and percentage.Source of change reports – CVS repository of Eclipse.We look at change to existing files measured by KChanges

and change via new files [Mockus et al., 2000].Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Blocker

Critical Major

Normal Minor

2007 2008 2009 2010 2011

Europa

Ganymede

Galileo

Helios

Blocker

Critical Major

Page 7: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

7

Observations

Number of severe failures decreases over time as expected

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

1. A. Failure trends – Common components

Page 8: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

8

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Percentage of severe failures tends to stabilize and even increases gradually

1. A. Failure trends – Common components

Page 9: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

9

Observations

Number of severe failures show mixed behavior, contrary to our expectations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

1. B. Failure trends – High-reuse variation components

Page 10: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

10

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Percentage of severe failures tends to stabilize and even increases gradually, contrary to our expectations

1. B. Failure trends – High-reuse variation components

Page 11: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

11

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Number of severe failures do not monotonically decrease; rather show mixed behavior

1. C. Failure trends – Low-reuse variation components

Page 12: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

12

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Percentage of severe failures show mixed behavior and not a decreasing trend

1. C. Failure trends – Low-reuse variation components

Page 13: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

13

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

2. Change trends

• Common components: Percentage of new files decreases.• High-reuse variation components: Percentage of new files

tends to remain stable.• Low-reuse variation components: Percentage of new files

shows decreasing trend.• All components show relatively high modification rate.

Page 14: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

14

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

3. Failure/evolution relationship

• Failures/new-file o Common components: For two subcomponents, release 1 has

lower failures/new-file than release 4. o High-reuse variation components: Release 1 always has higher

failures/new-file than release 4. o Low-reuse variation components: No specific trend.

Page 15: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

15

Observations

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

3. Failure/evolution relationship

• Failures/Kchangeso No stable behavior for all components; mixed trends are

observed.

Page 16: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

16

ConclusionCommon components have fewer severe failures over time

and amount of change also decreases.

Variation components show no uniform pattern of decrease in failures.

Even high-reuse variation components continue to change fairly rapidly.

Study suggests there may be no simple answer as to whether reliability tends to improve as product line matures.

Further investigation is needed on the relationship between failure and change in software product lines.

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011

Page 17: Sandeep Krishnan, ISU Robyn R. Lutz, ISU & JPL Katerina Goseva-Popstojanova, WVU Dept. of Computer Science, Iowa State University, MSR, May 22, 2011 1.

17

Thank You!

Dept. of Computer Science, Iowa State University, MSR, May 22, 2011