Most current software systems contain undocumented high-level ideas implemented across multiple files and modules. When developers perform program maintenance tasks, they often wa...
David Shepherd, Zachary P. Fry, Emily Hill, Lori L...
Program slicing has many applications in software engineering activities including program comprehension, debugging, testing, maintenance, and model checking. In this paper, we pr...
As software systems evolve over a series of releases, it becomes important to know which components show repeated need for maintenance. Deterioration of a single component manifes...
Catherine Stringfellow, C. D. Amory, Dileep Potnur...
Software systems evolve over time. Currently we do not do a good job of documenting this evolution. This essay discusses the need to better document software evolution and introdu...
We demonstrate Spiral, a domain-specific library generation system. Spiral generates high performance source code for linear transforms (such as the discrete Fourier transform and ...