Object Oriented Software Metrics

This page briefly describes my recent and current work in Object Oriented Software Metrics. In 1993 Brad Swim and I published a conceptual paper describing how software metrics could be inherited. Currently I am examing the software complexity of the Actor 3.0 class library.

Inheriting Software Metrics

Barnes, G.M. and Swim, B.R., Journal of Object Oriented Programming, vol. 6, 7, 1993, pp 27-34.

Abstract

Software engineering must continue to automate both the measurement and analysis of software quality and incorporate the reuse of existing software components to satisfy the need for quality software. A conceptual extension to the OOP paradigm is presented to support the development of high quality production-grade software. A Quality Object Oriented Language (QOOL) extends the class concept to software metrics that assess how well software satisfies its design goals, how well it is written, and how well it performs. In addition, we describe how QOOL environments could reduce the burden of quality assurance and increase software reuse. A prototype (ActQOOL) is presented to demonstrate the feasibility and use of the QOOL concept.

Class and method complexity

The question of this work is, "Does functionality of a class subtree affect its software complexity?" I have used ActQOOL to separately collect software complexity metrics on 55 classes in the actor class library and all the methods they contain. I am going to analyze the class metrics and the method metrics separately. I plan to first factor analyze the metrics and generate factor scores on the resultant definable factors. I will then use the factor scores in a MANOVA comparing 3 levels of Class Subtree (GUI, Container, and Language) by 4 levels of Tree Depth (upper third, middle third, lower third, and leafs). I view this as a "naturalistic" study since Actor 3.0 has been a commercial product for several years and is modelled on Smalltalk. For more information on Actor see either:

8/25/97