Footprint and feature management using aspect-oriented programming techniques

  • Authors:
  • Frank Hunleth;Ron K. Cytron

  • Affiliations:
  • Washington University, St. Louis, MO;Washington University, St. Louis, MO

  • Venue:
  • Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Applications accrue features in response to the needs of all users, yet the associated code bloating and performance loss often render an application unsuitable for some users, particularly those interested in using the application in an embedded system. As a result, developers are often faced with either reinventing pieces of an application, custom tailored to their needs, or they are faced with the daunting task of refactoring an existing application to obtain an appropriate subset of that application's functionality. In either case, subsequent development, maintenance and testing of the application becomes more complex, due to the effects of future revisions on all of the derived subsets.In this paper, we report on our experience in obtaining subsets of an application's functionality, using a relatively new programming-language paradigm and tool to achieve the subsets compositionally. Instead of refactoring a large, feature-rich application, a feature can be added by including that feature's aspect in the set provided to an aspect compiler. In particular, a minimal, base implementation was developed in Java and features were added by supplying the appropriate advice to an AspectJ compiler. We describe our approach and present footprint and performance results for automatically derived subsets of an event channel.