One of the most critical issues in large-scale software development and maintenance is the rapidly growing size and complexity of software systems. As a result of this rapid growt...
Change impact analysis aims at identifying software artifacts being affected by a change. In the past, this problem has been addressed by approaches relying on static, dynamic, a...
Michele Ceccarelli, Luigi Cerulo, Gerardo Canfora,...
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...
The FixCache algorithm, introduced in 2007, effectively identifies files or methods which are likely to contain bugs by analyzing source control repository history. However, many ...
Caitlin Sadowski, Chris Lewis 0002, Zhongpeng Lin,...
This paper introduces declarative event patterns (DEPs) as a means to implement protocols while improving their traceability, comprehensibility, and maintainability. DEPs are desc...