Issue No. 05 - Sept.-Oct. (2008 vol. 25)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2008.118
Sukanya Ratanotayanon , University of California, Irvine
Susan Elliott Sim , University of California, Irvine
Software developers often need to understand a large body of unfamiliar code with little or no documentation, no experts to consult, and little time to do it. A post appeared in January 2008 on Slashdot, a technology news Web site, asking for tools and techniques that could help. This article analyzes 301 often passionate and sometimes articulate responses to this query, including the themes and the associated tool recommendations. The most common suggestions were to use a code navigation tool, use a design recovery tool, use a debugger to step through the code, create a runtime trace, use problem-based learning, ask people for help, study the code from top down, and print out all the code. This analysis presents an intriguing snapshot of how software developers in industry go about comprehending big code.
software maintenance, program comprehension, navigation and visualization tools
S. Ratanotayanon and S. E. Sim, "Inventive Tool Use to Comprehend Big Code," in IEEE Software, vol. 25, no. , pp. 91-92, 2008.