O'Reilly Open Source Convention
oreilly.comO'Reilly Network

Arrow Home
Arrow Registration
Arrow Hotel/Travel
Arrow See & Do
Arrow Tutorials
Arrow Sessions
Arrow Evening Events
Arrow BOFs
Arrow Speakers
Arrow Press
Arrow Mail List
Arrow Exhibitors
Arrow Sponsors
O'Reilly Open Source Convention
Sheraton San Diego Hotel, San Diego, CA
July 23-27, 2001

News Coverage


A Universal Client for Taskflow-Oriented Programming with Distributed Components: XML/TclTk Implementation

Hemang Lavana
Franc Brglez

Track: Tcl/Tk Conference
Date: Thursday, July 26
Time: 2:15pm - 2:45pm
Location: Fairbanks A&B

This paper presents an XML/TclTk implementation of a universal, user-configurable client that (1) reads user-programmed interconnections of distributed component programs as task instances, (2) dynamically renders an {interactive GUI of all interconnected components as a hierarchical taskflow, and (3) dynamically creates a schedule to execute component programs concurrently, serially, or not at all, depending on the user-defined runtime configuration of the taskflow topology. The client creates a taskflow-oriented programming environment, conceptually introduced in the companion paper and demonstrated in this paper.

The recursive schema of component instances is conveniently captured as an extension of XML in a {c}ollaborative {d}istributed {t}askflow {m}ark-up {l}anguage (cdtML) and consists of mainly two layers: (1) an encapsulated blackbox (single-task) or a whitebox (multi-task) layer, and (2) a task instance layer. The encapsulated task layer contains two parts: a definition layer and a body layer, with the definition layer serving as a readily accessible API for the task. A generic Tcl-XML parser reads both the cdtML schema and the user-created cdtML taskflow description and outputs a taskflow description in TclTk. This in turn generates the interactive GUI as the hierarchical taskflow, waiting for user inputs. User may choose to interact in any of the following ways: reconfigure the taskflow interconnections, view or edit data, descend/ascend the taskflow hierarchy, select the mode of execution, invoke the taskflow, abort the taskflow (if already executing), reset the state of the taskflow, etc.

oreilly.com Home | Conferences Home | Open Source Convention Home
Registration | Hotels/Travel | Tutorials | Sessions | Speakers
Press | Mail List | Exhibitors | Sponsors

© 2001, O'Reilly Media, Inc.