Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2009.16-D.1.83

Method and Application of Searching Hot Spot For Reengineering Software Using AOP  

Lee, Ei-Sung (동국대학교 컴퓨터공학)
Choi, Eun-Man (동국대학교 IT학부 컴퓨터공학)
Abstract
Complicated business logic makes program complexity more complicated. It's inevitable that the program must undergo reengineering processes all the way of in its lifetime. Hot spot analysis that has diverse purposes is getting an important question more and more. As a rule, reengineering process is done by UML model-based approach to analyze the legacy system. The smallest fragment of targets to be analysed is unit, that is function or class. Today's software development is to deal with huge change of software product and huge class including heavy quantity of LOC(Lines Of Code). However, analysis of unit is not precise approach process for reliable reengineering consequence. In this paper, we propose very precise hot spot analysis approach using Aspect-Oriented Programming languages, such as AspectJ. Typically the consistency between UML and source is needed code to redefine the modified library or framework boundaries. But reengineering approach using AOP doesn't need to analyze UML and source code. This approach makes dynamic event log data that contains detailed program interaction information. This dynamic event log data makes it possible to analyze hot spot.
Keywords
Reengineering; AOP; Hot Spot Analysis;
Citations & Related Records
연도 인용수 순위
  • Reference
1 M. M. Lehman and L.Belady. Program Evolution - Processes of Software Change, London Academic Press, 1985
2 Ot´avio Augusto Lazzarini Lemos, Cristina Videira Lopes, “Testing Aspect-Oriented Programming Pointcut Descriptors,” Proceedings of the 2nd Workshop on Testing Aspect- Oriented Programs, pp.33-38, 2006   DOI
3 J. S. Bekken, Roger T. Alexander. “A Candidate Fault Model for AspectJ Pointcuts,” Proceedings o 17th International Symposium on Software Reliability Engineering (ISSRE'06), pp.169-178, 2006   DOI
4 Lionel, C. Briand, Yvan Labiche, Johanne Leduc, “Tracing Distributed Systems Executions Using AspectJ,” Proceedings of the 21st IEEE International Conference on Software Maintenance (ICSM'05), pp.81-90, 2005   DOI
5 John Stamey, Jr.Bryan Saunders, “Unit Testing and Debugging with Aspects,” The Journal of Computing Sciences in Colleges, pp.47-55, 2005
6 L. C. Briand, Y. Labiche, L. O'Sullivan, “Impact Analysis and Change Management of UML Models,” Proceedings of the International Conference on Software Maintenance (ICSM'03), pp.256-265, Sept., 2003   DOI
7 Hassine, J.; Rilling, J.; Hewitt, J.; Dssouli, R., “Change Impact Analysis for Requirement Evolution using Use Case Maps,” Principles of Software Evolution Eighth International Workshop, pp.81-90, 2005   DOI
8 James R. Cody, Kevin A. Schneider, Thomas R. Dean, Andrew J. Malton, “HSML: design directed source code hot spots,” Proceedings of 9th International Workshop on Program Comprehension, pp.145-154, 2001   DOI
9 Xiangyu Zhang, Haifeng He, Neelam Gupta, Rajiv Gupta, “Experimental evaluation of using dynamic slices for fault location,” Proceedings of the sixth International Symposium on Automated Analysis-driven Debugging, pp.33-42, 2005   DOI
10 Cordy J.R, Schneider K.A, Dean T.R, Malton A.J, “HSML Design Directed source code Hot Spots,” IWPC 2001. Proceedings of 9th International Workshop on Program Comprehension, pp.145-154, 2001   DOI
11 Tao Xie, Jianjun Zhao, Darko Marinov, David Notkin, “Detecting Redundant Unit for AspecJ Programs,” 17th International Symposium on Software Reliability Engineering, pp.179-190, Nov., 2006   DOI
12 Isabel Michiels, “Using AOP Techniques for Dealing with Legacy Systems,” PROG, Vrije Universiteit Brussel (VUB), Belgium
13 “AspectJ - an aspect-oriented extention to the Java programming language” http://www.eclipse.org/aspecj/
14 Gerard Meszaros, xUNIT TEST PATTERNS :REFACTORING TEST CODE, Addison-Wesley, 2007
15 Xiangyu Zhang, “Dynamic Slicing Long Running Programs through Execution Fast Forwarding,” SIGSoft 06/FSE-14, November 5-11,2006   DOI
16 Kollmann, R.; Gogolla, M, “Capturing dynamic program behaviour with UML collaboration diagrams,” Fifth European Conference on Software Maintenance and Reengineering, pp.58-67, 2001   DOI
17 Dave Thomas, Andy Hunt, “Mock Objects,” IEEE Software, Volume 19, Issue 3, May-June, pp.22-24, 2002   DOI   ScienceOn
18 Jianjun Zhao, “Data-Flow-Based Unit Testing of Aspect-Oriented Programs,” Proceedings of the 27th Annual International Computer Software and Applications Conference, pp.188-197, 2003
19 L.C. Briand, Y.Labiche, L.O'Sullivan, “Impact Analysis and Change Management of UML Models,” Proceedings of International Conference on Software Maintenance, pp. 256-265, 2003
20 “Memoranda - open source cross-platform diary manager and a tool for scheduling personal projects,” http://memoranda.sourceforge.net/
21 F. Fioravanti, G. Migliarese, P. Nesi, “Reengineering Analysis of Object-Oriented System via Duplication Analysis,” Proceedings of the 23rd International Conference on Software Engineering, pp.577-586, 2001   DOI
22 Xiangyu Zhang, Gupta R, Youtao Zhang, “Precise dynamic slicing algorithms”, Proceedings of 25th International Conference on Software Engineering, pp.319-329, 2003
23 Ye Wu, Offutt, J, “Maintaining evolving component-based software with UML,” Proceedings of Seventh European Conference on Software Maintenance and Reengineering, pp.133-142, 2003   DOI