Coping with Complexity: A standards-based kinesthetic approach to monitoring non-standard component-based systems

This work is funded by the Defense Advanced Research Projects Agency (DARPA) as part of the Dynamic Assembly for System Adaptability, Dependability, and Assurance (DASADA) program.  The Lead Technical Agent is the Air Force Research Laboratory (AFRL). The AFRL contact page for DASADA can be found here.

Personnel

This is joint work with Dr. Gail E. Kaiser of Columbia University.

WPI Personnel include:

Previous Graduates

Papers

Software Downloads

The software created as part of the DASADA project can be downloaded.

Project Information

DemoDay 2002 Brochures

    EXTRACT/AIDE (PDF, DOC)
    SoftViz (PDF, DOC)

Supporting Documentation

    Original KX slide (PPT)

Partnering Information

We have initiated partnerships with Nathan Combs of BBN.

Executive Summary

Columbia University and Worcester Polytechnic Institute (WPI) jointly propose a standards-based approach to runtime monitoring - i.e., continual validation – regarding the dynamic functional and extra-functional properties of component-based systems. In their proposed kinesthetic gauging model, software probes are inserted or wrapped into component ports and actualized connector middleware, to report system events that cross/impact component and connector boundaries. Required and prohibited properties are defined by domain experts as (potentially complex) patterns over collections of events. The monitoring infrastructure enables domain- and/or tool-specific recognizers to detect the occurrence or omission of these patterns as the target system executes. Properties can be specified as enumerated (e.g., true/false) or numerical gauges, or via more sophisticated representations that provide contextual information about anomalous conditions (e.g., a partial match against a multi-component communication protocol modeled by a state machine).  Gauges can present to automated decision systems, to ADL toolkits, or to human-oriented GUIs. Optional (un)desirable properties might identify patterns that foreshadow impending problems, e.g., to trigger preemptive reconfiguration, or indicate that intended runtime architectural transformations have successfully completed. Probes could also insert anomalous events for diagnostic purposes.

The monitoring probes provide the entry points to the proposed kinesthetic gauging infrastructure, orthogonal to the target system’s architecture, wherein system events and pattern specifications propagate/deploy across “active connectors” whose nodes perform the recognition and processing. Raw events are converted to “smart events” represented in FleXML, a stream-oriented variant of the eXtensible Markup Language (XML) standard. An event stream out of one probe becomes a FleXML stream;  event streams from multiple dispersed probes become interleaved into partially ordered sets (posets) on the universal event bus aggregating the active connectors. Active connectors parse the posets and validate against Document Type Definition (DTD) fragments. In addition to heading conventional meta-data (e.g., source host, timestamp), FleXML smart event markup tags are interpreted to package for later data mining, distill according to dynamically adjusted criteria, and notify gauges of updates.  Tag attributes may directly carry the (mobile) code, describe where to find it, or – most flexibly - allowing for dynamic lookup via a “known” directory. New event vocabularies and properties – i.e., new tag(set)s (and attributes) along with their DTD fragments and processing modules - can be defined and deployed at runtime. This dynamism enables new event annotations, analyses and gauges to be constructed, and presented and acted upon, while a system is running - with no “down time” or significant reconfiguration solely to retrofit the monitoring infrastructure.  (Of course, a human or automated decision agent may respond to measured conditions by reconfiguring the target system or halting its operation.)  The interoperability among autonomously devised tagsets neatly addresses components from independent sources, as well as analysis by legacy tools. Columbia and WPI plan to employ existing ADL systems (particularly Acme [GMW97]), build upon existing open source XML tools, retain compatibility with existing component frameworks, and experimentally integrate their prototype Kinesthetics eXtreme (KX, pronounced “kicks”) infrastructure together