• DocumentCode
    2209744
  • Title

    MAJOR: Flexible tool development with aspect-oriented programming

  • Author

    Villazón, Alex ; Binder, Walter ; Moret, Philippe ; Ansaloni, Danilo

  • Author_Institution
    Fac. of Inf., Univ. of Lugano, Lugano, Switzerland
  • fYear
    2009
  • fDate
    20-26 Sept. 2009
  • Firstpage
    387
  • Lastpage
    388
  • Abstract
    Developing and maintaining tools for profiling, debugging, testing, and reverse engineering can be difficult when using low-level techniques, such as bytecode instrumentation. We promote tool development in Java using high-level aspect-oriented programming. We demonstrate that the use of aspects yields concise tools that are easy to develop, extend, and maintain, because low-level instrumentation details are hidden from the developer. We introduce MAJOR, a new tool for comprehensive aspect weaving, which ensures that aspects are woven into all classes executing in a Java Virtual Machine, including those in the standard Java class library. MAJOR includes the pluggable module CARAJillo, which supports efficient access to a complete and customizable calling context representation. Both distinguishing features of MAJOR - comprehensive aspect weaving and efficient access to complete calling information - are essential in the aforementioned domains.
  • Keywords
    Java; object-oriented programming; software libraries; software tools; virtual machines; CARAJillo pluggable module; Java virtual machine; MAJOR; bytecode instrumentation; calling context representation; comprehensive aspect weaving; debugging; flexible tool development; high-level aspect-oriented programming; low-level techniques; profiling; reverse engineering; standard Java class library; testing; tool development; Debugging; Informatics; Instruments; Java; Libraries; Reverse engineering; Runtime; Testing; Virtual machining; Weaving;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance, 2009. ICSM 2009. IEEE International Conference on
  • Conference_Location
    Edmonton, AB
  • ISSN
    1063-6773
  • Print_ISBN
    978-1-4244-4897-5
  • Electronic_ISBN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2009.5306316
  • Filename
    5306316