Exploring the Stability of Software with Time-Series Cross-Sectional Data

The stability of software is a classical topic in software engineering. This research investigates stability of software architectures in terms of an object-oriented design principle presented by Robert C. Martin. The research approach is statistical: the design principle is evaluated with a time-series cross-sectional (TSCS) regression model. The empirical sample covers a release history from the Java library Vaadin. The empirical results establish that the design principle cannot be used to characterize the library. Besides delivering this negative empirical result, the research provides the necessary methodological background that is required to understand TSCS modeling.

[1]  D. Cochrane,et al.  Application of Least Squares Regression to Relationships Containing Auto-Correlated Error Terms , 1949 .

[2]  Frederick M. Haney Module connection analysis: a tool for scheduling software debugging activities , 1972, AFIPS '72 (Fall, part I).

[3]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[4]  T. Breusch TESTING FOR AUTOCORRELATION IN DYNAMIC LINEAR MODELS , 1978 .

[5]  Stephen S. Yau,et al.  Some Stability Measures for Software Maintenance , 1979, IEEE Transactions on Software Engineering.

[6]  Terry E. Dielman,et al.  Pooled Cross-Sectional and Time Series Data: A Survey of Current Statistical Methodology , 1983 .

[7]  Cheng Hsiao,et al.  Analysis of Panel Data , 1987 .

[8]  M. Nerlove,et al.  Biases in dynamic models with fixed effects , 1988 .

[9]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[10]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[11]  Frank W. Calliss,et al.  An information-hiding metric , 1994, J. Syst. Softw..

[12]  Jonathan N. Katz,et al.  What To Do (and Not to Do) with Time-Series Cross-Section Data , 1995, American Political Science Review.

[13]  Nathaniel Beck,et al.  Nuisance vs. Substance: Specifying and Estimating Time-Series-Cross-Section Models , 1996, Political Analysis.

[14]  Robert C. Martin,et al.  OO Design Quality Metrics , 1997 .

[15]  Dewayne E. Perry,et al.  Metrics and laws of software evolution-the nineties view , 1997, Proceedings Fourth International Software Metrics Symposium.

[16]  Norman E. Fenton,et al.  A Critique of Software Defect Prediction Models , 1999, IEEE Trans. Software Eng..

[17]  Nathaniel N. Beck Have We Learned in the Past Few Years , 2001 .

[18]  James M. Bieman,et al.  OO design patterns, design structure, and program changes: an industrial case study , 2001, Proceedings IEEE International Conference on Software Maintenance. ICSM 2001.

[19]  Jeffrey M. Woodbridge Econometric Analysis of Cross Section and Panel Data , 2002 .

[20]  Lionel C. Briand,et al.  A Unified Framework for Cohesion Measurement in Object-Oriented Systems , 2004, Empirical Software Engineering.

[21]  David C. Ribar,et al.  Analysis of panel data, 2nd edition , 2004 .

[22]  C. Halaby,et al.  Panel Models in Sociological Research: Theory into Practice , 2004 .

[23]  Thomas Plümper,et al.  Panel Data Analysis in Comparative Politics: Linking Method to Theory , 2005 .

[24]  Diomidis Spinellis,et al.  Code Quality: The Open Source Perspective , 2006 .

[25]  Diomidis Spinellis Code Quality: The Open Source Perspective (Effective Software Development Series) , 2006 .

[26]  Diane Kelly,et al.  A study of design characteristics in evolving software using stability as a criterion , 2006, IEEE Transactions on Software Engineering.

[27]  Sue Black Is ripple effect intuitive? A pilot study , 2006, Innovations in Systems and Software Engineering.

[28]  Robert C. Martin,et al.  Agile Principles, Patterns, and Practices in C# (Robert C. Martin) , 2006 .

[29]  Yves Croissant,et al.  Panel data econometrics in R: The plm package , 2008 .

[30]  W. Greene,et al.  计量经济分析 = Econometric analysis , 2009 .

[31]  Steve Counsell,et al.  Class movement and re-location: An empirical study of Java inheritance evolution , 2010, J. Syst. Softw..

[32]  Marian Jureczko,et al.  Using Object-Oriented Design Metrics to Predict Software Defects 1* , 2010 .

[33]  Nathaniel Beck,et al.  What to Do (and Not Do) with Time-Series Criss-Section Data , 2010 .

[34]  D. Spinellis,et al.  Chapter 1 Using Object-Oriented Design Metrics to Predict Software Defects , 2010 .

[35]  Barbara Kitchenham,et al.  What's up with software metrics? - A preliminary mapping study , 2010, J. Syst. Softw..

[36]  Ewan D. Tempero,et al.  Stability of Java interfaces: a preliminary investigation , 2011, WETSoM '11.

[37]  Klaus Marius Hansen,et al.  An empirical study of software architectures' effect on product quality , 2011, J. Syst. Softw..

[38]  Mohammad Alshayeb,et al.  Towards measuring object-oriented class stability , 2011, IET Softw..

[39]  Mahmoud O. Elish,et al.  Empirical comparison of three metrics suites for fault prediction in packages of object-oriented systems: A case study of Eclipse , 2011, Adv. Eng. Softw..