Playing Detective: Reconstructing Software Architecture from Available Evidence

Abstract

Because a system's software architecture strongly influences its ability to support quality attributes such as modifiability, performance, and security, it is important to be able to analyze and reason about that architecture. However, architectural documentation frequently does not exist, and when it does, it is often out of sync with the implemented system. In addition, it is rare that software development begins with a clean slate; systems are almost always constrained by existing legacy code. As a consequence, we need to be able to extract information from existing system implementations and reason architecturally about this information. This paper presents Dali, an open, lightweight workbench that aids an analyst in extracting, manipulating, and interpreting architectural information. By assisting in the reconstruction of architectures from extracted information, Dali helps an analyst redocument architectures and discover the relationship between 'as-implemented' and 'as-designed' architectures.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Oct 01, 1997
Accession Number
ADA330928

Entities

People

  • Rick Kazman
  • S. J. Carriere

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Ground and Sea Platforms
  • Human Systems

DTIC Thesaurus Topics

  • Computer Communications
  • Computer Programming
  • Computer Programs
  • Computers
  • Databases
  • Department Of Defense
  • Engineering
  • Homosexuality
  • Language
  • Lightweight
  • Operating Systems
  • Pattern Recognition
  • Performance Engineering
  • Programming Languages
  • Software Design
  • Software Development
  • User Interface

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computer Vision.
  • Economics
  • Software Engineering.