Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
Three Concepts of System ArchitectureJuly 1995
1995 Technical Report
Publisher:
  • Stanford University
  • 408 Panama Mall, Suite 217
  • Stanford
  • CA
  • United States
Published:01 July 1995
Reflects downloads up to 21 Sep 2024Bibliometrics
Skip Abstract Section
Abstract

An architecture is a specification of the components of a system and the communication between them. Systems are constrained to conform to an architecture. An architecture should guarantee certain behavioral properties of a conforming system, i.e., one whose components are configured according to the architecture. An architecture should also be useful in various ways during the process of building a system. This paper presents three alternative concepts of architecture: object connection architecture, interface connection architecture, and plug and socket architecture. We describe different concepts of interface and connection that are needed for each of the three kinds of architecture, and different conformance requirements of each kind. Simple examples are used to compare the usefulness of each kind of architecture in guaranteeing properties of conforming systems, and in correctly modifying a conforming system. In comparing the three architecture concepts the principle of communication integrity becomes central, and two new architecture concepts, duality of sub-interfaces (services) and connections of dual services (service connection), are introduced to define plug and socket architecture. We describe how these concepts reduce the complexity of architecture definitions, and can in many cases help guarantee that the components of a conforming system communicate correctly. The paper is presented independently of any particular formalism, since the concepts can be represented in widely differing architecture definition formalisms, varying from graphical languages to event-based simulation languages.

Cited By

  1. ACM
    Nicolaescu A, Lichter H, Göringer A, Alexander P and Le D The ARAMIS Workbench for Monitoring, Analysis and Visualization of Architectures based on Run-time Interactions Proceedings of the 2015 European Conference on Software Architecture Workshops, (1-7)
  2. Floch J and Bræk R Using projections for the detection of anomalous behaviors Proceedings of the 11th international conference on System design, (251-268)
  3. Medvidovic N and Taylor R (2000). A Classification and Comparison Framework for Software Architecture Description Languages, IEEE Transactions on Software Engineering, 26:1, (70-93), Online publication date: 1-Jan-2000.
  4. ACM
    Hilliard R and Rice T Expressiveness in architecture description languages Proceedings of the third international workshop on Software architecture, (65-68)
  5. Erdogmus H Representing architectural evolution Proceedings of the 1998 conference of the Centre for Advanced Studies on Collaborative research
  6. Medvidovic N and Taylor R A framework for classifying and comparing architecture description languages Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering, (60-76)
  7. ACM
    Medvidovic N and Taylor R (2019). A framework for classifying and comparing architecture description languages, ACM SIGSOFT Software Engineering Notes, 22:6, (60-76), Online publication date: 1-Nov-1997.
  8. Medvidovic N and Rosenblum D Domains of concern in software architectures and architecture description languages Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997, (16-16)
  9. Erdogmus H (2018). Architecture-driven verification of concurrent systems, Nordic Journal of Computing, 4:4, (380-413), Online publication date: 1-Dec-1997.
Contributors
  • Stanford University
  • Stanford University
  • California Polytechnic State University, San Luis Obispo

Recommendations