Using Microcomponents and Design Patterns to Build Evolutionary Transaction Services

  • Authors:
  • Romain Rouvoy;Philippe Merle

  • Affiliations:
  • INRIA Futurs, JACQUARD Project, LIFL - University of Lille 1, 59655 Villeneuve d'Ascq Cedex, France;INRIA Futurs, JACQUARD Project, LIFL - University of Lille 1, 59655 Villeneuve d'Ascq Cedex, France

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2007

Quantified Score

Hi-index 0.01

Visualization

Abstract

The evolution of existing transaction services is limited because they are tightly coupled to a given transaction standard, implement a dedicated commit protocol, and support a fixed kind of applicative participants. The next challenge for transaction services will be to deal with evolution concerns. This evolution should allow developers to tune the transaction service depending on the transaction standard or the application requirements either at design time or at runtime. The contribution of this paper is to introduce the common approach that we have defined to build various evolutionary transaction services. This common approach is based on the use of microcomponents and design patterns, whose flexibility properties allow transaction services to be adapted to various execution contexts. This approach is applied in our GoTM framework that supports the construction of transaction services implementing several transaction standards and commit protocols. We argue that using fine-grained components and design patterns to build transaction services is an efficient solution to the evolution problem and our past experiences confirm that this approach does not impact the transaction service efficiency.