Technology of Object-Oriented Languages and Systems (TOOLS 34'00 (2000)
Santa Barbara, California
July 30, 2000 to Aug. 3, 2000
Gurdip Singh , Kansas State University
Jun Wu , Microsoft Corporation
The complexity of protocols supporting distributed applications has to modular techniques to design protocols. The object-oriented programming paradigm provides a number of concepts to enable modularity and reuse. For example, languages such as Java and C++ have been extended with synchronization primitives to modularize code. In this paper, we propose a framework with tools that compliment such language extensions to enable compositional development of protocols. We advocate a two-staged design process: In the first stage, the designer develops code for a set of component protocols, each performing a specific subtask of the protocol. The second stage involves composing the subtasks to obtain the protocol for the entire problem. The composition is done with respect to a set of constraints that describe the interactions between the subtasks. We identify several composition patterns, each implementing a specific type of interaction. For each pattern, we describe the code required for its implementation and the transformations to embed this code into the component protocols. The toolset has been implemented using Java as the underlying development language.
Distributed systems, Composition, Protocols, Synchronization
G. Singh and J. Wu, "Modular Object-Oriented Design of Distributed Protocols," 36th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS-Asia'00)(TOOLS), Xi'an, China, 2000, pp. 329.