IJCSNS International Journal of Computer Science and Network Security, VOL.11 No.4, April 2011 100 Manuscript received April 5, 2011 Manuscript revised April 20, 2011 Software Quality Estimation through Object Oriented Design Metrics Deepak Arora † , Pooja Khanna † and Alpika Tripathi † , Shipra Sharma † and Sanchika Shukla †† † Faculty of Engineering, Department of Computer Science, Amity University, Lucknow, India †† Department of Computer Science, Amity University, Lucknow, India Summary Software metrics are required to measure quality in terms of software performance and reliability related characteristics like dependencies, coupling and cohesion etc. It provides a way to measure the progress of code during development and having direct relationship with cost and time incurred in the software design and development at their later stages. These major issues must be checked and informed early in the development stage, so that reliability of any software product could be ensured for any large and complex software project. Object oriented software metrics directly focuses on the issues like complexity, reliability and robustness of the software developed using object oriented design methodologies. It reflects the time, cost and effort that would be incurred in development at later stage. While the software in its development stage, it is desirable that the complexity levels at every stage should be minimized to make the end product more reliable and manageable. Object oriented metrics provides all parameters through which one can estimate the complexities and quality related issues of any software at their early stages of development. In this paper, authors have studied three object oriented metrics namely MOOD Metrics, CK Metrics, and QMOOD Metrics and given a case study to show, how these metrics are useful in determining the quality of any software designed by using object oriented paradigm. Key words: Software Quality, JAVA RMI, MOOD Metrics, CK Metrics, QMOOD Metrics 1. Introduction Software Metrics can be defined by measuring property or characteristic or quality of a software objects related to any large and complex software project. In a broader term, it is a degree up to which a system object can hold a particular attribute or characteristics. Object oriented approach is capable of classifying the problem in terms of objects and provide many paybacks like reliability, reusability, decomposition of problem into easily understood object and aiding of future modifications [19]. Object-Oriented Metrics are useless if they are not mapped to software quality parameters. Many number of quality models are proposed to map parameters of the Object Oriented software like Extensibility, Reusability, efforts, manageability and cost [1, 2, 3]. To know more about the internal structure of the product one should know more about the interdependencies of parameters of metrics and Software quality parameters. Figure 1 shows the interdependencies of the metrics parameters and software quality parameters by measuring Object Oriented Metrics [15]. Fig. 1 Relationship between metrics and quality parameters L.H. Rosenberg proposed various attributes related to object oriented metrics. They have proposed nine metrics for object oriented suite, which are depicted in table I. These metrics include three traditional metrics and six object-oriented metrics [4]. A metric should have a one to one relationship with structures that is being measured or analyzed by that metric. Metrics proposed by Rosenberg, uses traditional metrics and it is structure based, prescribed for object oriented systems. Here one can see that first three metrics are the examples of traditional metrics and applied onto the Object Oriented Metrics Coupling Cohession Size Inheritance Encapsulation Extensibility Reusability Performance Manageability Metrics Parameters Software Quality Parameters