Static Extraction and Conformance Analysis of Hierarchical Runtime Architectural Structure

Abstract

A high-level architectural diagram of a system's organization can be useful during software evolution. Such a diagram is often missing and must be extracted from the code. Alternatively, an existing diagram may be inconsistent with the code, and must be analyzed for conformance with the implementation. One important notion of conformance, the communication integrity principle, stipulates that each component in the implementation may only communicate directly with the components to which it is connected in the architecture. This dissertation proposes a novel approach, SCHOLIA , to extract a hierarchical runtime architecture from an existing object-oriented system, and analyze communication integrity with a target architecture, entirely statically and using typecheckable ownership annotations. Previous approaches to enforcing communication integrity have significant drawbacks: they either require radical language extensions that incorporate architectural constructs at the expense of severe implementation restrictions, mandate specialized architectural middleware, or use dynamic analyses that cannot check all possible executions. The key contribution is a static points-to analysis to extract, from an annotated program, a global object graph that provides architectural abstraction by ownership hierarchy and by types, where architecturally significant objects appear near the top of the hierarchy and data structures are further down. Moreover, an extracted object graph is sound in two respects. First, each runtime object has exactly one representative in the object graph. Second, the object graph has edges that correspond to all possible runtime points-to relations between those objects. Another analysis abstracts an object graph into a built runtime architecture.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 14, 2010
Accession Number
ADA522559

Entities

People

  • Marwan Abi-antoun

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • C4I
  • Cyber
  • Ground and Sea Platforms
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Artificial Intelligence
  • Artificial Intelligence Computing
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Language
  • Object Oriented Programming
  • Programming Languages
  • Reliability
  • Software Design
  • Software Development
  • Software Development Tools
  • Students
  • Test And Evaluation
  • Theses
  • Transient Response Analysis

Fields of Study

  • Computer science
  • Engineering

Readers

  • Database Systems and Applications