As part of the evolution of software systems, effort is often invested to discover in what parts of the source code a feature (or other concern) is implemented. Unfortunately, kn...
Middleware becomes increasingly important in building distributed applications. Conventional middleware systems are designed, implemented, and packaged before applications are dev...
Constraints in predicate or relational logic can be translated into boolean logic and solved with a SAT solver. For faster solving, it is common to exploit the typing of predicate...
Jonathan Edwards, Daniel Jackson, Emina Torlak, Vi...
A long-standing goal of software engineering is to construct software that is easily modified and extended. Recent advances in software design techniques, such as aspect-oriented ...
Program differencing tools such as GNU diff identify individual differences but do not determine how those differences are related to each other. For example, an extract super...