Selecting a strong cryptographic algorithm makes no sense if the information leaks out of the device through sidechannels. Sensitive information, such as secret keys, can be obtai...
As device geometries continue to shrink, single event upsets are becoming of concern to a wider spectrum of system designers. These “soft errors” can be a nuisance or catastro...
In this ever changing business environment, business processes are constantly being customized to reflect the up-to-date organizational structure and business objectives. Technolo...
Large-scale legacy programs take long time to compile, thereby hampering productivity. This paper presents algorithms that reduce compilation time by analyzing syntactic dependenc...
Yijun Yu, Homayoun Dayani-Fard, John Mylopoulos, P...
Several rapid-feedback-based quality assurance mechanisms are used to manage the quality of continuously evolving software. Even though graphical user interfaces (GUIs) are one of...
To aid software analysis and maintenance tasks, a number of software clustering algorithms have been proposed to automatically partition a software system into meaningful subsyste...
Regression testing is a widely-used method for checking whether modifications to software systems have adversely affected the overall functionality. This is potentially an expens...
There can be no doubt that risk management is an important activity in the software engineering area. One proof of this is the large body of work existing in this area. However, w...
This paper presents the Xrefactory project. Xrefactory is a plugin to editors and Integrated Development Environments (IDE) providing a variety of source understanding and refacto...
The documentation of a program often falls behind the evolution of the program source files. When this happens it may be attractive to shift the documentation mode from updating ...