Abstract
Managing software development and maintenance projects requires predictions about components of the software system that are likely to have a high error rate or that need high development effort. The value of any classification is determined by the accuracy and cost of such predictions. The paper investigates the hypothesis whether fuzzy classification applied to criticality prediction provides better results than other classification techniques that have been introduced in this area. Five techniques for identifying error-prone software components are compared, namely Pareto classification, crisp classification trees, factor-based discriminant analysis, neural networks, and fuzzy classification. The comparison is illustrated with experimental results from the development of industrial real-time projects. A module quality model — with respect to changes — provides both quality of fit (according to past data) and predictive accuracy (according to ongoing projects). Fuzzy classification showed best results in terms of overall predictive accuracy.
Similar content being viewed by others
References
B.A. Kitchenham and L. Pickard. Towards a constructive quality model, Software Engineering Journal, 2 (1987) 114–126.
A.A. Porter and R.W. Selby. Empirically guided software development using metric-based classification trees, IEEE Software, 7 (1990) 46–54.
G. Stark, R.C. Durst and C.W. Vowell. Using metrics in management decision making, IEEE Computer, 27 (1994) 42–48.
J.C. Munson and T.M. Khoshgoftaar. Regression modelling of software quality: empirical investigation, Information and Software Technology, 32 (1990) 106–114.
N.F. Schneidewind. Validating metrics for ensuring space shuttle flight software quality, IEEE Computer, 27 (1994) 50–57.
R.W. Selby and V.R. Basili. Analyzing error-prone system structure, IEEE Transactions on Software Engineering, 17 (1991) 141–152.
C. Ebert and T. Liedtke. An integrated approach for criticality prediction. Proceedings of 6th International Symposium on Software Reliability Engineering ISSRE'95. (IEEE Computer Society Press, Los Alamitos, CA 1995).
N.E. Fenton. Software Metrics: A Rigorous Approach (Chapman & Hall, London, 1991).
R.B. Grady. Practical Software Metrics for Project Management and Process Improvement (Prentice Hall, Englewood Cliffs, NJ, 1992).
C. Ebert. Visualization techniques for analyzing and evaluating software measures, IEEE Transactions on Software Engineering, 18 (1992) 1029–1034.
R.W. Selby and A.A. Porter. Learning from examples: generation and evaluation of decision trees for software resource analysis. IEEE Transactions on Software Engineering, 14 (1988) 1743–1757.
D.N. Card and R.L. Glass. Measuring Software Design Quality (Prentice Hall. Englewood Cliffs, NJ, 1990).
L.C. Briand, V.R. Basili and W.M. Thomas. A pattern recognition approach for software engineering data analysis, IEEE Transactions on Software Engineering, 18 (1992) 931–942.
W. Behrendt, S.C. Lambert et al. A metrication framework for knowledge-based systems. In Proceedings of Eurometrics '92, pp. 197–210 (Comm. of the E.C.: EUREKA, Brussels, April 1992).
L. Breiman, J.H. Friedman, R.A. Olshen and C.J. Stone. Classification and Regression Trees (Wadsworth, Belmont, CA, 1984).
J.J. Shann and H.C. Fu. A fuzzy neural network for rule acquiring on fuzzy control systems, Fuzzy Sets and Systems, 71 (1995) 345–357.
W.R. Dillon and M. Goldstein. Multivariate Analysis-Methods and Applications (John Wiley & Sons, New York, 1984).
T. Khoshgoftaar and D.L. Lanning. A neural network approach for early detection of program modules having high risk in the maintenance phase, Journal of Systems and Software 29 (1995) 85–91.
J.J. Buckley and Y. Hayashi. Neural nets for fuzzy systems, Fuzzy Sets and Systems, 71 (1995) 265–276.
H.-J. zimmermann. Fuzzy Set Theory and its Applications 2nd edition (Kluwer, Boston, 1991).
C. Ebert. Rule-based fuzzy classification for software quality control, Fuzzy Sets and Systems, 63 (1994) 349–358.
M.G. Kendall and A. Stuart. The Advanced Theory of Statistics, Vol. II (Griffin, London, 1961).
C. Debou, N. Fuchs and H. Saria. Selling believable technology, IEEE Software, (1993).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Ebert, C. Classification techniques for metric-based software development. Software Qual J 5, 255–272 (1996). https://doi.org/10.1007/BF00209184
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00209184