Silvia Breu and Jens Krinke. Aspect mining using event traces. In
Proc. of the Conference on Automatic Software Engineering, 2004.
This project uses dynamic execution traces to infer crosscutting. A trace consists of the method execution tree (left-right ordered computation tree) of the program, given a particular set of inputs.
Four types of relations are defined on the computation tree:
outside-before-execution(
a,
b) :
a is the first left sibling of
b.
outside-after-execution(
a,
b) :
a is the first right sibling of
b.
inside-first-execution(
a,
b) :
b is the first child of
a.
inside-last-execution(
a,
b) :
b is the last child of
a.
Crosscutting is determined to occur whenever a relation,
R, occurs more than once in the program. Additionally, for all
a and
b,
R (
a,
b) must be true.
-- Main.wohlstad - 11 May 2005