Degree Name

Doctor of Philosophy


Department of Computer Science


This thesis is concerned with the granularity of concurrency control in distributed objectoriented systems that support nested transactions. Novel linguistic constructs are introduced that allow the specification of object structures that support different granularities of concurrency control. The so-called "multi-granular concurrency control" has static and dynamic variations. Static multi-granular concurrency control allows an application developer to instantiate the same object topology with different numbers of concurrency controllers. Dynamic multi-granular concurrency control allows an application developer to vary the number of concurrency controllers used by an instantiated object topology. Multi-granular concurrency control is introduced in such a way that the serialisability of potentially nested transactions is maintained.

The mechanisms presented in this thesis have a number of advantages over existing concurrency control approaches. The separation of concurrency control specification from class specification allows flexibility during system development and potentially more efficiency during system execution. Applications developers can fine-tune the performance of their applications without necessarily having to change the structure or semantics of the code. Typical features of object-orientation such as reusability, incremental development and ease of specification are supported.