An event-based model of software configuration management

These actions require cooperation among several people to carry out a process that can become chaotic if not properly controlled. Recognizing that activities such as these are particularly well suited to automation, we have developed a tool called Yeast (Yet another Event-Action Specification Tool) that implements an event-based model of cooperative software development. Yeast is a client-server system in which clients submit and manipulate event-action specifications and a server performs specification matching and management. Higher-level applications are built as collections of Yeast specifications. In this paper we describe an application in which Yeast specifications are being used to automate the software configuration management chores of a project management system. A Yeast specification consists of an event pattern along with an action; the Yeast server submits the action to the underlying system’s command interpreter whenever it detects an occurrence of the event pattern. The action part of a specification can perform any number of actions in response to the occurrence of the event pattern, including Yeast-related actions. An event is simdv a charwe in the .vduc of an attribute of some object. Each object Le10n6. to an object class, and each attribute of an object class has a type. The Yeast server automatically recognizes the occurrence of many predefine events, such as the passage of