Brittle systems will break - not bend: can aspect-oriented programming help?

  • Authors:
  • Yvonne Coady;Gregor Kiczales;Joon Suan Ong;Andrew Warfield;Michael Feeley

  • Affiliations:
  • University of British Columbia;University of British Columbia;University of British Columbia;University of British Columbia;University of British Columbia

  • Venue:
  • EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

As OS code moves to new settings, it must be continually reshaped. Kernel code however, is notoriously brittle -- a small, seemingly localized change can break disparate parts of the system simultaneously. The problem is that the implementation of some system concerns are not modular because they naturally crosscut the system structure.Aspect-oriented programming proposes new mechanisms to enable the modular implementation of cross-cutting concerns. This paper evaluates aspect-oriented programming in the context of two crosscutting concerns in a FreeBSD 4.4 kernel -- page daemon activation and disk quotas. The ways in which aspects allowed us to make these implementations modular, the impact they have on comprehensibility and configurability, and the costs associated with supporting a prototype of an aspect-oriented runtime environment are presented.