Title
Software reconnaissance: mapping program features to code
Abstract
Maintainers of old code often need to discover where particular program features are implemented. This paper presents a method, called 'software reconnaissance' for answering this question through an analysis of the execution of different test eases. The method is quite easy to implement, requiring only a test coverage monitor, some simple tools, and a surprisingly small number of test cases. A statistical case study is presented that shows the kind of results that can be obtained on a typical medium-sized program. The method seems to be effective in identifying a small number of code components that are unique to a particular program feature, though it may not find al components that make up the feature's delocalized plan. A small protocol case study shows that professional programmers can learn to use the method quickly and can use the information that it produces. Software reconnaissance may be a simple but useful addition to the maintainer's tool kit in that it provides starting points for understanding a large program and a way of recovering some requirements traceability information from old code, For the researcher, it also provides a novel functionality 'view' of software that maps features to program components at different levels of precision.
Year
DOI
Venue
1995
10.1002/smr.4360070105
Journal of Software Maintenance
Keywords
Field
DocType
software reconnaissance,mapping program feature,requirements traceability,reverse engineering,software maintenance
Code coverage,Static program analysis,Software engineering,Systems engineering,Computer science,Reverse engineering,Software,Test case,Software maintenance,Dynamic program analysis,Requirements traceability
Journal
Volume
Issue
ISSN
7
1
1040-550X
Citations 
PageRank 
References 
246
13.35
12
Authors
2
Search Limit
100246
Name
Order
Citations
PageRank
Norman Wilde150731.04
Michael C. Scully224613.35