skip to main content
10.1145/1181775acmconferencesBook PagePublication PagesfseConference Proceedingsconference-collections
SIGSOFT '06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
ACM2006 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
SIGSOFT06/FSE-14: SIGSOFT 2006 -14th International Symposium on the Foundations of Software Engineering Portland Oregon USA November 5 - 11, 2006
ISBN:
978-1-59593-468-0
Published:
05 November 2006
Sponsors:
Next Conference
Bibliometrics
Skip Abstract Section
Abstract

Welcome to SIGSOFT 2006 and the Fourteenth ACM SIGSOFT Symposium on Foundations of Software Engineering.FSE is a premier conference for research in software engineering theory and practice, and the flagship conference sponsored solely by ACM SIGSOFT. FSE has traditionally been a highly selective venue, and this year was no exception. We received 125 submissions from the global software engineering research community on a wide range of topics. Each paper was reviewed by at least 3 members of the technical program committee, composed of leading researchers with a wide range of research interests and, like the authors, drawn from a vibrant world-wide research community. Based on their reviews, about 50 papers were selected for discussion during a program committee meeting held at Rutgers University. Collegial but spirited face-to-face discussion over a period of two days led to the final selection of 30 papers that you see in these proceedings.

Skip Table Of Content Section
SESSION: Empirical methods and program understanding
Article
Using task context to improve programmer productivity

When working on a large software system, a programmer typically spends an inordinate amount of time sifting through thousands of artifacts to find just the subset of information needed to complete an assigned task. All too often, before completing the ...

Article
Work experience versus refactoring to design patterns: a controlled experiment

Program refactoring using design patterns is an attractive approach for facilitating anticipated changes. Its benefit depends on at least two factors, namely the effort involved in the refactoring and how effective it is. For example, the benefit would ...

Article
Questions programmers ask during software evolution tasks

Though many tools are available to help programmers working on change tasks, and several studies have been conducted to understand how programmers comprehend systems, little is known about the specific kinds of questions programmers ask when evolving a ...

SESSION: Mining failures and bugs
Article
Memories of bug fixes

The change history of a software project contains a rich collection of code changes that record previous development experience. Changes that fix bugs are especially interesting, since they record both the old buggy code and the new fixed code. This ...

Article
Failure proximity: a fault localization-based approach

Recent software systems usually feature an automated failure reporting system, with which a huge number of failing traces are collected every day. In order to prioritize fault diagnosis, failing traces due to the same fault are expected to be grouped ...

Article
Finding failure-inducing changes in java programs using change classification

Testing and code editing are interleaved activities during program development. When tests fail unexpectedly, the changes that caused the failure(s) are not always easy to find. We explore how change classification can focus programmer attention on ...

SESSION: Program analysis
Article
How is aliasing used in systems software?

We present a study of all sources of aliasing in over one million lines of C code, identifying in the process the common patterns of aliasing that arise in practice. We find that aliasing has a great deal of structure in real programs and that just nine ...

Article
Dynamic slicing long running programs through execution fast forwarding

Fixing runtime bugs in long running programs using trace based analyses such as dynamic slicing was believed to be prohibitively expensive. In this paper, we present a novel execution fast forwarding technique that makes this feasible. While a naive ...

Article
Controlling factors in evaluating path-sensitive error detection techniques

Recent advances in static program analysis have made it possible to detect errors in applications that have been thoroughly tested and are in wide-spread use. The ability to find errors that have eluded traditional validation methods is due to the ...

SESSION: Formal approaches to programming
Article
Interpolation for data structures

Interpolation based automatic abstraction is a powerful and robust technique for the automated analysis of hardware and software systems. Its use has however been limited to control-dominated applications because of a lack of algorithms for computing ...

Article
SYNERGY: a new algorithm for property checking

We consider the problem if a given program satisfies a specified safety property. Interesting programs have infinite state spaces, with inputs ranging over infinite domains, and for these programs the property checking problem is undecidable. Two broad ...

Article
Bit level types for high level reasoning

Bitwise operations are commonly used in low-level systems code to access multiple data fields that have been packed into a single word. Program analysis tools that reason about such programs must model the semantics of bitwise operations precisely in ...

SESSION: Empirical studies
Article
An empirical study of regression testing techniques incorporating context and lifetime factors and improved cost-benefit models

Regression testing is an important but expensive activity, and a great deal of research on regression testing methodologies has been performed. In recent years, much of this research has emphasized empirical studies, including evaluations of the ...

Article
Exceptions and aspects: the devil is in the details

It is usually assumed that the implementation of exception handling can be better modularized by the use of aspect-oriented programming (AOP). However, the trade-offs involved in using AOP with this goal are not well-understood. This paper presents an ...

Article
Detecting increases in feature coupling using regression tests

Repeated changes to a software system can introduce small weaknesses such as unplanned dependencies between different parts of the system. While such problems usually go undetected, their cumulative effect can result in a noticeable decrease in the ...

SESSION: Safety and security
Article
Using positive tainting and syntax-aware evaluation to counter SQL injection attacks

SQL injection attacks pose a serious threat to the security of Web applications because they can give attackers unrestricted access to databases that contain sensitive information. In this paper, we propose a new, highly automated approach for ...

Article
Local analysis of atomicity sphere for B2B collaboration

Atomicity is a desirable property for business processes to conduct transactions in Business-to-Business (B2B) collaboration. Although it is possible to reason about atomicity of B2B collaboration using the public views, yet such reasoning requires the ...

SESSION: Requirements modeling
Article
Scenarios, goals, and state machines: a win-win partnership for model synthesis

Models are increasingly recognized as an effective means for elaborating requirements and exploring designs. For complex systems, model building is far from an easy task. Efforts were therefore recently made to automate parts of this process, notably, ...

Article
User guidance for creating precise and accessible property specifications

Property specifications concisely describe aspects of what a system is supposed to do. No matter what notation is used to describe them, however, it is difficult to represent these properties correctly, since there are often subtle, but important, ...

Article
From multi-modal scenarios to code: compiling LSCs into aspectJ

We exploit the main similarity between the aspect-oriented programming paradigm and the inter-object, scenario-based approach to specification in order to construct a new way of executing systems based on the latter. Specifically, we show how to compile ...

SESSION: Testing
Article
Simulation-based test adequacy criteria for distributed systems

Developers of distributed systems routinely construct discrete-event simulations to help understand and evaluate the behavior of inter-component protocols. Simulations are abstract models of systems and their environments, capturing basic algorithmic ...

Article
Testing context-aware middleware-centric programs: a data flow approach and an RFID-based experimentation

Pervasive context-aware software is an emerging kind of application. Many of these systems register parts of their context-aware logic in the middleware. On the other hand, most conventional testing techniques do not consider such kind of application ...

Article
Carving differential unit test cases from system test cases

Unit test cases are focused and efficient. System tests are effective at exercising complex usage patterns. Differential unit tests (DUT) are a hybrid of unit and system tests. They are generated by carving the system components, while executing a ...

SESSION: Specification mining
Article
SMArTIC: towards building an accurate, robust and scalable specification miner

Improper management of software evolution, compounded by imprecise, and changing requirements, along with the "short time to market" requirement, commonly leads to a lack of up-to-date specifications. This can result in software that is characterized by ...

Article
Lightweight extraction of syntactic specifications

A method for extracting syntactic specifications from heap-manipulating code is described. The state of the heap is represented as an environment mapping each variable or field to a relational expression. A procedure is executed symbolically, obtaining ...

Contributors
  • University of Oregon
  • University of California, Davis

Recommendations

Acceptance Rates

Overall Acceptance Rate17of128submissions,13%
YearSubmittedAcceptedRate
SIGSOFT '02/FSE-101281713%
Overall1281713%