Measurement of Software Maintainability and Reusability in the Object Oriented Paradigm

The Metrics Group of Virginia Tech has been studying the object oriented paradigm and how it relates to software maintenance and software reusability in an attempt to make programmers more productive. Software reuse is the key to increased productivity within the software development process. By reusing existing software, time and effort are saved in the testing and maintenance phases of a software product. The object oriented paradigm is designed to enhance software reusability through encapsulation and inheritance (CoxB86, Meye87). This paper describes the results of three studies on object oriented metrics and also a reusability study currently in progress. The first study investigates the maintainability of object oriented software versus procedural software. The second one examines the relationship between programmer productivity, software reuse, and the object oriented paradigm. The third study proposes and validates a new suite of object oriented metrics based on the MOOSE metrics developed by Chidamber and Kemerer (Chid91). These new metrics are shown to predict maintainability from object oriented designs and source code.