YEAST - A GENERAL-PURPOSE EVENT-ACTION SYSTEM

Citation
B. Krishnamurthy et Ds. Rosenblum, YEAST - A GENERAL-PURPOSE EVENT-ACTION SYSTEM, IEEE transactions on software engineering, 21(10), 1995, pp. 845-857
Citations number
25
Categorie Soggetti
Computer Sciences","Engineering, Eletrical & Electronic","Computer Science Software Graphycs Programming
ISSN journal
00985589
Volume
21
Issue
10
Year of publication
1995
Pages
845 - 857
Database
ISI
SICI code
0098-5589(1995)21:10<845:Y-AGES>2.0.ZU;2-7
Abstract
Distributed networks of personal workstations are becoming the dominan t computing environment for software development organizations. Many c ooperative activities that are carried out in such environments are pa rticularly well suited for automated support. Taking the point of view that such activities are modeled most naturally as the occurrence of events requiring actions to be performed, we have developed a system c alled Yeast (Yet another Event-Action Specification Tool). Yeast is a client-server system in which distributed clients register event-actio n specifications with a centralized server, which performs event detec tion and specification management. Each specification submitted by a c lient defines a pattern of events that is of interest to the client's application plus an action that is to be executed in response to an oc currence of the event pattern; the server triggers the action of a spe cification once it has detected an occurrence of the associated event pattern. Yeast provides a global space of events that is visible to an d shared by all users. In particular, events generated by one user can trigger specifications registered by another user. Higher-level appli cations are built as collections of Yeast specifications. We use Yeast on a daily basis for a variety of applications, from deadline notific ation to software process automation. This paper presents an in-depth description of Yeast and an example application of Yeast, in which Yea st specifications are used to automate a software distribution process involving several interdependent software tools.