English
Related papers

Related papers: Towards physical laws for software architecture

200 papers

This paper describes a set of tools for automating and controlling the development and maintenance of software systems. The mental model is a software assembly line. Program design and construction take place at individual programmer…

Software Engineering · Computer Science 2010-06-14 Martin J. McGowan , William L. Anderson

This chapter investigates the concept of living structure - which is defined as a structural hierarchy that has a recurring pattern of an abundance of small substructures compared to larger ones - and the application of such structures in…

Physics and Society · Physics 2024-10-10 Bin Jiang , Qianxiang Yao , Huan Qian , Bisong Hu

Software development as done using modern methodologies and source control management systems, has been often established as an example of self-organization, with code growing and evolving organically, through activities that do not stem…

Adaptation and Self-Organizing Systems · Physics 2019-05-28 Bartolomé Ortiz , J. J. Merelo-Guervós

A software architecture defines the blueprints of a large computational system, and is thus a crucial part of the design and development effort. This task has been explored extensively in the context of mobile robots, resulting in a…

Robotics · Computer Science 2023-09-08 Henrik Andreasson , Giorgio Grisetti , Todor Stoyanov , Alberto Pretto

Programming is ubiquitous in applied biostatistics; adopting software engineering skills will help biostatisticians do a better job. To explain this, we start by highlighting key challenges for software development and application in…

The understanding of source code in large-scale software systems poses a challenge for developers. The role of expertise in source code becomes critical for identifying developers accountable for substantial changes. However, in the context…

Software Engineering · Computer Science 2025-08-26 Karolina Milano , Bruno Cafeo

Large Language Models (LLMs) are used for many different software engineering tasks. In software architecture, they have been applied to tasks such as classification of design decisions, detection of design patterns, and generation of…

Software Engineering · Computer Science 2025-05-23 Larissa Schmid , Tobias Hey , Martin Armbruster , Sophie Corallo , Dominik Fuchß , Jan Keim , Haoyu Liu , Anne Koziolek

Global software engineering has become a fact in many companies due to real necessity in practice. In contrast to co-located projects global projects face a number of additional software engineering challenges. Among them quality management…

Software is the key crosscutting technology that enables advances in mathematics, computer science, and domain-specific science and engineering to achieve robust simulations and analysis for science, engineering, and other research fields.…

Order is one of the main instruments to measure the relationship between objects in (empirical) data. However, compared to methods that use numerical properties of objects, the amount of ordinal methods developed is rather small. One reason…

Artificial Intelligence · Computer Science 2023-12-29 Gerd Stumme , Dominik Dürrschnabel , Tom Hanika

Software engineering and information systems practices seek ultimately to create the flawless product. One of the tools used to improve the quality of software development is the use of metrics. In this paper, metrics retrieved from open…

Software Engineering · Computer Science 2015-11-11 Mamdouh Alenezi , Ibrahim Abunadi

Software visualization seeks to represent software artifacts graphical-ly in two or three dimensions, with the goal of enhancing comprehension, anal-ysis, maintenance, and evolution of the source code. In this context, visualiza-tions…

Software Engineering · Computer Science 2025-09-30 Anthony Savidis , Christos Vasilopoulos

Software development comprises complex tasks which are performed by humans. It involves problem solving, domain understanding and communication skills as well as knowledge of a broad variety of technologies, architectures, and solution…

Software Engineering · Computer Science 2019-10-22 Christoph Matthies , Guenter Hesse

The ability to express a program as a hierarchical composition of parts is an essential tool in managing the complexity of software and a key abstraction this provides is to separate the representation of data from the computation. Many…

Programming Languages · Computer Science 2012-10-04 James Hanlon , Simon J. Hollis , David May

Distribution can be a feature of the software evolution process. In other words, temporally and spatially distributed teams and organizations can develop and work on a software application. The simplest case is to outsource production and…

Software Engineering · Computer Science 2022-05-02 Mohammad Reza Besharati

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

The Open Source Software movement has been growing exponentially for a number of years with no signs of slowing. Driving this growth is the widespread availability of libraries and frameworks that provide many functionalities. Developers…

Software Engineering · Computer Science 2022-06-22 Stan Zajdel , Diego Elias Costa , Hafedh Mili

The idea of automatizing the assessment of objectoriented design is not new. Different approaches define and apply their own quality models, which are composed of single metrics or combinations thereof, to operationalize software design.…

Software Engineering · Computer Science 2016-02-24 Johannes Bräuer

Integrating architectural elements with a modern programming language is essential to ensure a smooth combination of architectural design and programming. In this position statement, we motivate a combination of architectural description…

Software Engineering · Computer Science 2014-09-09 Arne Haber , Jan Oliver Ringert , Bernhard Rumpe

Cyber-physical systems increasingly rely on distributed computing platforms where sensing, computing, actuation, and communication resources are shared by a multitude of applications. Such `cyber-physical cloud computing platforms' present…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-10-03 Gabor Karsai , Daniel Balasubramanian , Abhishek Dubey , William R. Otte