SIGSOFT Distinguished Paper Award

10-08-2013
Writer(s): Jesica E. Hollinger

Two faculty members and one graduate student in the Department of Computer Science edged out more than 300 other entries to be recognized by the Association for Computing Machinery Special Interest Group on Software Engineering (SIGSOFT) for the Distinguished Paper Award.

The SIGSOFT distinguished paper is one of the most prestigious awards for research papers in the area of software engineering. Graduate student Yonghwi Kwon, his advisor Associate Professor Xiangyu Zhang, and Professor Dongyan Xu edged out more than 300 papers submitted to the forum.

The team proposed a technique called Platform Independent Executable Trace (PIEtrace). The technique traces and virtualizes a regular program execution that is platform dependent, and generates a stand-alone program called the trace program. Running the trace program re-generates the original execution. The trace program execution is entirely independent of the underlying operating system and libraries, so that it can be compiled and executed on arbitrary platforms. As such, it can be analyzed by a third party tool on a platform preferred by the tool.

The group demonstrated that buggy executions of real-world Windows and sensor applications can be traced and virtualized by PIEtrace, and later analyzed by existing Linux debugging tools. The focus of the paper is to improve software dependability unique from the many that have been developed and are difficult to apply in practice, because their system and library requirements are incompatible with those of the subject software.

The team's work is supported by Defense Advanced Research Projects Agency (DARPA) under the Binary Executable Transforms (BET) program. The award will be presented at the 28th International Conference on Automated Software Engineering (ASE) conference in Palo Alto, California, November 11-15.

Each year, the conference brings together researchers and practitioners from academia and industry to discuss foundations, techniques and tools for automating the analysis, design, implementation, testing, and maintenance of large software systems. Contributions are required to describe significant, original, and unpublished results for submission in three categories-technical research, experience, and new ideas.

Source: Xiangyu Zhang, (765)496-9415; xyzhang@purdue.edu