English
Related papers

Related papers: Revisiting Abstractions for Software Architecture …

200 papers

Software architecture has been an active research field for nearly four decades, in which previous studies make significant progress such as creating methods and techniques and building tools to support software architecture practice.…

Software Engineering · Computer Science 2023-08-23 Zhiyuan Wan , Yun Zhang , Xin Xia , Yi Jiang , David Lo

This paper introduces abstractions that are meaningful for computers and that can be built and used according to computers' own criteria, i.e., computable abstractions. It is analyzed how abstractions can be seen to serve as the building…

Artificial Intelligence · Computer Science 2015-03-31 Alejandro Sanchez Guinea

In recent years, there have emerged many new hardware mechanisms for improving the security of our computer systems. Hardware offers many advantages over pure software approaches: immutability of mechanisms to software attacks, better…

Cryptography and Security · Computer Science 2019-10-14 Lianying Zhao , He Shuang , Shengjie Xu , Wei Huang , Rongzhen Cui , Pushkar Bettadpur , David Lie

Today, data guides the decision-making process of most companies. Effectively analyzing and manipulating data at scale to extract and exploit relevant knowledge is a challenging task, due to data characteristics such as its size, the rate…

Software Engineering · Computer Science 2025-03-24 Arianna Dragoni , Alessandro Margara

The continuous software engineering paradigm is gaining popularity in modern development practices, where the interleaving of design and runtime activities is induced by the continuous evolution of software systems. In this context,…

Software Engineering · Computer Science 2024-01-31 Romina Eramo , Michele Tucci , Daniele Di Pompeo , Vittorio Cortellessa , Antinisca Di Marco , Davide Taibi

Novel user interfaces based on artificial intelligence, such as natural-language agents, present new categories of engineering challenges. These systems need to cope with uncertainty and ambiguity, interface with machine learning…

Programming Languages · Computer Science 2017-09-18 Alex Renda , Harrison Goldstein , Sarah Bird , Chris Quirk , Adrian Sampson

We are entering a new era in which software systems are becoming more and more complex and larger. So, the composition of such systems is becoming infeasible by manual means. To address this challenge, self-organising software models…

Formal Languages and Automata Theory · Computer Science 2025-08-27 Damian Arellanes

A software architecture describes the structure of a computing system by specifying software components and their interactions. Mapping a software architecture to an implementation is a well known challenge. A key element of this mapping is…

Programming Languages · Computer Science 2011-09-14 Damien Cassou , Emilie Balland , Charles Consel , Julia Lawall

A software architecture describes the structure of a computing system by specifying software components and their interactions. Mapping a software architecture to an implementation is a well known challenge. A key element of this mapping is…

Programming Languages · Computer Science 2011-06-22 Damien Cassou , Charles Consel , Emilie Balland , Julia Lawall

Large, complex, multi-scale, multi-physics simulation codes, running on high performance com-puting (HPC) platforms, have become essential to advancing science and engineering. These codes simulate multi-scale, multi-physics phenomena with…

Computational Engineering, Finance, and Science · Computer Science 2014-10-24 A. Dubey , S. Brandt , R. Brower , M. Giles , P. Hovland , D. Q. Lamb , F. Loffler , B. Norris , B. OShea , C. Rebbi , M. Snir , R. Thakur

The increasing usage of machine learning (ML) coupled with the software architectural challenges of the modern era has resulted in two broad research areas: i) software architecture for ML-based systems, which focuses on developing…

Software Engineering · Computer Science 2021-03-17 Henry Muccini , Karthik Vaidhyanathan

Software architecture decision-making is critical to the success of a software system as software architecture sets the structure of the system, determines its qualities, and has far-reaching consequences throughout the system life cycle.…

Software Engineering · Computer Science 2016-10-31 Sandun Dasanayake , Jouni Markkula , Sanja Aaramaa , Markku Oivo

Software architecture often consists of interconnected components dispersed across source code and other development artifacts, making visualization difficult without costly additional documentation. Although some tools can automatically…

Software Engineering · Computer Science 2024-07-26 Filipe F. Correia , Ricardo Ferreira , Paulo G. G Queiroz , Henrique Nunes , Matilde Barra , Duarte Figueiredo

In the present paper we formally define the notion of abstract program slicing, a general form of program slicing where properties of data are considered instead of their exact value. This approach is applied to a language with numeric and…

Logic in Computer Science · Computer Science 2016-05-20 Isabella Mastroeni , Damiano Zanardini

Computation nowadays is becoming inherently concurrent, either because of characteristics of the hardware (with multicore processors becoming omnipresent) or due to the ubiquitous presence of distributed systems (incarnated in the…

Software Engineering · Computer Science 2011-08-01 Mohammad Reza Mousavi , Antonio Ravara

This paper is based on and advocates the trend in software engineering of extending the use of software patterns as means of structuring solutions to software development problems (be they motivated by best practice or by company interests…

Software Engineering · Computer Science 2007-05-23 Jean-Marc Rosengard , Marian Ursu

The purpose of this paper is to evaluate the impact of emerging network-centric software systems on the field of software architecture. We first develop an insight concerning the term "network-centric" by presenting its origin and its…

Software Engineering · Computer Science 2007-05-23 Amine Chigani , James D. Arthur

Logic programming is sometimes described as relational programming: a paradigm in which the programmer specifies and composes n-ary relations using systems of constraints. An advanced logic programming environment will provide tools that…

Programming Languages · Computer Science 2009-03-16 Andy King

At its core, abstraction is the process of generalizing from specific instances to broader concepts or models, with the primary objective of reducing complexity while preserving properties essential to the intended purpose. It is…

Logic in Computer Science · Computer Science 2026-01-06 Andrzej Szalas

This paper presents a forward-looking vision for artificial intelligence-driven software architecture that addresses longstanding challenges in design and evolution. Although artificial intelligence has achieved notable success in software…

Software Engineering · Computer Science 2025-04-08 Alessio Bucaioni , Martin Weyssow , Junda He , Yunbo Lyu , David Lo