Interprocess Communication Protocol Support in a Distributed Integrated Software Development Environment

As multiprocessor workstations become more widely available, there is increasing interest in how to exploit the potential parallelism they provide to better support the activities of the single workstation user. One area in which such improved support would be of particular benefit is that of tool support for software engineering. The MultiView integrated software development environment is an example of a software engineering tool which is implemented in a distributed fashion and hence can potentially use multiple processors to give better performance. This paper describes the interprocess communication aspects of the MultiView system. In particular, the protocol used between the processes comprising the tool is outlined and some of the issues considered in designing (and redesigning) this protocol are discussed. Also described are some of the support tools which have been developed to assist developers extending the software development environment by adding new kinds of views. Chief among these support tools is a protocol specification language and its associated compiler.