Metrics for object-oriented software design

Shyam R. Chidamber, Chris F. Kemerer · 1994

Object oriented programming promises to move software development and maintenance from the current 'craft' environment to something more closely resembling conventional engineering. In order to fulfill this promise, it will require measures or metrics of the process. While software metrics are a generally desirable feature in the software management function, they are of special importance with a new technology such as the object-oriented approach due to the need to train current and new software engineers in generally accepted object-oriented principles. This dissertation first presents theoretical work that builds a suite of metrics for object-oriented design (OOD). In particular, these metrics are based upon measurement theory and ontology. In addition, they incorporate the insights of experienced object-oriented software developers. The proposed metrics are mathematically evaluated against a widely-accepted list of seven software metric evaluation criteria and the formal results of this evaluation are presented. A second goal of this work is to make these metrics machinable, i.e. build a tool that extracts these metrics from commercially used class libraries. A metrics extractor tool is built to extract metrics from C++ class libraries. The metrics extractor is currently configured to collect metrics from C++ code in UNIX workstation environments. A third goal of this dissertation is to relate the metrics gathered on commercial projects to performance indicators of managerial relevance such as development effort, extent of reuse, and productivity in order to determine the degree to which the proposed metrics are useful predictors of typical economic considerations faced by MIS managers. In the final phase of this dissertation, the organizational considerations of using metrics as part of the development process are examined. The message to practicing managers is that without adequate measures for OOD, organizations will find themselves increasingly unable to achieve the full benefits of object-oriented technology. (Copies available exclusively from MIT Libraries, Rm. 14-0551, Cambridge, MA 02139-4307. Ph. 617-253-5668; Fax 617-253-1690.)

Read the paper · More papers on PaperTik