Optimizing generated aspect-oriented assertion checking code for JML using program transformations: An empirical study

被引:0
|
作者
Rebelo, Henrique [1 ]
Lima, Ricardo [1 ]
Leavens, Gary T. [2 ]
Cornelio, Marcio [1 ]
Mota, Alexandre [1 ]
Oliveira, Cesar [1 ]
机构
[1] Univ Fed Pernambuco, Informat Ctr, BR-50740540 Recife, PE, Brazil
[2] Univ Cent Florida, Dept Elect Engn & Comp Sci, Orlando, FL 32816 USA
基金
美国国家科学基金会;
关键词
Aspect-oriented programming; Program transformation; JML; DESIGN;
D O I
10.1016/j.scico.2012.09.003
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The AspectJ JML compiler (ajmlc) explores aspect-oriented programming (AOP) mechanisms to implement JML specifications, such as pre- and postconditions, and enforce them during runtime. This compiler was created to improve source-code modularity. Some experiments were conducted to evaluate the performance of the code generated through ajmlc. Results demonstrated that the strategy of adopting AOP to implement JML specifications is very promising. However, there is still a need for optimization of the generated code's bytecode size and running time. This paper presents a catalog of transformations which represent the optimizations implemented in the new optimized version of the ajmlc compiler. We employ such transformations to reduce the bytecode size and running time of the code generated through the ajmlc compiler. Aiming at demonstrating the impact of such transformation on the code quality, we conduct an empirical study using four applications in optimized and non-optimized versions generated by ajmlc. We show that our AOP transformations provide a significant improvement, regarding bytecode size and running time. (C) 2012 Elsevier B.V. All rights reserved.
引用
收藏
页码:1137 / 1156
页数:20
相关论文
共 19 条
  • [1] An empirical study of aspect-oriented metrics
    Piveta, Eduardo Kessler
    Moreira, Ana
    Pimenta, Marcelo Soares
    Araujo, Joao
    Guerreiro, Pedro
    Tom Price, R.
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2012, 78 (01) : 117 - 144
  • [2] An Empirical Study on the Impact of Aspect-oriented Model-driven Code Generation
    Menolli, Andre
    Melo, Luan de Souza
    Arimoto, Mauricio Massaru
    Malucelli, Andreia
    [J]. ICEIS: PROCEEDINGS OF THE 23RD INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS - VOL 2, 2021, : 275 - 282
  • [3] Does Aspect-Oriented Programming Increase the Development Speed for Crosscutting Code? An Empirical Study
    Hanenberg, Stefan
    Kleinschmager, Sebastian
    Josupeit-Walter, Manuel
    [J]. ESEM: 2009 3RD INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT, 2009, : 156 - 167
  • [4] Using Aspect-Oriented Programming to Trace Imperative Transformations
    Amar, Bastien
    Leblanc, Herve
    Coulette, Bernard
    Nebut, Clementine
    [J]. 2010 14TH IEEE INTERNATIONAL ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE (EDOC 2010), 2010, : 143 - 152
  • [5] Checking Interface Interaction Protocols Using Aspect-oriented Programming
    Anh-Hoang Truong
    Thanh-Binh Trinh
    Dang Van Hung
    Viet-Ha Nguyen
    Nguyen Thi Thu Trang
    Pham Dinh Hung
    [J]. SEFM 2008: SIXTH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND FORMAL METHODS, PROCEEDINGS, 2008, : 382 - +
  • [6] Inquiring the Usage of Aspect-Oriented Programming: An Empirical Study
    Munoz, Freddy
    Baudry, Benoit
    Delamare, Romain
    Le Traon, Yves
    [J]. 2009 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, CONFERENCE PROCEEDINGS, 2009, : 137 - +
  • [7] An empirical study of maintainability in aspect-oriented system evolution using coupling metrics
    Shen, Haihao
    Zhang, Sai
    Zhao, Jianjun
    [J]. TASE 2008: SECOND IFIP/IEEE INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING, PROCEEDINGS, 2008, : 233 - 236
  • [8] Aspect-Oriented Approach to Operating System Development Empirical Study
    Kuusela, Jaakko
    Tuominen, Harri
    [J]. ADVANCES TECHNIQUES IN COMPUTING SCIENCES AND SOFTWARE ENGINEERING, 2010, : 233 - +
  • [9] Aspect-oriented model-driven code generation: A systematic mapping study
    Mehmood, Abid
    Jawawi, Dayang N. A.
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2013, 55 (02) : 395 - 411
  • [10] Program slicing tool for effective software evolution using aspect-oriented technique
    Ishio, T
    Kusumoto, S
    Inoue, K
    [J]. SIXTH INTERNATIONAL WORKSHOP ON PRINCIPLES OF SOFTWARE EVOLUTION, PROCEEDINGS, 2003, : 3 - 12