ADVANCED AND RAPID DEVELOPMENT OF DYNAMIC ANALYSIS TOOLS FOR JAVA

dc.contributor.authorAlex Villazón
dc.contributor.authorDanilo Ansaloni
dc.contributor.authorPhilippe Moret
dc.coverage.spatialBolivia
dc.date.accessioned2026-03-22T18:51:33Z
dc.date.available2026-03-22T18:51:33Z
dc.date.issued2012
dc.description.abstractLow-level bytecode instrumentation techniques are widely used in many software-engineering tools for the Java Virtual Machine (JVM), that perform some form of dynamic program analysis, such as profilers or debuggers. While program manipulation at the bytecode level is very flexible, because the possible bytecode transformations are not restricted, tool development based on this technique is tedious and error-prone. As a promising alternative, the specification of bytecode instrumentation at a higher level using aspect-oriented programming (AOP) can reduce tool development time and cost. Unfortunately, prevailing AOP frameworks lack some features that are essential for certain dynamic analyses. In this article, we focus on three common shortcomings in AOP frameworks with respect to the development of aspect-based tools - (1) the lack of mechanisms for passing data between woven advices in local variables, (2) the support for user-defined static analyses at weaving time, and (3) the absence of pointcuts at the level of individual basic blocks of code. We propose @J, an annotation-based AOP language and weaver that integrates support for these three features. The benefits of the proposed features are illustrated with concrete examples.
dc.identifier.urihttps://doaj.org/article/86614c120887447bb19e2639b88e5a86
dc.identifier.urihttps://andeanlibrary.org/handle/123456789/72615
dc.language.isoen
dc.relation.ispartofSHILAP Revista de lepidopterología
dc.sourceUniversidad Privada Boliviana
dc.subjectJava
dc.subjectComputer science
dc.subjectDevelopment (topology)
dc.subjectSoftware engineering
dc.titleADVANCED AND RAPID DEVELOPMENT OF DYNAMIC ANALYSIS TOOLS FOR JAVA
dc.typearticle

Files