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 条
  • [21] Visual Tools for Software Architecture Understanding: A Stakeholder Perspective
    Telea, Alexandru C.
    Voinea, Lucian
    Sassenburg, Hans
    IEEE SOFTWARE, 2010, 27 (06) : 46 - 53
  • [22] Developing the process tools and software architecture for the PnPSat initiative
    Center, Kenneth B.
    2008 IEEE AEROSPACE CONFERENCE, VOLS 1-9, 2008, : 2652 - 2659
  • [23] A Software Tools Catalogue to Support the Statistical Process Control on the Software Context
    Pereira Neto, Aluizio Ramos
    Bezerra Oliveira, Sandro Ronaldo
    PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING (ENASE), 2019, : 510 - 517
  • [24] A relational approach to support software architecture analysis
    Feijs, L
    Krikhaar, R
    Van Ommering, R
    SOFTWARE-PRACTICE & EXPERIENCE, 1998, 28 (04): : 371 - 400
  • [25] Relational approach to support software architecture analysis
    Feijs, L.
    Krikhaar, R.
    Van Ommering, R.
    Software - Practice and Experience, 1998, 28 (04): : 371 - 400
  • [26] OPPORTUNISTIC SOFTWARE ARCHITECTURE FOR SUPPORT OF DESIGN COORDINATION
    MACCALLUM, KJ
    CARTER, IM
    KNOWLEDGE-BASED SYSTEMS, 1992, 5 (01) : 55 - 65
  • [27] A software architecture for simulation support in building automation
    Leal, Sergio
    Zucker, Gerhard
    Hauer, Stefan
    Judex, Florian
    Buildings, 2014, 4 (03) : 320 - 335
  • [28] An architecture to support model driven software visualization
    Bull, R. Ian
    Storey, Margaret-Anne
    Favre, Jean-Marie
    Litoiu, Marin
    14TH IEEE INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2006), PROCEEDINGS, 2006, : 100 - +
  • [29] Providing support for safe software architecture transformations
    Barais, Olivier
    Lawall, Julia
    Le Meur, Anne-Francoise
    Duchien, Laurence
    5TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE, PROCEEDINGS, 2006, : 201 - +
  • [30] A practical hardware architecture to support software acceleration
    Edwards, M
    Forrest, J
    MICROPROCESSORS AND MICROSYSTEMS, 1996, 20 (03) : 167 - 174