Formal Connectors

Abstract

As software systems become more complex the overall system structure - or software architecture - becomes a central design problem. An important step towards an engineering discipline of software is a formal basis for describing and analyzing these designs. In this paper we present a theory for one aspect of architectural description: the interactions between components. The key idea is to define architectural connectors as explicit semantic entities. These are specified as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to define a variety of common architectural connectors. We further provide a formal semantics and show how this leads to a system in which architectural compatibility can be checked in a way analogous to type checking in programming languages.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Mar 01, 1994
Accession Number
ADA277611

Entities

People

  • David Garlan
  • Robert Allen

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Engineered Resilient Systems
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Alphabets
  • Communications Protocols
  • Computations
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Computing System Architectures
  • Engineering
  • Language
  • Notation
  • Operating Systems
  • Programming Languages
  • Semantics
  • Software Design
  • Software Development

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computational Linguistics
  • Software Engineering
  • Software Engineering.