Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects

Subramanyam, Ramanath; Krishnan, M.S.
April 2003
IEEE Transactions on Software Engineering;Apr2003, Vol. 29 Issue 4, p297
Academic Journal
To produce high quality object-oriented (OO) applications, a strong emphasis on design aspects, especially during the early phases of software development, is necessary. Design metrics play an important role in helping developers understand design aspects of software and, hence, improve software quality and developer productivity. In this paper, we provide empirical evidence supporting the role of OO design complexity metrics, specifically a subset of the Chidamber and Kemerer suite, in determining software defects. Our results, based on industry data from software developed in two popular programming languages used in OO development, indicate that, even after controlling for the size of the software, these metrics are significantly associated with defects. In addition, we find that the effects of these metrics on defects vary across the samples from two programming languages—C++ and Java. We believe that these results have significant implications for designing high-quality software products using the OO approach.


Related Articles

  • Java schmava: It's no panacea for bad habits. Strehlo, Kevin // InfoWorld;6/10/96, Vol. 18 Issue 24, p80 

    Comments on the significance of the Java technology for software development. Potential of the technology for taking Internet and intranet Web sites to new levels; Likelihood of Java improving software development significantly; Real issues concerning Java.

  • Microprocess or Innovation at its Own Speed. Weber, Larry // Electronic News;09/06/99, Vol. 45 Issue 36, p18 

    Comments on the problems faced by software makers in instruction set development. Traditional approach to instruction set development; Application of Java computer language.

  • The return of Java client development. Gonsalves, Antone; Petersen, Scot // PC Week;10/18/99, Vol. 16 Issue 42, p10 

    Focuses on developments related to the use of Java program language as a client-side environment. Benefits offered by Java client development; Companies' introduction of Java software.

  • Java tools present developers with choice of interfaces. Bowen, Ted Smalley // InfoWorld;6/17/96, Vol. 18 Issue 25, p41 

    Discusses the options available for software developers entering the Java tools market. Development of tools that build on existing tools models; Extension of the Internet browser as a graphical user interface; Number of Java tools available in the market; Factors considered in developing the...

  • Real-time Java has become already real. Zyl', S. // Automation & Remote Control;May2011, Vol. 72 Issue 5, p1134 

    Enhanced complexity of the designed real-time computer systems requires that the developers seek for efficient methods and tools to solve the posed problems. The most obvious and simple approach is to employ technologies that have demonstrated their applicability; such technologies should be...

  • Visual J++ extends Java. Coffee, Peter // PC Week;03/16/98, Vol. 15 Issue 11, p16 

    Reviews Visual J++ 6.0, the upgrade to Microsoft Corp.'s Java-based development environment. How it compares with tools like JBuilder from Borland International; When it will be released; Pricing; Features; Integration between the components; Recommendations; Contact information. INSET: WFC...

  • JBuilder toes Java line. Coffee, Peter // PC Week;03/23/98, Vol. 15 Issue 12, p15 

    Reviews the first beta version of JBuilder 2.0, Java-based rapid development software from Borland International Inc. How it will compete against Microsoft's Visual J++; How JBuilder works; Its implementation of Common Object Request Broker Architecture (CORBA) through VisiBroker 3.2, software...

  • Mature Java development. Coffee, Peter // PC Week;03/02/98, Vol. 15 Issue 9, p39 

    Reviews Apptivity 2.0, a Java-based development tool from Progress Software Corp. Price; Ease of installation and use; Feature; How it works; Performance; Flexibility; Learning the program; Recommendations; Contact information.

  • DESIGN OPTIMIZATION METRICS FOR UML BASED OBJECT-ORIENTED SYSTEMS. RAMARAJ, E.; DURAISAMY, S. // International Journal of Software Engineering & Knowledge Engine;Jun2007, Vol. 17 Issue 3, p423 

    Design plays a key role in the development of software. The quality of design is crucial and is a fundamental decision element in assessing the software product. The early availability of design quality evaluation provides a better way to decide the quality of the final product. This avoids...


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics