Discovering Architectures from Running Systems: Lessons Learned

Abstract

One of the challenging problems for software developers is guaranteeing that a system as built is consistent with its architectural design. This report describes a technique that uses automatically generated runtime observations of an executing system to construct an architectural view of the system. In this technique, mappings are developed that exploit regularities in system implementation and architectural style. These mappings describe how low-level system events can be interpreted as more abstract architectural operations. In addition, this report describes the current implementation of a tool, called DiscoTect, that uses these mappings, and it shows how DiscoTect can highlight inconsistencies between implementations and architectures. Furthermore, two case studies are provided that illustrate how DiscoTect works and how it can be applied to real-world systems.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 01, 2004
Accession Number
ADA441834

Entities

People

  • Bradley Schmerl
  • David Garlan
  • Hong Yan
  • Jonathan Erik Aldrich
  • Rick Kazman

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Engineered Resilient Systems

DTIC Thesaurus Topics

  • Abstracts
  • Application Software
  • Case Studies
  • Commerce
  • Computer Programming
  • Computer Programs
  • Computers
  • Engineering
  • Graphical User Interface
  • Language
  • Lessons Learned
  • New York
  • Object Oriented Programming
  • Simulations
  • Software Design
  • Software Development
  • Virtual Machines

Fields of Study

  • Computer science
  • Engineering

Readers

  • Software Engineering.