Search Results

Now showing 1 - 5 of 5
  • Article
    Citation - WoS: 36
    Citation - Scopus: 58
    A Suite of Object Oriented Cognitive Complexity Metrics
    (Ieee-inst Electrical Electronics Engineers inc, 2018) Misra, Sanjay; Adewumi, Adewole; Fernandez-Sanz, Luis; Damasevicius, Robertas
    Object orientation has gained a wide adoption in the software development community. To this end, different metrics that can be utilized in measuring and improving the quality of object-oriented (OO) software have been proposed, by providing insight into the maintainability and reliability of the system. Some of these software metrics are based on cognitive weight and are referred to as cognitive complexity metrics. It is our objective in this paper to present a suite of cognitive complexity metrics that can be used to evaluate OO software projects. The present suite of metrics includes method complexity, message complexity, attribute complexity, weighted class complexity, and code complexity. The metrics suite was evaluated theoretically using measurement theory and Weyuker's properties, practically using Kaner's framework and empirically using thirty projects.
  • Article
    Citation - WoS: 24
    Citation - Scopus: 40
    An Inheritance Complexity Metric for Object-Oriented Code: a Cognitive Approach
    (Springer india, 2011) Misra, Sanjay; Akman, Ibrahim; Koyuncu, Murat
    Software metrics should be used in order to improve the productivity and quality of software, because they provide critical information about reliability and maintainability of the system. In this paper, we propose a cognitive complexity metric for evaluating design of object-oriented (OO) code. The proposed metric is based on an important feature of the OO systems: Inheritance. It calculates the complexity at method level considering internal structure of methods, and also considers inheritance to calculate the complexity of class hierarchies. The proposed metric is validated both theoretically and empirically. For theoretical validation, principles of measurement theory are applied since the measurement theory has been proposed and extensively used in the literature as a means to evaluate the software engineering metrics. We applied our metric on a real project for empirical validation and compared it with Chidamber and Kemerer (CK) metrics suite. The theoretical, practical and empirical validations and the comparative study prove the robustness of the measure.
  • Conference Object
    Citation - WoS: 14
    Citation - Scopus: 21
    Cognitive Program Complexity Measure
    (Ieee Computer Soc, 2007) Misra, Sanjay
    In cognitive informatics, the functional complexity of software depends on three factors: internal architecture, input, and output. In the earlier proposed metrics based on cognitive informatics, these above factors are not fully considered. This paper proposes an improved cognitive complexity measure. Accordingly, new formula is developed to calculate the cognitive complexity. An attempt has also been made to evaluate and validate the proposed measure through Weyuker's properties and a practical framework It has been found that seven of nine Weyuker's properties have been satisfied by the proposed cognitive complexity measure. It also satisfies most of the parameters required by the practical framework hence establishes as a well-structured one. Finally, a comparative study with similar measures has been made to prove its robustness.
  • Article
    Citation - WoS: 32
    Citation - Scopus: 46
    Weighted Class Complexity: a Measure of Complexity for Object Oriented System
    (inst information Science, 2008) Misra, Sanjay; Akman, K. Ibrahim; Computer Engineering
    Software complexity metrics are used to predict critical information about reliability and maintainability of software systems. Object oriented software development requires a different approach to software complexity metrics. In this paper, we propose a metric to compute the structural and cognitive complexity of class by associating a weight to the class, called as Weighted Class Complexity (WCC). On the contrary, of the other metrics used for object oriented systems, proposed metric calculates the complexity of a class due to methods and attributes in terms of cognitive weight. The proposed metric has been demonstrated with 00 examples. The theoretical and practical evaluations based on the information theory have shown that the proposed metric is on ratio scale and satisfies most of the parameters required by the measurement theory.
  • Conference Object
    Citation - WoS: 12
    Citation - Scopus: 17
    An Object Oriented Complexity Metric Based on Cognitive Weights
    (Ieee Computer Soc, 2007) Misra, Sanjay
    Complexity in general is defined as "the degree to which a system or component has a design or implementation that is difficult to understand and verify". Complexity metrics are used to predict critical information about reliability and maintainability of software systems. Object oriented software development requires a different approach to software metrics. In this paper, an attempt has been made to propose a metric for an object oriented code, which calculates the complexity of a class at method level. The proposed measure considers the internal architecture of the class, subclass, and member functions, while other proposed metrics for object oriented programming do not. An attempt has also been made to evaluate and validate the proposed measure in terms of Weyuker's properties and against the principles of measurement theory. It has been found that seven of nine Weyuker's properties have been satisfied by the proposed measure. It also satisfies most of the parameters required by the measurement theory perspective, hence establishes as a well-structured one.