RG: A Case-Study for Aspect-Oriented Programming

RG is an image processing system that allows sophisticated image processing operations to bedefined by composing primitive image processing filters. An implementation of RG using OOPis easy to do and quite manageable, but its performance is severely lacking. The OOP approachturns out not to be well-suited to addressing the performance problems because the performanceissues we want to handle do not respect object or method boundaries and cannot be effectivelyaddressed in a paradigm tied to those boundaries. Aspect-oriented programming is an approachdesigned to handle complexities arising from such cross-cutting issues. This paper presents acase-study of how this limitation of OOP was overcome using aspect-oriented programmingtechniques, such that the performance problems were adequately addressed withoutcompromising the original OOP architecture of the system