Modular Software Design with Crosscutting Interfaces

  • Authors:
  • William G. Griswold;Kevin Sullivan;Yuanyuan Song;Macneil Shonle;Nishit Tewari;Yuanfang Cai;Hridesh Rajan

  • Affiliations:
  • University of California, San Diego;University of Virginia;University of Virginia;University of California, San Diego;University of Virginia;University of Virginia;Iowa State University

  • Venue:
  • IEEE Software
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Aspect-oriented programming languages such as AspectJ offer new mechanisms for decomposing systems into modules and composing modules into systems. Common ways of using these mechanisms couple aspects to complex, changeable implementation details, which can compromise modularity. The crosscut programming interface (XPI) can significantly improve modularity in the design of programs employing AspectJ-style AOP. The use of XPIs doesn't limit the use of existing AOP mechanisms or require new ones, and the approach appears to generalize to other languages.This article is part of a special issue on aspect-oriented programming.