The Express Project

Abstract

Military mission-critical software systems must continue to operate effectively in the presence of such failure modes as hardware failures, software bugs, and changes in the external environment. To enable such a capability, this effort proposed a general layered framework (the Dynamic Domain Architecture) for constructing adaptive software systems that can reason about the high-level goals of an application, monitor its fitness, diagnose problems, and reconstruct the application given a particular diagnosis. The system is aware of alternative approaches to achieving its goals, including alternative implementations of similar functionality, and debugging techniques for recovering from exceptions in its current behavior. It automatically and dynamically reconfigures the system and employs these alternative approaches to realizing its goals. In support of this framework, an extensible notation was developed that allows the programmer to annotate software with extra information: pragmatics, requirements, invariants, and metrics. Also a reasoning system for monitoring and diagnosis was developed, as well as abstraction tools for constructing software components in advanced programming languages.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 2003
Accession Number
ADA419264

Entities

People

  • Greg Sullivan
  • Olin Shivers
  • Robert Laddaga

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Electronic Warfare

DTIC Thesaurus Topics

  • Air Force Research Laboratories
  • Artificial Intelligence
  • Change Detection
  • Computer Languages
  • Computer Programming
  • Computer Science
  • Computer Vision
  • Computers
  • Debugging
  • Failure Mode And Effect Analysis
  • Language
  • Lisp Programming Language
  • Notation
  • Object Oriented Programming
  • Operating Systems
  • Programming Languages
  • Software Development

Fields of Study

  • Computer science
  • Engineering

Readers

  • Artificial Intelligence
  • Distributed Systems and Data Platform Development
  • Software Engineering.