Software Metrics Evaluation Based on Entropy

Software Metrics Evaluation Based on Entropy

R. Selvarani (Dayananda Sagar Institutions, Bangalore, India), T.R.Gopalakrishnan Nair (Dayananda Sagar Institutions, Bangalore, India), Muthu Ramachandran (Leeds Metropolitan University, UK) and Kamakshi Prasad (JNTU, Hyderabad, India)
DOI: 10.4018/978-1-60566-731-7.ch011
OnDemand PDF Download:
No Current Special Offers


The complexity of modern software, the commercial constraints and the expectation for high quality product demands the accurate fault prediction based on OO design metrics in the class level in the early stages of software development. The object oriented class metrics are used as quality predictors in the entire OO software development life cycle even when a highly iterative, incremental model or agile software process is employed. Recent research has shown some of the OO design metrics are useful for predicting fault-proneness of classes. In this chapter the empirical validation of a set of metrics proposed by Chidamber and Kemerer is performed to assess their ability in predicting the software quality in terms of fault proneness and degradation. The authors have also proposed the design complexity of object-oriented software with Weighted Methods per Class metric (WMC-CK metric) expressed in terms of Shannon entropy, and error proneness.
Chapter Preview

Ii. Metric Evaluation Criteria

Metrics are defined by Fenton and Pfleeger in (Fenton & Pfleeger, 1996) as output of measurements, where measurement is defined as the process by which values are assigned to attribute of entities in the real world in such a way as to describe them according to clearly defined rules. Software metrics are the measures of attributes of a software system (Weyuker, 1988). Traditional functional decomposition metrics and data analysis design metrics measure the design structure independently. OO metrics treats function and data as a combined, integrated object (Chidamber, Shyam & Kemerer, 1994). To evaluate a metric's usefulness as a quantitative measure of software quality, it must be based on the measurement of a software quality attribute. The metrics evaluate the OO concepts such as methods, classes, cohesion, coupling, and inheritance. The metrics focus on internal object structure, external measures of the interactions among entities, measures of the efficiency of an algorithm and the use of machine resources, and the psychological measures that affect a programmer's ability to create, comprehend, modify, and maintain software.

Complete Chapter List

Search this Book: