Understanding software through numbers: A metric based approach to program comprehension
- 1 November 1995
- journal article
- Published by Wiley in Journal of Software Maintenance: Research and Practice
- Vol. 7 (6) , 405-419
- https://doi.org/10.1002/smr.4360070604
Abstract
There are many approaches to try to comprehend software. Code can be statically analysed and its structure and content displayed as lists, tables or graphs. Most of the literature on software comprehension deals with this approach. Code can also be dynamically executed and its reaction to impulses from outside registered and documented. This is a useful approach to understanding object‐orientated systems. A third approach is not to deal with the code at all, but instead to extract information from existing documents and to combine it into a whole. The problem here is that important documents are often missing and those that are available are out of date. A fourth approach is to interview the experts and to aggregate their views of the software, how it is composed and how it functions as opposed to how it should be composed and how it should function. All of these approaches have been examined and reported on by the participants of the ESPRIT DOCKET Project (1992).A fifth approach to software understanding, the one to be presented here, is that of comprehension through numbers by software managers, i.e. using metrics to support the decision making process.Keywords
This publication has 8 references indexed in Scilit:
- Criteria for program comprehension derived from software complexity metricsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Reverse engineering: progress along many dimensionsCommunications of the ACM, 1994
- Software measurement: a necessary scientific basisIEEE Transactions on Software Engineering, 1994
- An early impact analysis technique for software maintenanceJournal of Software Maintenance: Research and Practice, 1994
- Economics of software re-engineeringJournal of Software Maintenance: Research and Practice, 1991
- Knowledge-based program analysisIEEE Software, 1990
- Software Engineering EconomicsIEEE Transactions on Software Engineering, 1984
- Managing application program maintenance expendituresCommunications of the ACM, 1983