English
Related papers

Related papers: The Two Paradigms of Software Design

200 papers

In the last 15 years, software architecture has emerged as an important software engineering field for managing the development and maintenance of large, software- intensive systems. Software architecture community has developed numerous…

Software Engineering · Computer Science 2017-01-24 Davide Falessi , Muhammad Ali Babar , Giovanni Cantone , Philippe Kruchten

These patterns describe the strategies I use to find novel or unorthodox insights in the area of software design and research. The patterns are driven by inconsistencies between what we say and what we do, and they provide techniques for…

Software Engineering · Computer Science 2024-06-11 Mary Shaw

The concept of intelligent software is flawed. The behaviour of software is determined by the hardware that "interprets" it. This undermines claims regarding the behaviour of theorised, software superintelligence. Here we characterise this…

Artificial Intelligence · Computer Science 2024-11-04 Michael Timothy Bennett

Abstraction is one of the fundamental concepts of software design. Consequently, the determination of an appropriate abstraction level for the multitude of artefacts that form a software system is an integral part of software engineering.…

Software Engineering · Computer Science 2017-09-06 Stefan Wagner , Florian Deissenboeck

The main problems of Software Engineering appear as a result of incompatibilities. For example, the quality of organization of the production process depends on correspondence with existent resources and on a common understanding of project…

Software Engineering · Computer Science 2009-03-13 Kirill A Sorudeykin

Spreadsheet engineering methodologies are diverse and sometimes contradictory. It is difficult for spreadsheet developers to identify a spreadsheet engineering methodology that is appropriate for their class of spreadsheet, with its unique…

Human-Computer Interaction · Computer Science 2008-02-28 Thomas A. Grossman , Ozgur Ozluk

The paper introduces RPSE, Reification as a Paradigm of Software Engineering, and enumerates the most important theoretical and practical problems of the development and application of this paradigm. Main thesis: Software engineering is the…

Software Engineering · Computer Science 2018-10-05 Viktor Sirotin

By contrast to design meetings, design evaluation meetings (DEMs) have generally been considered as situations in which, according to DEMs methodologies, design activities are quite marginal. In a study of DEMs in software development, i.e.…

Human-Computer Interaction · Computer Science 2016-08-16 Patrick D'Astous , Françoise Détienne , Willemien Visser , Pierre Robillard

Decision-making is a key software engineering skill. Developers constantly make choices throughout the software development process, from requirements to implementation. While prior work has studied developer decision-making, the choices…

Software Engineering · Computer Science 2023-01-25 Jenny T. Liang , Maryam Arab , Minhyuk Ko , Amy J. Ko , Thomas D. LaToza

This paper investigates two aspects of process thinking that affect the success rate of IT projects. These two aspects are the changes in the structure of organizations and the epistemology of Information Systems Development. Firstly, the…

Other Computer Science · Computer Science 2007-05-23 Mark Dumay

Over the past three decades, considerable effort has been devoted to the study of software architecture. A major portion of this effort has focused on the originally proposed view of four "C"s---components, connectors, configurations, and…

Software Engineering · Computer Science 2017-04-18 Arman Shahbazian , Youn Kyu Lee , Duc Le , Nenad Medvidovic

This paper is in the intersection of software engineering and system engineering, two intimately intertwined disciplines. A dominating theme in this paper is the integral conceptualization of systems at large, as well as an underlying…

Software Engineering · Computer Science 2021-03-05 Sabah Al-Fedaghi

A software architecture is the result of multiple decisions made by a software architect. These decisions are called architectural decisions, as they bring solutions to architectural problems. Relations between decisions can be captured in…

Software Engineering · Computer Science 2018-07-10 Marcin Szlenk

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

An instructor teaching a course on Software Architecture needs to be more reflective to engage students productively in the learning activities. In this reflective essay, the author identifies a few decisive moments referred to as…

Software Engineering · Computer Science 2021-01-26 Arvind W Kiwelekar

Attribute-driven software architecture design aims to provide decision support by taking into account the quality attributes of softwares. A central question in this process is: What architecture design best fulfills the desirable software…

Computer Science and Game Theory · Computer Science 2015-08-13 Jiamou Liu , Ziheng Wei

Agile software development emphasizes flexibility and iterative processes, which may conflict with the more linear, rigid, and time-consuming traditional funding and contracting approaches. This review synthesizes real-life experiences of…

Software Engineering · Computer Science 2025-10-22 Bertha Ngereja , Magne Jørgensen

A new workflow for software development (proof-driven development) is presented. An extension of test-driven development, the new workflow utilizes the paradigm of dependently typed programming. The differences in design, complexity and…

Software Engineering · Computer Science 2015-12-08 Ben Goodspeed

Characterizing creativity in visualization design can lead to the design of more expressive representations and visualization authoring tools that prioritize human creativity. In this paper, we examine how creativity manifests itself in…

Human-Computer Interaction · Computer Science 2026-04-14 Tianwei Ma , Zinat Ara , Safwat Ali Khan , Fanny Chevalier , Niklas Elmqvist , Naimul Hoque

In this paper, we address program development by multiple different programmers (or programming teams), each working in different settings (programming languages or reasoning frameworks), but following a common specification; in particular,…

Logic in Computer Science · Computer Science 2023-06-13 Georgios V. Pitsiladis , Petros S. Stefaneas