ppt on fault prediction in object oriented systems .
Posts: 14,118
Threads: 61
Joined: Oct 2014
High cohesion is a desirable property of software as it positively affects understanding, reuse and maintenance. The measures currently proposed for cohesion in object-oriented (OO) software reflect particular interpretations of cohesion and capture different aspects of it. Existing approaches rely heavily on the use of structural information from the source code, such as attribute references, on methods for measuring cohesion. This article proposes a new measure for class cohesion in OO software systems based on the analysis of unstructured information incorporated in the source code, such as comments and identifiers. The measure, called Conceptual Cohesion of Classes (C3), is inspired by the mechanisms used to measure textual coherence in cognitive psychology and computational linguistics. This article presents the principles and technology behind C3. A large case study is presented on three open source software systems that compares the new measure with an extensive set of existing metrics and uses them to construct models that predict software failures. The case study shows that the novel measure picks up different aspects of class cohesion compared to any of the existing cohesion measures. In addition, the combination of C3 with existing structural cohesion measures proves to be a better predictor of defective classes compared to different combinations of structural cohesion measures.
Developing an efficient system is one of the major challenges for software developers, who have been concerned with reliability issues as they create and deploy. This article examines various techniques for predicting faults and the measurement of quality parameters in object oriented systems. The survey includes traditional techniques such as fault tree analysis, information theory approach, coupling and cohesion measurement, and conceptual cohesion and coupling. The utility of each technique based on structural information and class instructor. Each technique deals with several parameters to predict software failure. The prediction of errors improves the reliability and quality of the software.