• DocumentCode
    2587710
  • Title

    VPA-Based Aspects: Better Support for AOP over Protocols

  • Author

    Nguyen, Dong Ha ; Sudhol, Mario

  • Author_Institution
    OBASCO project, Ecole des Mines de Nantes
  • fYear
    2006
  • fDate
    11-15 Sept. 2006
  • Firstpage
    167
  • Lastpage
    176
  • Abstract
    Aspect-oriented programming is a promising approach to the construction of large-scale software systems. The declarativeness of aspect definitions and support for verification of AO programs crucially depends on the expressiveness of the aspect languages used. Currently, a large spectrum of pointcut languages, i.e., the languages that define where aspects may apply modifications to an application, have been proposed. Their expressiveness ranges from regular expression languages, which, e.g., provide support for static interaction analysis, to context-free or turing complete languages, the latter almost without any support for analysis or verification. In this paper we investigate the use of visibly pushdown automata (VPA) [4] as a basis for an aspect language in order to enable more declarative aspect definitions (compared to regular approaches) for protocol like relationships and static verification of properties, in particular analysis of interactions among aspects. Concretely, we present four contributions: (i) we provide a set of examples motivating the use of VPA-based aspect definitions in the context of P2P systems, (ii) formally define a core aspect language for protocols with a VPA-based pointcut language, (iii) show that this language supports the analysis of interaction properties among aspects, and (iv) briefly present a freely available library implementing basic VPA operations, which we have used to analyze some interaction examples
  • Keywords
    object-oriented programming; peer-to-peer computing; program diagnostics; program verification; pushdown automata; AOP over protocols; P2P systems; aspect languages; aspect-oriented programming; large-scale software systems; pointcut languages; static interaction analysis; static verification; visibly pushdown automata; Access protocols; Application software; Automata; Large-scale systems; Libraries; Network servers; Programming; Software engineering; Software systems; Web server;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering and Formal Methods, 2006. SEFM 2006. Fourth IEEE International Conference on
  • Conference_Location
    Pune
  • Print_ISBN
    0-7695-2678-0
  • Type

    conf

  • DOI
    10.1109/SEFM.2006.39
  • Filename
    1698734