Crosscutting concerns consist in software system features having the implementation spread across modules as tangled and scattered code. In many cases, these crosscutting concerns...
Lerina Aversano, Luigi Cerulo, Massimiliano Di Pen...
Many tasks in source code analysis can be viewed as evaluating queries over a relational representation of the code. Here we present an object-oriented query language, named .QL, ...
Oege de Moor, Mathieu Verbaere, Elnar Hajiyev, Pav...
Java bytecode instrumentation is a widely used technique, especially for profiling purposes. In order to ensure the instrumentation of all classes in the system, including dynami...
In the current demonstration we present a new tool which increases the level of understanding and the accuracy of design quality assessment within enterprise systems. This is perf...
To encourage open source/libre software development, it is desirable to have tools that can help to identify open source license violations. This paper describes the implementatio...
Program dependence graphs are a well-established device to represent possible information flow in a program. Path conditions in dependence graphs have been proposed to express mo...
Clones are code segments that have been created by copying-and-pasting from other code segments. Clones occur often in large software systems. It is reported that 5 to 50% of the ...
Slice-based metrics for cohesion have been defined and examined for years. However, if a module with low cohesion has been identified, the metrics cannot help the maintainer to ...