Abstract:
We have examined 365 versions of Linux. For every version, we counted the number of instances of common (global) coupling between each of the 17 kernel modules and all the other modules in that version of Linux. We found that the number of instances of common coupling grows exponentially with version number. This result is significant at the 99.99% level, and no additional variables are needed to explain this increase. On the other hand, the number of lines of code in each kernel modules grows only linearly with version number. We conclude that, unless Linux is restructured with a bare minimum of common coupling, the dependencies induced by common coupling will, at some future date, make Linux exceedingly hard to maintain without inducing regression faults.
Citations
|
129
|
Structured design
– STEVENS, MYERS, et al.
- 1974
|
|
82
|
The Practical Guide To Structured Systems Design
– Page-Jones
- 1988
|
|
72
|
Applied Regression Analysis and Other Multivariable Methods
– Kleinbaum, Kupper, et al.
- 1997
|
|
37
|
Analyzing Error-Prone System Structure
– Selby, Basili
- 1991
|
|
33
|
Validation of the Coupling Dependency Metric as a Predictor of Run-Time Failures and Maintenance Measures
– Binkley, Schach
- 1998
|
|
31
|
Measuring the quality of structured designs
– Troy, Zweben
- 1981
|
|
28
|
A Software metric system for module coupling
– Offutt, Harrold, et al.
- 1993
|
|
23
|
A comprehensive empirical validation of design measures for object-oriented systems
– Briand, Daly, et al.
- 1998
|
|
21
|
Global variable considered harmful
– Wulf, Shaw
- 1973
|
|
13
|
Software quality metrics based on inter--connectivity
– Henry, Kafura
- 1981
|
|
7
|
Unix and beyond: An interview with Ken Thompson
– Cooke, Urban, et al.
- 1999
|
|
7
|
A Case Study in Repeated Maintenance
– Wang, Schach, et al.
- 2001
|
|
4
|
R.: 'Object-oriented and classical software engineering' (WCB/McGrawHill
– SCHACH
- 2002
|
|
2
|
Clandestine common coupling
– SCHACH, JIN, et al.
- 2001
|
|
2
|
Growth curve analysis
– GEISSER
- 1980
|