Abstract. Software clustering techniques are useful for extracting architectural information about a system directly from its source code structure. This paper starts by examining ...
To take full advantage of the increasingly used shared-memory multicore architectures, software algorithms will need to be parallelized over multiple threads. This means that thre...
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...
Use case diagrams (UCDs) are widely used to describe requirements and desired functionality of software products. However, UCDs are loosely linked to source code, and maintaining ...
Mark Grechanik, Kathryn S. McKinley, Dewayne E. Pe...
Software developers are constantly required to modify and adapt application features in response to changing requirements. The problem is that just by reading the source code, it ...