Explicity Modeling Hierarchically Heterogeneous Software Architectures in an Object-Oriented Formal Transformation System

Abstract

Formal software transformation systems are software development environments typified by the semi-automated application of a series of correctness-preserving transformations to formal data models. The range of software architectures such systems are capable of producing is often restricted by the limited ability to accept high-level design inputs as constraints on the transformation process. When architectural inputs are acceptable, often the modeling language excludes the explicit representation of architectural constructs and provides, at best, an extremely limited architectural analysis capability. This research defines a high-level taxonomy of software architectures and proposes a way to explicitly model a broad class of architectures by adapting the native object-oriented modeling language to the task. Using the AFIT Wide-Spectrum Object-Modeling Environment (AWSOME) as a proving ground, it demonstrates the ability to fully automate the transformation of an object-oriented analysis model to a non-hierarchically homogeneous, object-oriented architecture. Additionally, it demonstrates the ability to explicitly model the richer class of hierarchically heterogeneous software architectures in an object-oriented transformation system and to gain insight into the behavioral characteristics of such architectures by exporting them to an architectural interchange language for external analysis.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Mar 01, 2000
Accession Number
ADA380734

Entities

People

  • Darin L. Williams

Organizations

  • Air Force Institute of Technology

Tags

Communities of Interest

  • Engineered Resilient Systems
  • Ground and Sea Platforms

DTIC Thesaurus Topics

  • Abstracts
  • Air Force
  • Algorithms
  • Computer Program Documentation
  • Computer Programming
  • Computer Programs
  • Computers
  • Engineering
  • Formal Languages
  • Graphical User Interface
  • Java Programming Language
  • Language
  • Operating Systems
  • Programming Languages
  • Software Design
  • Software Development
  • Taxonomy

Fields of Study

  • Computer science
  • Engineering

Readers

  • Database Systems and Applications
  • Software Engineering.