English
Related papers

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

200 papers

Complexity is often seen as a inherent negative in information design, with the job of the designer being to reduce or eliminate complexity, and with principles like Tufte's "data-ink ratio" or "chartjunk" to operationalize minimalism and…

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

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural descriptions) are going to be accumulated, the development of…

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

Online experimentation platforms abstract away many of the details of experimental design, ensuring experimenters do not have to worry about sampling, randomisation, subject tracking, data collection, metric definition and interpretation of…

Human-Computer Interaction · Computer Science 2017-10-03 Timo Kluck , Lukas Vermeer

The complexity of today's visualization applications demands specific visualization systems tailored for the development of these applications. Frequently, such systems utilize levels of abstraction to improve the application development…

Design automation, which involves the use of software tools and technologies to streamline the design process, has been widely adopted in the electronics industry, resulting in significant advancements in product development and…

Other Computer Science · Computer Science 2023-05-12 Yu-Wen Lin , Tsz Ling Elaine Tang , Alberto L. Sangiovanni-Vincentelli , Stefano Schiavon , Costas J. Spanos

The continuing process of software systems enlargement in size and complexity becomes system design extremely important for software production. In this way, the role of software architecture is significantly important in software…

Software Engineering · Computer Science 2010-05-25 K. Delhi Babu , P. Govinda Rajulu , A. Ramamohana Reddy , A. N. Aruna Kumari

Working with causal models at different levels of abstraction is an important feature of science. Existing work has already considered the problem of expressing formally the relation of abstraction between causal models. In this paper, we…

Artificial Intelligence · Computer Science 2022-08-02 Fabio Massimo Zennaro , Paolo Turrini , Theodoros Damoulas

The dominant view of design in information systems and software engineering, the Rational Design Paradigm, views software development as a methodical, plan-centered, approximately rational process of optimizing a design candidate for known…

Software Engineering · Computer Science 2013-03-26 Paul Ralph

In order to solve today's complex problems in the world of software development, technical knowledge is no longer enough. Previous studies investigating and identifying non-technical skills of software engineers show that creative skills…

Software Engineering · Computer Science 2021-01-05 Wouter Groeneveld , Laurens Luyten , Joost Vennekens , Kris Aerts

Decomposition and abstraction is an essential component of computational thinking, yet it is not always emphasized in introductory programming courses. In addition, as generative AI further reduces the focus on syntax and increases the…

Software Engineering · Computer Science 2025-12-09 Georgiana Haldeman , Peter Ohmann , Paul Denny

Interfaces are recognized as an important mechanism to define contracts governing interactions between semi-independent software modules. Well-designed interfaces significantly reduce software complexity and ease maintainability by…

Software Engineering · Computer Science 2013-10-01 Hani Abdeen , Osama Shata , Abdelkarim Erradi

Abstraction (in its various forms) is a powerful established technique in model-checking; still, when unbounded data-structures are concerned, it cannot always cope with divergence phenomena in a satisfactory way. Acceleration is an…

Logic in Computer Science · Computer Science 2013-10-04 Francesco Alberti , Silvio Ghilardi , Natasha Sharygina

Implicit computational complexity, which aims at characterizing complexity classes by machine-independent means, has traditionally been based, on the one hand, on programs and deductive formalisms for free algebras, and on the other hand on…

Logic in Computer Science · Computer Science 2018-02-12 Daniel Leivant , Jean-Yves Marion

While the utility of well-chosen abstractions for understanding and predicting the behaviour of complex systems is well appreciated, precisely what an abstraction $\textit{is}$ has so far has largely eluded mathematical formalization. In…

Artificial Intelligence · Computer Science 2021-06-29 Beren Millidge

Operating Systems are built upon a set of abstractions to provide resource management and programming APIs for common functionality, such as synchronization, communication, protection, and I/O. The process abstraction is the bridge across…

Operating Systems · Computer Science 2022-05-26 Rodrigo Siqueira , Nelson Lago , Fabio Kon , Dejan Milojičić

Software engineering concepts and processes are worthy of formal study; and yet we seldom formalize them. This "research ideas" article explores what a theory of software engineering could and should look like. Software engineering research…

Software Engineering · Computer Science 2025-02-25 Bertrand Meyer

The success of software model checking depends on finding an appropriate abstraction of the subject program. The choice of the abstract domain and the analysis configuration is currently left to the user, who may not be familiar with the…

Software Engineering · Computer Science 2013-05-30 Sven Apel , Dirk Beyer , Karlheinz Friedberger , Franco Raimondi , Alexander von Rhein

Complexity is an inherent attribute of any project. The purpose of defining and documenting complexity is to have an early warning tool allowing a project team to focus on certain areas and aspects of the project in order to prevent and…

Software Engineering · Computer Science 2015-12-25 Alexei Botchkarev , Patrick Finnigan

In the task abstraction phase of the visualization design process, including in "design studies", a practitioner maps the observed domain goals to generalizable abstract tasks using visualization theory in order to better understand and…

Human-Computer Interaction · Computer Science 2020-03-04 Aditeya Pandey , Yixuan Zhang , John A. Guerra-Gomez , Andrea G. Parker , Michelle A. Borkin