Superimposition is a composition technique that has been applied successfully in many areas of software development. Although superimposition is a general-purpose concept, it has ...
The documentation of API functions typically conveys detailed specifications for the benefit of interested readers. In some cases, however, it also contains usage directives, such...
ess Preserving Finite State Abstractions Guido de Caso V?ctor Braberman Diego Garbervetsky Sebasti?n Uchitel Departamento de Computaci?n, FCEyN, UBA. Buenos Aires, Argentina Depa...
ng Implementations from Abstraction Functions Derek Rayside, Zev Benjamin, Rishabh Singh, Joseph P. Near, Aleksandar Milicevic and Daniel Jackson Computer Science and Artificial In...
Automatic repair of programs has been a longstanding goal in software engineering, yet debugging remains a largely manual process. We introduce a fully automated method for locati...
Westley Weimer, ThanhVu Nguyen, Claire Le Goues, S...
Research in the fields of software quality and maintainability requires the analysis of large quantities of data, which often originate from open source software projects. Pre-pro...
Parallelizing existing sequential programs to run efficiently on multicores is hard. The Java 5 package java.util.concurrent (j.u.c.) supports writing concurrent programs: much of...
Designers of concurrent programs are faced with many choices of synchronization mechanisms, among which clear functional trade-offs exist. Making synchronization customizable is h...
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...
Every bug has a story behind it. The people that discover and resolve it need to coordinate, to get information from documents, tools, or other people, and to navigate through iss...