Aspectual Collaborations for Collaboration-Oriented Concerns

Karl Lieberherr, Northeastern University
David H. Lorenz, Northeastern University
Johan Ovlinger, Northeastern University

Aspect-oriented programming (AOP) controls tangling of concerns by isolating aspects that cross-cut each other into building blocks. Component-based programming supports software development by isolating reusable building blocks that can be assembled and connected in many different ways. We show how these concepts can be integrated by introducing a new component construct for programming called aspectual collaborations. We explore how these collaborations can be deployed, composed, and reused. Aspectual collaborations allow us to capture, in separately compiled units, cross-cutting behavior such as intercessionary advice, exception handling, invariants, and generic behavior. These compiled units can then be flexibly deployed once or several times into base applications or composed with other collaborations. The implementation of a weaver compiler for aspectual collaboration is described.

Technical Report NU-CCS-01-08, College of Computer Science, Northeastern University, November 2001. This research was partially supported by the National Science Foundation under award number CCR-0098643.


NU-CCS-01-08.ps.gz (124k)
NU-CCS-01-08.pdf (316k)
NU-CCS-01-08.dvi (104k)


@TechReport{Lieberherr:2001:ACC,
  Title       = "Aspectual Collaborations for Collaboration-Oriented Concerns",
  Author      = "Karl Lieberherr and David~H. Lorenz and Johan Ovlinger",
  Number      = "{NU-CCS-01-08}",
  Institution = "College of Computer Science, Northeastern University",
  Address     = "Boston, MA 02115",
  Month       = nov,
  Year        = 2001,
  URL         = "http://www.ccs.neu.edu/home/lorenz/papers/reports/NU-CCS-01-08.html",
}

Other papers