Program comprehension is an important part of software maintenance, especially when program structure is complex and documentation is unavailable or outdated. Data mining can prod...
Although unit tests are recognized as an important tool in software development, programmers prefer to write code, rather than unit tests. Despite the emergence of tools like JUni...
For many small software companies, full-scale software process improvement (SPI) initiatives are often out of reach due to prohibitive costs and lack of SPI knowledge. However, to...
The ability to handle changes is a characteristic feature of successful software projects. The problem addressed in this paper is what should be done in project planning and itera...
Humans have an innate ability to perceive symmetry, but it is not obvious how to automate this powerful insight. In this paper the mathematical theory of Frieze and wallpaper grou...