Abstract
Some concerns, such as debugging or logging functionality, cannot be captured cleanly, and are often tangled and scattered throughout the code base. These concerns are called crosscutting concerns. Aspect-Oriented Programming (AOP) is a paradigm that enables developers to capture crosscutting concerns in separate aspect modules. The use of aspects has been shown to improve understandability and maintainability of systems. It has been shown that real-time concerns, such as memory management and thread scheduling, are crosscutting concerns [5, 6, 9, 11]. However it is unclear whether encapsulating these concerns provides benefits. We were interested in determining whether using AOP to encapsulate real-time crosscutting concerns afforded benefits in system properties such as understandability and maintainability. This paper presents research comparing the system properties of two systems: a real-time sentient traffic simulator and its Aspect-Oriented equivalent. An evaluation of AOP is presented indicating both benefits and drawbacks with this approach.