Database Research Group (CIS)

Document Type

Conference Paper

Date of this Version

September 2001


Postprint version. Published in Lecture Notes in Computer Science, Volume 2193, Technologies for E-Services: Second International Workshop, 2001, pages 58-73.
Publisher URL:

NOTE: At the time of publication, the author Grigoris Karnouvarakis was affiliated with the Institute of Computer Science - FORTH. Currently June 2007, he a graduate student in the Department of Computer and Information Science at the University of Pennsylvania.


We distinguish between two broad categories of e-services: discrete services (e.g., add item to shopping cart, charge a credit card), and session-oriented ones (teleconference, collaborative text chat, streaming video, c-commerce interactions). Discrete services typically have short duration, and cannot respond to external asynchronous events. Session-oriented services have longer duration (perhaps hours), and typically can respond to asynchronous events (e.g., the ability to add a new participant to a teleconference). When composing discrete e-services it usually suffices to use a process model and engine that composes the e-services as relatively independent tasks. But when composing session-oriented e-services, the engine must be able to receive asynchronous events and determine how and whether to impact the active sessions. For example, if a teleconference participant loses his wireless connection then it might be appropriate to trigger an announcement to some or all of the other participants. In this paper we propose a process model and architecture for flexible composition and execution of discrete and session-oriented services. Unlike previous approaches, our model permits the specification of scripted "active flowcharts" that can be triggered by asynchronous events, and can appropriately impact active sessions. We introduce here a model and language for specifying process schemas (essentially a collection of active flowcharts) that combine multiple e-services, and describe a prototype engine for executing these process schemas.



Date Posted: 12 June 2007

This document has been peer reviewed.