Revisiting Abstractions for Software Architecture and Tools to Support Them

被引:0
|
作者
Shaw, Mary [1 ]
Klein, Daniel V. [2 ]
Ross, Theodore L. [3 ]
机构
[1] Carnegie Mellon Univ, Sch Comp Sci, Pittsburgh, PA 15217 USA
[2] Google DeepMind, Pittsburgh, PA 15206 USA
[3] Red Hat Inc, Lowell, MA 01851 USA
基金
美国安德鲁·梅隆基金会;
关键词
Computer architecture; Software architecture; Software; Computer languages; Connectors; Unified modeling language; Software systems; Software development management; Prototypes; Pipelines; Abstraction; architectural styles; architecture description languages; components and connector abstractions; software architecture; software engineering; software design; MODEL;
D O I
10.1109/TSE.2025.3533549
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The mid-1990s saw the design of programming languages for software architectures, which define the high-level aspects of software systems including how code components were composed to form full systems. Our paper Abstractions for Software Architecture and Tools to Support Them presented a conceptual view of software architecture based on abstractions used in practice to organize software systems, a language that supported these abstractions, and a prototype implementation of this language (Shaw et al., 1995). By invitation, we reflect on the paper's principal ideas about system-level abstractions, place the work in a historical context of steadily increasing abstraction power in software development languages and infrastructure, and reflect on how progress since the paper's 1995 publication has been influenced, directly or indirectly, by this work. We describe current manifestations of architectural ideas and current challenges. We suggest how the strategy we used to identify and reify architectural abstractions may apply to current opportunities.
引用
收藏
页码:768 / 773
页数:6
相关论文
共 50 条
  • [1] ABSTRACTIONS FOR SOFTWARE ARCHITECTURE AND TOOLS TO SUPPORT THEM
    SHAW, M
    DELINE, R
    KLEIN, DV
    ROSS, TL
    YOUNG, DM
    ZELESNIK, G
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1995, 21 (04) : 314 - 335
  • [2] Software Architecture is a Set of Abstractions
    Fairbanks, George
    IEEE SOFTWARE, 2023, 40 (04) : 110 - 113
  • [3] Abstractions Considered Helpful: A Tools Architecture for Quantum Annealers
    Booth, Michael
    Dahl, Edward
    Furtney, Mark
    Reinhardt, Steven P.
    2016 IEEE HIGH PERFORMANCE EXTREME COMPUTING CONFERENCE (HPEC), 2016,
  • [4] Software Support for LIRAC Architecture
    李鹏
    汪东升
    王海霞
    路美娟
    李崇民
    郑纬民
    Tsinghua Science and Technology, 2007, (06) : 700 - 706
  • [5] Architecture-level software performance abstractions for online, performance prediction
    Brosig, Fabian
    Huber, Nikolaus
    Kounev, Samuel
    SCIENCE OF COMPUTER PROGRAMMING, 2014, 90 : 71 - 92
  • [6] Software tools to support systematic reviews
    Marshall, Christopher
    Glanville, Julie
    COCHRANE DATABASE OF SYSTEMATIC REVIEWS, 2016, 10 : 34 - 35
  • [7] Software support tools and experimental work
    Mockus, Audris
    Empirical Software Engineering Issues: Critical Assessment and Future Directions, 2007, 4336 : 91 - 99
  • [8] Beyond Software Architecture Knowledge Management Tools
    Zalewski, Andrzej
    SOFTWARE ENGINEERING: CHALLENGES AND SOLUTIONS, 2017, 504
  • [9] Trusting software tools in a secure DRM architecture
    Torres, Victor
    Delgado, Jaime
    Llorente, Silvia
    AXMEDIS 2007: THIRD INTERNATIONAL CONFERENCE ON AUTOMATED PRODUCTION OF CROSS MEDIA CONTENT FOR MULTI-CHANNEL DISTRIBUTION, PROCEEDINGS, 2007, : 55 - +
  • [10] Software architecture for decision support systems
    Mikolajuk, Z
    CRITICAL TECHNOLOGY: PROCEEDINGS OF THE THIRD WORLD CONGRESS ON EXPERT SYSTEMS, VOLS I AND II, 1996, : 657 - 664