Using Process Technology to Control and Coordinate Software Adaptation

Abstract

We have developed an infrastructure for end-to-end run-time monitoring, behavior/performance analysis, and dynamic adaptation of distributed software applications. This feedback-loop infrastructure is primarily targeted to pre-existing systems and thus operates outside the application itself without making assumptions about the target system's internal communication/computation mechanisms, implementation language/framework, availability of source code, etc. This paper assumes the existence of the monitoring and analysis components, presented elsewhere, and focuses on the mechanisms used to control and coordinate possibly complex repairs/reconfigurations to the target system. These mechanisms require lower-level actuators or effectors somehow attached to the target system, so we briefly sketch one such facility (elaborated elsewhere). The core of the paper is the model, architecture, and implementation of Workflakes, the decentralized process engine we use to tailor, control, coordinate, respond to contingencies, etc. regarding a cohort of such actuators. We have validated our approach and the Workflakes prototype in several case studies, related to different application domains. Due to space restrictions we concentrate primarily on one case study, elaborate with some details a second, and only sketch others.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 2005
Accession Number
ADA437459

Entities

People

  • Gail Kaiser
  • Giuseppe Valetto

Tags

Communities of Interest

  • Biomedical
  • C4I
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Availability
  • Case Studies
  • Computations
  • Computer Programming
  • Computer Programs
  • Computing System Architectures
  • Feedback
  • Information Systems
  • Infrastructure
  • Language
  • Mobile Phones
  • Models
  • Monitoring
  • Network Architecture
  • Shell Scripts
  • Standards
  • Web Applications

Fields of Study

  • Computer science
  • Engineering

Readers

  • Distributed Systems and Data Platform Development
  • Parallel and Distributed Computing.
  • Systems Analysis and Design

Technology Areas

  • Space
  • Space - Spacecraft Maneuvers