Yeast: a general purpose event-action system

Dept. of Software Eng Res., AT&T Bell Labs., Murray Hill, NJ
IEEE Transactions on Software Engineering (Impact Factor: 2.59). 11/1995; DOI: 10.1109/32.469456
Source: IEEE Xplore

ABSTRACT Distributed networks of personal workstations are becoming the
dominant computing environment for software development organizations.
Many cooperative activities that are carried out in such environments
are particularly 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 developed a system
called Yeast (Yet another Event Action Specification Tool). Yeast is a
client server system in which distributed clients register event action
specifications with a centralized server, which performs event detection
and specification management. Each specification submitted by a client
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
occurrence of the event pattern; the server triggers the action of a
specification once it has detected an occurrence of the associated event
pattern. Yeast provides a global space of events that is visible to and
shared by all users. In particular, events generated by one user can
trigger specifications registered by another user. Higher level
applications are built as collections of Yeast specifications. We use
Yeast on a daily basis for a variety of applications, from deadline
notification to software process automation. The paper presents an in
depth description of Yeast and an example application of Yeast, in which
Yeast specifications are used to automate a software distribution
process involving several interdependent software tools

  • [Show abstract] [Hide abstract]
    ABSTRACT: Most modern software systems have a decentralized, modular, distributed, and dynamic structure. They are often composed of heterogeneous components and operate on heterogeneous infrastructures. They are increasingly built by composing services; that is, components owned (designed, deployed, maintained, and run) by remote and independent stakeholders. The quality of service perceived by the clients of such a composite application depends directly on the individual services that are integrated in it, but also on the way they are composed. At the same time, the world in which applications are situated (in particular, the remote services upon which they can rely) changes continuously. These requirements ask for an ability of applications to self-adapt to dynamic changes, especially when they need to run for a long time without interruption. This, in turn, has an impact on the way service compositions are defined using ad-hoc process languages that are defined to support compositions. This paper discusses how the service setting has revamped the field of process (workflow) programming: where old problems that were identified in the past still exist now, how we can learn from past work, and where and why new challenges instead require additional research.
    12/2010: pages 163-177;
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: With the extension of RFID application, RFID data processing techniques become one of the core techniques. Recently, researchers adopt the event-centric methods to process RFID data and obtain rich semantic information. Complex event processing is a typical data processing technique which becomes the new spotlight of researches. In order to obtain semantic data, in this paper, we propose a complex event detection model to process RFID data. A tree-based complex event detection algorithm which is an improvement to the existed one is realized as the core module in our model. Aimed at improving the detection of non-spontaneous events, we use expected events thus avoid the recursive computation of detection modes and save time cost. The comparative experiments show the algorithm decreases the time complexity of RFID complex event detection. Finally, we implement a production information system based on the complex event detection model and it provides better support for the auto-monitoring of production line.
  • [Show abstract] [Hide abstract]
    ABSTRACT: In event-driven workflow execution, events and event-condition-action rules are the fundamental metaphors for defining and enforcing workflow logic. Processing entities enact workflows by reacting to and generating new events. The foundation on events facilitates the integration of processing entities into coherent systems. In this paper, we present an event engine, called EVE, implementing event-driven execution of distributed workflows. Its functionality includes event registration, detection and management, as well as event notification to distributed, autonomous, reactive software components which represent workflow processing entities. We describe the distributed, multi-server, multi-client architecture of EVE and its use for workflow execution.