The Software Dock: A Distributed, Agent-based Software Deployment System
Richard S. Hall, Dennis Heimberger, André van der Hoek, Alexander L. Wolf · 1997
Few tools exist to address the post-development activities of configuring, releasing, installing, updating, reconfiguring, and even de-installing a software system. Certainly there isnouniedapproach for all of these activities, and none that can take full advantage of a wide-area network. The Software Dock represents an architecture for supporting post-development activities in such a setting. It is designed asasystemof loosely-coupled, cooperating, distributed components that are bound together by a widearea messaging and event system. The components include eld docks for maintaining site-specific configuration information by consumers, release docks for managing the configuration and release of software systems by producers, and a variety of agents for automating the activities. Its mechanisms of consistent access to a site's configuration information and resources, standardized methods for making software releases available and visible, and a global event system give software producers and consumers new leverage in managing complex software systems. In this paper we describe the Software Dock architecture and discuss the use of a prototype implementation of that architecture in deploying a complex system.