A different need for sequencing contracts using state-based aspects

  • Authors:
  • James Heliotis

  • Affiliations:
  • Rochester Institute of Technology, Rochester, NY

  • Venue:
  • Proceedings of the 2nd workshop on Best practices in applying aspect-oriented software development
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Aspect technology has been used to describe concerns that had been thought to be unmodularizable. Some of those concerns have to do with workflows in an application's domain and sequencing of operation invocations within the application. Another principle of software engineering that has generated some interest and controversy within the aspect community is design by contract. Over the years some have suggested that a component's contracts be expressed through one or several aspects attached to it. This paper will describe a use of aspects that is a hybrid of the above ideas: the enforcement of operation invocation ordering through the component's contract and expressed as an aspect. The aspect is in turn modeled with a state machine whose description can be used to enhance the clarity of a component's description at the analysis and design phases, and whose implementation can be used to monitor invocations on the component for proper sequencing.