Generating hierarchical system descriptions for software error localization

The purpose of this study is to quantify ratios of coupling and cohesion and use them in the generation of hierarchical system descriptions. The ability of the hierarchical descriptions to localize errors by identifying error-prone system structure is evaluated using actual error data. Measures of data interaction called data bindings, are used as the basis for calculating software coupling and cohesion. A 135000 source line system from a production environment has been selected for empirical analysis. Software error data were collected from high-level system design through system test and from field operation of the system. A set of five tools is applied to calculate the data bindings automatically, and cluster analysis is used to determine a hierarchical description of each of the system's 77 subsystems. An analysis-of-variance model is used to characterize subsystems and individual routines that had either many/few errors or high/low error correction effort.<<ETX>>

[1]  Victor R. Basili,et al.  System Structure Analysis: Clustering with Data Bindings , 1985, IEEE Transactions on Software Engineering.

[2]  Victor R. Basili,et al.  Software errors and complexity: an empirical investigation0 , 1984, CACM.

[3]  Sallie M. Henry,et al.  Software quality metrics based on interconnectivity , 1981, J. Syst. Softw..

[4]  T. J. Emerson A discriminant metric for module cohesion , 1984, ICSE '84.

[5]  B. Everitt,et al.  Cluster Analysis (2nd ed). , 1982 .

[6]  Victor R. Basili,et al.  Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.

[7]  Victor R. Basili,et al.  Analyzing Error-Prone System Coupling and Cohesion , 1988 .

[8]  Laszlo A. Belady,et al.  System partitioning and its measure , 1981, J. Syst. Softw..

[9]  Victor R. Basili,et al.  Metric Analysis and Data Validation Across Fortran Projects , 1983, IEEE Transactions on Software Engineering.

[10]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[11]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.