Dynamic aspect mining
Dynamic aspect mining
- Author(s): M. Ceccato and P. Tonella
- DOI: 10.1049/iet-sen.2008.0108
For access to this article, please select a purchase option:
Buy article PDF
Buy Knowledge Pack
IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.
Thank you
Your recommendation has been sent to your librarian.
- Author(s): M. Ceccato 1 and P. Tonella 1
-
-
View affiliations
-
Affiliations:
1: Fondazione Bruno Kessler, Trento, Italy
-
Affiliations:
1: Fondazione Bruno Kessler, Trento, Italy
- Source:
Volume 3, Issue 4,
August 2009,
p.
321 – 336
DOI: 10.1049/iet-sen.2008.0108 , Print ISSN 1751-8806, Online ISSN 1751-8814
- « Previous Article
- Table of contents
- Next Article »
Legacy systems often contain several crosscutting concerns that could potentially benefit from an aspect-oriented programming implementation. In this paper, we focus on the problem of aspect identification in existing code. The main idea is that use-cases can be defined in order to separate the base logics from the crosscutting concerns to be aspectised. The relationship between the execution traces associated with the use-cases and the executed computational units (class methods) is analysed through concept analysis. The results obtained on some case studies are discussed in the paper.
Inspec keywords: data mining; software engineering; object-oriented programming
Other keywords:
Subjects: Object-oriented programming; Knowledge engineering techniques; Software engineering techniques
References
-
-
1)
- I. Jacobson . Use cases and aspects – working seamlessly together. J. Object Technol. , 4 , 7 - 28
-
2)
- van Deursen, A., Marin, M., Moonen, L.: `Aspect mining and refactoring', Proc. First Int. Workshop on Refactoring: Achievements, Challenges, Effects (REFACE), with WCRE, November 2003, Waterloo, Canada.
-
3)
- Bruntink, M., van Deursen, A., Tourwé, T., van Engelen, R.: `An evaluation of clone detection techniques for identifying crosscutting concerns', Proc. Int. Conf. Software Maintenance (ICSM), September 2004, p. 200–209.
-
4)
- D. Binkley , M. Ceccato , M. Harman , F. Ricca , P. Tonella . Tool-supported refactoring of existing object-oriented code into aspects. IEEE Trans. Softw. Eng. , 9 , 698 - 717
-
5)
- Shepherd, D., Pollock, L.: `Interfaces, aspects and views', Linking Aspect Technology and Evolution (LATE) Workshop, 2005.
-
6)
- B. Nora , G. Said , A. Fadila . A comparative classification of aspect mining approaches. J. Comput. Sci. , 4 , 322 - 325
-
7)
- Robillard, M.P., Murphy, G.C.: `Concern graphs: finding and describing concerns using structural program dependencies', Proc. 24th Int. Conf. Software Engineering (ICSE), May 2002, Orlando, FL, USA, p. 406–416.
-
8)
- M. Ceccato , M. Marin , K. Mens , L. Moonen , P. Tonella , T. Tourwé . Applying and combining three different aspect mining techniques. Softw. Qual. J. , 3 , 209 - 231
-
9)
- N. Wilde , M. Buckellew , H. Page , V. Rajlich , L. Pounds . A comparison of methods for locating features in legacy software. J. Syst. Softw. , 2 , 105 - 114
-
10)
- N. Wilde , M.C. Scully . Software reconnaissance: mapping program features to code. J. Softw. Maint.: Res. Pract. , 49 - 62
-
11)
- Dekel, U., Gil, Y.: `Revealing class structure with concept lattices', Proc. Working Conf. Reverse Engineering (WCRE), November 2003, Victoria, BC, Canada, p. 353–365.
-
12)
- Tourwe, T., Mens, K.: `Mining aspectual views using formal concept analysis', Proc. Fourth IEEE Int. Workshop on Source Code Analysis and Manipulation (SCAM 2004), September 2004, Chicago, IL, USA, p. 97–106.
-
13)
- Loughran, N., Rashid, A.: `Mining aspects', Proc. Workshop on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design (with AOSD), April 2002, Enschede, The Netherlands.
-
14)
- Tonella, P., Ceccato, M.: `Aspect mining through the formal concept analysis of execution traces', Proc. 11th Working Conf. Reverse Engineering (WCRE), November 2004, p. 112–121.
-
15)
- Marin, M., van Deursen, A., Moonen, L.: `Identifying aspects using fan-in analysis', Proc. 11th IEEE Working Conf. Reverse Engineering (WCRE 2004), November 2004, Delft, The Netherlands, p. 132–141.
-
16)
- Rashid, A., Moreira, A.M.D., Araújo, J.: `Modularisation and composition of aspectual requirements', Proc. Second Int. Conf. Aspect-Oriented Software Development (AOSD), March 2003, Boston, MA, USA, p. 11–20.
-
17)
- G. Snelting , F. Tip . Reengineering class hierarchies using concept analysis. ACM Trans. Programming Lang. Syst. , 3 , 540 - 582
-
18)
- Shepherd, D., Tourwé, T., Pollock, L.: `Using language clues to discover crosscutting concerns', Workshop on the Modeling and Analysis of Concerns, 2005.
-
19)
- I. Kiselev . (2002) Aspect-oriented programming with AspectJ.
-
20)
- P. Tonella , M. Ceccato . Refactoring the aspectizable interfaces: an empirical assessment. IEEE Trans. Softw. Eng. , 10 , 819 - 832
-
21)
- Al-Ekram, R., Kontogiannis, K.: `Source code modularization using lattice of concept slices', Proc. Eighth European Conf. Software Maintenance and Reengineering (CSMR 2004), March 2004, Tampere, Finland, p. 195–203.
-
22)
- B. Ganter , R. Wille . (1996) Formal concept analysis.
-
23)
- Monteiro, M.P., Fernandes, J.M.: `Towards a catalog of aspect-oriented refactorings', Proc. fourth Int. Conf. Aspect-Oriented Software Development (AOSD), March 2005, p. 111–122.
-
24)
- Gybels, K., Kellens, A.: `Experiences with identifying aspects in Smalltalk using ‘unique methods', Workshop on Linking Aspect Technology and Evolution, 2005.
-
25)
- Griswold, W.G., Yuan, J.J., Kato, Y.: `Exploiting the map metaphor in a tool for software evolution', Proc. 2001 Int. Conf. Software Engineering (ICSE), March 2001, Toronto, Canada, p. 265–274.
-
26)
- Shepherd, D., Gibson, E., Pollock, L.: `Design and evaluation of an automated aspect mining tool', Int. Conf. Software Engineering Research and Practice, April 2004.
-
27)
- He, L., Bai, H., Zhang, J., Hu, C.Q.: `Amuca algorithm for aspect mining', Proc. Software Engineering and Knowledge Engineering (SEKE), 2005.
-
28)
- Borba, P., Soares, S.: `Refactoring and code generation tools for AspectJ', Proc. Workshop on Tools for Aspect-Oriented Software Development (with OOPSLA), November 2002, Seattle, WA, USA.
-
29)
- A. Kellens , K. Mens , P. Tonella . A survey of automated code-level aspect mining techniques. Trans. Aspect Oriented Softw. Dev. , 145 - 164
-
30)
- M. Fowler . (1999) Refactoring: improving the design of existing code.
-
31)
- Janzen, D., Dc Volder, K.: `Navigating and querying code without getting lost', Proc. Second Int. Conf. Aspect- Oriented Software Development (AOSD), March 2003, Boston, Massachusetts, USA, p. 178–187.
-
32)
- T. Eisenbarth , R. Koschke , D. Simon . Locating features in source code. IEEE Trans. Softw. Eng. , 3 , 195 - 209
-
33)
- Robillard, M.P., Weigand-Warr, F.: `Concernmapper: simple view-based separation of scattered concerns', Eclipse'05: Proc. 2005 OOPSLA Workshop on Eclipse Technology eXchange, 2005, New York, NY, USA, p. 65–69.
-
34)
- Hannemann, J., Kiczales, G.: `Overcoming the prevalent decomposition of legacy code', Proc. Workshop on Advanced Separation of Concerns at the Int. Conf. Software Engineering (ICSE), 2001, Toronto, Canada.
-
35)
- Harman, M., Gold, N., Hierons, R.M., Binkley, D.: `Code extraction algorithms which unify slicing and concept assignment', Proc. ninth Working Conf. Reverse Engineering (WCRE 2002), November 2002, Richmond, VA, USA, p. 11–21.
-
36)
- Breu, S., Krinke, J.: `Aspect mining using event traces', Proc. of Automated Software Engineering (ASE 2004), September 2004, Linz, Austria, p. 310–315.
-
37)
- Kiczales, G., Lamping, J., Mendhekar, A.: `Aspect oriented programming', Proc. 11th European Conf. Object Oriented Programming (ECOOP), Springer-Verlag, p. 220–242, 1997 (LNCS, 1241.
-
1)