Software developers often do not build software from scratch but reuse software libraries. In theory, the APIs of a library should be stable, but in practice they do change and th...
Self-adaptive software continually evaluates and modifies its own behavior to meet changing demands. One of the key issues in constructing such software is that of planning when a...
Although much progress has been made in software verification, software testing remains by far the most widely used technique for improving software reliability. Among various typ...
Tao Xie, Nikolai Tillmann, Jonathan de Halleux, Wo...
Software internationalization is often necessary when distributing software applications to different regions around the world. In many cases, developers often do not internationa...
Xiaoyin Wang, Lu Zhang, Tao Xie, Hong Mei, Jiasu S...
Advances in reverse engineering and program analyses have made software extremely vulnerable to malicious host attacks. These attacks typically take the form of intellectual prope...
Matias Madou, Bertrand Anckaert, Bjorn De Sutter, ...