Back to the Future: A Retroactive Study of Aspect Evolution in Operating System Code

  • Authors:
  • Kiczales Yvonne Coady and Gregor

  • Affiliations:
  • -

  • Venue:
  • Back to the Future: A Retroactive Study of Aspect Evolution in Operating System Code
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The FreeBSD operating system more than doubled in size between version 2 and version 4. Many changes to primary modularity are easy to spot at a high-level. For example, new device drivers account for 38% of the growth. Not surprisingly, changes to crosscutting concerns are more difficult to track. In order to better understand how an aspect-oriented implementation would have fared during this evolution, we introduced several aspects to version 2 code, and then rolled them forward into their subsequent incarnations in versions 3 and 4 respectively. This paper describes the impact evolution had on these concerns, and provides a comparative analysis of the changes required to evolve the original versus aspect-oriented implementations. Our results show that for the concerns we chose, the aspect-oriented implementation facilitated evolution in four key ways: (1) changes were better localized, (2) configurability was more explicit, (3) redundancy was reduced, and (4) extensibility aligned with an aspect was more modular. Additionally, we found the aspect-oriented implementation had negligible impact on performance.