OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A Classification and Comparison Framework for Software Architecture Description Languages
IEEE Transactions on Software Engineering
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Towards a model-driven approach to build component-based adaptable middleware
ARM '04 Proceedings of the 3rd workshop on Adaptive and reflective middleware
DREAM: A Component Framework for Constructing Resource-Aware, Configurable Middleware
IEEE Distributed Systems Online
Traits: A mechanism for fine-grained reuse
ACM Transactions on Programming Languages and Systems (TOPLAS)
Microcomponent-Based Component Controllers: A Foundation for Component Aspects
APSEC '05 Proceedings of the 12th Asia-Pacific Software Engineering Conference
Safe Integration of New Concerns in a Software Architecture
ECBS '06 Proceedings of the 13th Annual IEEE International Symposium and Workshop on Engineering of Computer Based Systems
The Design and Implementation of Open ORB 2
IEEE Distributed Systems Online
Towards context-aware transaction services
DAIS'06 Proceedings of the 6th IFIP WG 6.1 international conference on Distributed Applications and Interoperable Systems
A component-based approach to compose transaction standards
SC'06 Proceedings of the 5th international conference on Software Composition
A model for developing component-based and aspect-oriented systems
SC'06 Proceedings of the 5th international conference on Software Composition
A component model engineered with components and aspects
CBSE'06 Proceedings of the 9th international conference on Component-Based Software Engineering
Promoting levels of openness on component-based adaptable middleware
Proceedings of the 6th international workshop on Adaptive and reflective middleware: held at the ACM/IFIP/USENIX International Middleware Conference
Hi-index | 0.01 |
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.