Paolo Tonella and Mariano Ceccato. Aspect mining through the formal concept analysis of execution traces. In _Proc. of the Working Conference on Reverse Engineering_, 2004. This project provides a visualization of method execution traces that may help programmers to determine aspects in their program. The use of "concept lattices" in this paper is not very deep (from a mathematical perspective), they simply provide a nice visualization for programmers. Several method execution traces are taken from different program executions. Each program execution is supposed to exercise a particular "use case". They assume these "use cases" correspond closely with the aspects you are looking for. Here is how it works: A concept lattice is a lattice over the domain (*o*, *a*). *o* is a subset of elements from the domain *O* and *a* is a subset of elements from the domain *A*. For this paper, you can think of *O* as "use cases" and *A* as "methods". _Bottom_ is defined as (*{}*, *A*), i.e. no use-cases and all methods. _Top_ is defined as (O, *{}*), i.e. all use-cases and no methods. _Least upper bound_ of (*o1*, *a1*) and (*o2*, *a2*) is (*o1* UNION *o2*, *a1* INTERSECT *a2*) So, as you go up the lattice you can start to see all the common methods between use-cases. Since they assume that there is a close relationship between "use cases" and aspects, you can use the lattice to find commonalities between "use cases" that may indicate crosscutting. This paper is probably more closely related to work on eliciting aspects from requirements, such as Elisa's Theme work, than to our goals. -- Main.wohlstad - 11 May 2005
This topic: SPL
>
WebHome
>
PhoenixProject
>
PhoenixProjectRelatedWork
>
AspectMiningThroughTheFormalConceptAnalysisOfExecutionTraces
Topic revision: r1 - 2005-05-11 - EricWohlstadter
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback