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

Authors

    Authors

    H. Rebelo; R. Lima; G. T. Leavens; M. Cornelio; A. Mota;C. Oliveira

    Comments

    Authors: contact us about adding a copy of your work at STARS@ucf.edu

    Abbreviated Journal Title

    Sci. Comput. Program.

    Keywords

    Aspect-oriented programming; Program transformation; JML; DESIGN; Computer Science, Software Engineering

    Abstract

    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.

    Journal Title

    Science of Computer Programming

    Volume

    78

    Issue/Number

    8

    Publication Date

    1-1-2013

    Document Type

    Article; Proceedings Paper

    Language

    English

    First Page

    1137

    Last Page

    1156

    WOS Identifier

    WOS:000320742200011

    ISSN

    0167-6423

    Share

    COinS