A key desideratum for many software comprehension tools is to reduce the mental burdens of software engineers. That is, the tools should support cognition. This key benefit is di...
Maintenance and evolution of complex software systems (such as large telecom embedded devices) involve activities such as reverse engineering (RE) and software visualization. Alth...
Software miniaturization is a form of software refactoring focused on reducing an application to the bare bone. Porting an application on a hand-held device is very likely to requ...
Massimiliano Di Penta, Markus Neteler, Giuliano An...
A recent industry survey (Townhidnejad and Hilburn, 2002) has reported that more than fifty percent of a software project's budget is spent on activities related to improving...
Program debugging is an extremely time-consuming process, and it takes up a large portion of software development time. In practice, debugging is still very much of an art, with t...