Program slicing is a fundamental operation for many software engineering tools. Currently, the most efficient algorithm for interprocedural slicing is one that uses a program repr...
Thomas W. Reps, Susan Horwitz, Shmuel Sagiv, Genev...
A dependence model for reverse engineering should treat procedures in a modular fashion and should be fine-grained, distinguishing dependences that are due to different variables....
In this paper we present an approach, based on data ow analysis, that can provide cost-e ective analysis of concurrent programs with respect to explicitly stated correctness prope...
Testing is potentially the best grounded part of software engineering, since it deals with the well defined situation of a fixed program and a test (a finite collection of input v...
1 P2 is a scalable compiler for collection data structures. High-level ions insulate P2 users from data structure implementation details. By specifying a target data structure as a...
As the design of software architectures emerges as a discipline within software engineering, it will become increasingly important to support architectural description and analysi...
This paper describes LCLint, an efficient and flexible tool that accepts as input programs (written in ANSI C) and various levels of formal specification. Using this information, ...
David Evans, John V. Guttag, James J. Horning, Yan...