Although it has long been realised that ACID transactions by themselves are not adequate for structuring long-lived applications
and much research work has been done on developing specific extended transaction models, no middleware support for building
extended transactions is currently available and the situation remains that a programmer often has to develop application
specific mechanisms. The CORBA Activity Service Framework described in this paper is a way out of this situation. The design
of the service is based on the insight that the various extended transaction models can be supported by providing a general
purpose event signalling mechanism that can be programmed to enable activities — application specific units of computations
— to coordinate each other in a manner prescribed by the model under consideration. The different extended transaction models
can be mapped onto specific implementations of this framework permitting such transactions to span a network of systems connected
indirectly by some distribution infrastructure. The framework described in this paper is an overview the OMG’s Additional Structuring Mechanisms for the OTS standard now reaching completion. Through a number of examples the paper shows that the Framework has the flexibility to
support a wide variety of extended transaction models. Although the framework is presented here in CORBA specific terms, the
main ideas are sufficiently general, so that it should be possible to use them in conjunction with other middleware.