Campus Units

Computer Science

Document Type

Article

Publication Version

Accepted Manuscript

Publication Date

8-2010

Journal or Book Title

ACM Transactions on Software Engineering and Methodology (TOSEM)

Volume

20

Issue

2

First Page

5:1

Last Page

5:42

DOI

10.1145/1824760.1824762

Abstract

The emergence of aspect-oriented programming (AOP) languages has provided software designers with new mechanisms and strategies for decomposing programs into modules and composing modules into systems. What we do not yet fully understand is how best to use such mechanisms consistent with common modularization objectives such as the comprehensibility of programming code, its parallel development, dependability, and ease of change. The main contribution of this work is a new form of information-hiding interface for AOP that we call the crosscut programming interface, or XPI. XPIs abstract crosscutting behaviors and make these abstractions explicit. XPIs can be used, albeit with limited enforcement of interface rules, with existing AOP languages, such as AspectJ. To evaluate our notion of XPIs, we have applied our XPI-based design methodology to a medium-sized network overlay application called Hypercast. A qualitative and quantitative analysis of existing AO design methods and XPI-based design method shows that our approach produces improvements in program comprehensibility, in opportunities for parallel development, and in the ease when code can be developed and changed.

Comments

The article is published as Sullivan, Kevin, William G. Griswold, Hridesh Rajan, Yuanyuan Song, Yuanfang Cai, Macneil Shonle, and Nishit Tewari. "Modular aspect-oriented design with XPIs." ACM Transactions on Software Engineering and Methodology (TOSEM) 20, no. 2 (2010): 5. DOI: 10.1145/1824760.1824762. Posted with permission.

Rights

© ACM, 2010 This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Modular aspect-oriented design with XPIs." ACM Transactions on Software Engineering and Methodology (TOSEM) 20, no. 2 (2010). https://doi.org/10.1145/1824760.1824762

Copyright Owner

ACM

Language

en

File Format

application/pdf

Published Version

Share

COinS