Hammock-based Identification of Changes in Advice Applications between Aspect-oriented Programs

被引:0
作者
Katic, Marija
机构
来源
PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING (ENASE) | 2019年
关键词
Aspect-oriented Programming; Program Differencing; CFG Comparison; Hammock; Hammock Graphs;
D O I
10.5220/0007747504420451
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In an aspect-oriented program, the cross-cutting functionalities are defined in pieces of advice such that they apply to program-execution points for the core functionalities. Program changes can affect the application of pieces of advice. To that end, a source-code differencing tool, for two versions of an aspect-oriented program, needs to support the identification of changes in pieces of advice at locations of their applications. To alleviate this task, we introduce an extension of the existing differencing technique for object-oriented programs. We implemented a tool AjDiff and used it to evaluate our technique on the two examples of aspect-oriented programs: Tracing and Telecom. We manually verified that our tool can successfully identify changes in pieces of advice at locations of their application.
引用
收藏
页码:442 / 451
页数:10
相关论文
共 28 条
  • [1] Aho A.V., 2006, Compilers: principles, techniques, and tools, Vsecond
  • [2] JDiff: A differencing technique and tool for object-oriented programs
    Apiwattanapong, Taweesup
    Orso, Alessandro
    Harrold, Mary Jean
    [J]. AUTOMATED SOFTWARE ENGINEERING, 2007, 14 (01) : 3 - 36
  • [3] Arnold R.S, 1996, Software Change Impact Analysis
  • [4] Helping Developers Help Themselves: Automatic Decomposition of Code Review Changesets
    Barnett, Mike
    Bird, Christian
    Brunet, Joao
    Lahiri, Shuvendu K.
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 1, 2015, : 134 - 144
  • [5] Bemardi Mario Luca, 2007, 2007 IEEE International Conference on Software Maintenance, P435
  • [6] Coady Y., 2001, Software Engineering Notes, V26, P88, DOI 10.1145/503271.503223
  • [7] Falleri J., 2014, P 29 INT C AUTOMATED, P313, DOI DOI 10.1145/2642937.2642982
  • [8] THE PROGRAM DEPENDENCE GRAPH AND ITS USE IN OPTIMIZATION
    FERRANTE, J
    OTTENSTEIN, KJ
    WARREN, JD
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1987, 9 (03): : 319 - 349
  • [9] Change distilling:: Tree differencing for fine-grained source code change extraction
    Fluri, Beat
    Wuersch, Michael
    Pinzger, Martin
    Gall, Harald C.
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2007, 33 (11) : 725 - 743
  • [10] Görg MT, 2009, ISSTA 2009: INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, P25