English
Related papers

Related papers: Abstractness, specificity, and complexity in softw…

200 papers

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…

Software Engineering · Computer Science 2025-03-07 Mary Shaw , Daniel V. Klein , Theodore L. Ross

Computer systems are so complex, so they are usually designed and analyzed in terms of layers of abstraction. Complexity is still a challenge facing logical reasoning tools that are used to find software design flaws and implementation…

Software Engineering · Computer Science 2021-06-18 Ramy Shahin

Modern software-based systems operate under rapidly changing conditions and face ever-increasing uncertainty. In response, systems are increasingly adaptive and reliant on artificial-intelligence methods. In addition to the ubiquity of…

Software Engineering · Computer Science 2024-08-27 Nelly Bencomo , Jordi Cabot , Marsha Chechik , Betty H. C. Cheng , Benoit Combemale , Andrzej Wąsowski , Steffen Zschaler

This chapter examines abstraction as a central principle of computing, not merely as a cognitive skill or epistemological category, but as a material and organizational practice that structures how software is built, used, and embedded in…

Computers and Society · Computer Science 2025-08-26 Bernhard Rieder

Abstraction is a fundamental tool for reasoning about complex systems. Program abstraction has been utilized to great effect for analyzing deterministic programs. At the heart of program abstraction is the relationship between a concrete…

Artificial Intelligence · Computer Science 2017-07-17 Steven Holtzen , Todd Millstein , Guy Van den Broeck

Producing a good software design involves not only writing a definition that satisfies the syntax of the chosen language or structural constraints of a design paradigm. It also involves upholding a variety of expectations about the behavior…

Software Engineering · Computer Science 2025-03-07 Mary Shaw

This work aims at discussing the complexity aspect of software while demonstrating its relationship with security. Complexity is an essential part of software; however, numerous studies indicate that they increase the vulnerability of the…

Software Engineering · Computer Science 2020-02-18 Mamdouh Alenezi , Mohammad Zarour

This paper proposes some new architectural metrics which are appropriate for evaluating the architectural attributes of a software system. The main feature of our approach is to assess the complexity of a software architecture by analyzing…

Software Engineering · Computer Science 2007-05-23 Jianjun Zhao

In this article we revisit the concept of abstraction as it is used in visualization and put it on a solid formal footing. While the term \emph{abstraction} is utilized in many scientific disciplines, arts, as well as everyday life,…

Graphics · Computer Science 2020-08-19 Ivan Viola , Min Chen , Tobias Isenberg

The principle of abstraction guides the design of interactive systems, yet we lack a conceptual framework to understand how it shapes interaction design. Existing models, such as the gulfs of execution and evaluation, do not explicitly…

Human-Computer Interaction · Computer Science 2026-05-13 Bryan Min , Sangho Suh , Jim Hollan , Haijun Xia

Abstraction is a powerful idea widely used in science, to model, reason and explain the behavior of systems in a more tractable search space, by omitting irrelevant details. While notions of abstraction have matured for deterministic…

Artificial Intelligence · Computer Science 2020-01-14 Vaishak Belle

Artefacts play a vital role in software and systems development processes. Other terms like documents, deliverables, or work products are widely used in software development communities instead of the term artefact. In the following, we use…

Software Engineering · Computer Science 2021-04-08 D. Méndez Fernández , W. Böhm , A. Vogelsang , J. Mund , M. Broy , M. Kuhrmann , T. Weyer

Background: Abstracts are a particularly valuable element in a software engineering research article. However, not all abstracts are as informative as they could be. Objective: Characterize the structure of abstracts in high-quality…

Software Engineering · Computer Science 2025-06-30 Lutz Prechelt , Lloyd Montgomery , Julian Frattini , Franz Zieris

Writing parallel codes is difficult and exhibits a fundamental trade-off between abstraction and performance. The high level language abstractions designed to simplify the complexities of parallelism make certain assumptions that impacts…

Programming Languages · Computer Science 2020-10-28 Nick Brown , Ludovic Capelli , J. Mark Bull

Abstraction is a fundamental principle in classical software engineering, which enables modularity, reusability, and scalability. However, quantum programs adhere to fundamentally different semantics, such as unitarity, entanglement, the…

Software Engineering · Computer Science 2026-01-21 Jianjun Zhao

Design is a fundamental aspect of engineering, enabling the creation of products, systems, and organizations to meet societal and/or business needs. However, the absence of a scientific foundation in design often results in subjective…

Software Engineering · Computer Science 2025-07-15 Aydin Homay

This article attempts to describe specific mental techniques that are related to resolving very complex tasks in software engineering. This subject may be familiar to some software specialists to different extents; however, there is…

Software Engineering · Computer Science 2012-01-30 Igor Kusakov

The field of quantum computing is at an exciting time where we are constructing novel hardware, evaluating algorithms, and finding out what works best. As qubit technology grows and matures, we need to be ready to design and program larger…

Quantum Physics · Physics 2023-03-07 Casey Duckering

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

Software is primarily developed for people by people and human factors must be studied in all software engineering phases. Creativity is the source to improvise solutions to problems for dominating complex systems such as software…

Software Engineering · Computer Science 2013-05-28 Daniel Graziotin
‹ Prev 1 2 3 10 Next ›