A Systematic Survey of Program Comprehension through Dynamic Analysis

被引:240
作者
Cornelissen, Bas [1 ]
Zaidman, Andy [1 ]
van Deursen, Arie [1 ]
Moonen, Leon [2 ]
Koschke, Rainer [3 ]
机构
[1] Delft Univ Technol, Fac Elect Engn Math & Comp Sci, NL-2628 CD Delft, Netherlands
[2] Simula Res Lab, N-1235 Lysaker, Norway
[3] Univ Bremen, Arbeitsgrp Softwaretech, D-28334 Bremen, Germany
关键词
Survey; program comprehension; dynamic analysis; DISCOVERING ARCHITECTURES; LOCATING FEATURES; SOFTWARE; INFORMATION; RECOVERY; SEQUENCE; IDENTIFICATION; CHALLENGE; EVOLUTION; INFERENCE;
D O I
10.1109/TSE.2009.28
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Program comprehension is an important activity in software maintenance, as software must be sufficiently understood before it can be properly modified. The study of a program's execution, known as dynamic analysis, has become a common technique in this respect and has received substantial attention from the research community, particularly over the last decade. These efforts have resulted in a large research body of which currently there exists no comprehensive overview. This paper reports on a systematic literature survey aimed at the identification and structuring of research on program comprehension through dynamic analysis. From a research body consisting of 4,795 articles published in 14 relevant venues between July 1999 and June 2008 and the references therein, we have systematically selected 176 articles and characterized them in terms of four main facets: activity, target, method, and evaluation. The resulting overview offers insight in what constitutes the main contributions of the field, supports the task of identifying gaps and opportunities, and has motivated our discussion of several important research directions that merit additional consideration in the near future.
引用
收藏
页码:684 / 702
页数:19
相关论文
共 154 条
[1]  
ANDREWS J, 1997, P 13 INT C AUT SOFTW, P157
[2]   Understanding web applications through dynamic analysis [J].
Antoniol, G ;
Di Penta, M ;
Zazzara, M .
IWPC 2004: 12TH IEEE INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION, PROCEEDINGS, 2004, :120-129
[3]  
ANTONIOL G, 2004, P 8 EUR C SOFTW MAIN, P319
[4]   Feature identification:: An epidemiological metaphor [J].
Antoniol, Giuliano ;
Gueheneuc, Yann-Gael .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2006, 32 (09) :627-641
[5]  
Ball T, 1999, LECT NOTES COMPUT SC, V1687, P216, DOI 10.1145/318774.318944
[6]   Software visualization in the large [J].
Ball, T ;
Eick, SG .
COMPUTER, 1996, 29 (04) :33-&
[7]   Motivation in Software Engineering: A systematic literature review [J].
Beecham, Sarah ;
Baddoo, Nathan ;
Hall, Tracy ;
Robinson, Hugh ;
Sharp, Helen .
INFORMATION AND SOFTWARE TECHNOLOGY, 2008, 50 (9-10) :860-878
[8]  
Benedikt Michael., 2002, Proceedings of the 11th international conference on World Wide Web (WWW02)
[9]   A survey and evaluation of tool features for understanding reverse-engineered sequence diagrams [J].
Bennett, C. ;
Myers, D. ;
Storey, M-A ;
German, D. M. ;
Ouellet, D. ;
Salois, M. ;
Charland, P. .
JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION-RESEARCH AND PRACTICE, 2008, 20 (04) :291-315
[10]   INFERENCE OF TURING MACHINES FROM SAMPLE COMPUTATIONS [J].
BIERMANN, AW .
ARTIFICIAL INTELLIGENCE, 1972, 3 (02) :181-198