Processes support a powerful approach to develop large-scale distributed applications spanning multiple, originally independent and heterogeneous stand-alone component systems. A key factor for the success of this paradigm is the possibility to provide dedicated transactional execution guarantees for processes.
This book generalizes the traditional approach to concurrency control and recovery in databases and develops correctness criteria for transactional processes. These criteria are supported by dynamic scheduling protocols which are based on a cost model for process activities. The benefit of this cost model is its support for the optimization of single process executions as well as for the decision on how parallel processes can be interleaved. Finally, transactional coordination agents are introduced to address problems like heterogeneity and autonomy of component systems that can be found in practice. All these concepts together introduce a powerful and comprehensive framework for implementing middleware support for transactional processes.