Unification of static and dynamic AOP for evolution in embedded software systems

  • Authors:
  • Wasif Gilani;Fabian Scheler;Daniel Lohman;Olaf Spinczyk;Wolfgang Schröder-Preikschat

  • Affiliations:
  • Friedrich-Alexander University Erlangen-Nuremberg;Friedrich-Alexander University Erlangen-Nuremberg;Friedrich-Alexander University Erlangen-Nuremberg;Friedrich-Alexander University Erlangen-Nuremberg;Friedrich-Alexander University Erlangen-Nuremberg

  • Venue:
  • SC'07 Proceedings of the 6th international conference on Software composition
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper discusses how evolution in software systems can be supported by a unified application of both static as well as dynamic aspect-oriented technology. The support for evolution is required statically, where the applications could be taken offline and adapted, and dynamically where going offline is not an available option. While this is straightforward in the static case by taking the system offline and statically weaving the aspects, runtime evolution requires an additional dynamic aspect weaving infrastructure. Our current implementation of the family-based dynamic aspect weaving infrastructure supports most of the features known from the static aspect weaving domain, offers a tailored dynamic aspect weaving support, and is able to target a wide range of applications including embedded systems with very small memory footprint. The availability of a single language both for static and dynamic aspects means that the decision whether an aspect is static or dynamic is postponed to the later stages of the deployment of aspects into the sytem, and is decided according to the requirements and available resources. As a case study, we will present our experiences with the static and runtime evolution of the embedded operating system eCos.