English
Related papers

Related papers: Design Obligations for Software, with Examples fro…

200 papers

Data-driven approaches are becoming more common as problem-solving techniques in many areas of research and industry. In most cases, machine learning models are the key component of these solutions, but a solution involves multiple such…

Artificial Intelligence · Computer Science 2019-06-20 Parisa Kordjamshidi , Dan Roth , Kristian Kersting

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

Compositionality is thought to be a key component of language, and various compositional benchmarks have been developed to empirically probe the compositional generalization of existing sequence processing models. These benchmarks often…

Machine Learning · Computer Science 2024-05-07 Parikshit Ram , Tim Klinger , Alexander G. Gray

Runtime adaptability is often a crucial requirement for today's complex software systems. Several approaches use an architectural model as a runtime representation of a managed system for monitoring, reasoning and performing adaptation. To…

Software Engineering · Computer Science 2018-05-22 Thomas Vogel , Holger Giese

Software systems are a significant contributor to global sustainability concerns, demanding that environmental, social, technical, and economic factors be systematically addressed from the initial requirements engineering phase. Although…

Software Engineering · Computer Science 2025-10-13 Mandira Roy , Novarun Deb , Nabendu Chaki , Agostino Cortesi

A software architect uses quality requirements to design the architecture of a system. However, it is essential to ensure that the system's final architectural design achieves the standard quality requirements. The existing architectural…

Software Engineering · Computer Science 2021-05-21 Ritu Kapur , Sumit Kalra , Kamlesh Tiwari , Geetika Arora

Designing robots capable of generating interpretable behavior is a prerequisite for achieving effective human-robot collaboration. This means that the robots need to be capable of generating behavior that aligns with human expectations and,…

Artificial Intelligence · Computer Science 2020-08-04 Anagha Kulkarni , Sarath Sreedharan , Sarah Keren , Tathagata Chakraborti , David Smith , Subbarao Kambhampati

Many software systems have become too large and complex to be managed efficiently by human administrators, particularly when they operate in uncertain and dynamic environments and require frequent changes. Requirements-driven adaptation…

Software Engineering · Computer Science 2020-01-24 Yehia Elrakaiby , Paola Spoletini , Bashar Nuseibeh

Deploying successful software-reliant systems that address their mission goals and user needs within cost, resource, and expected quality constraints require design trade-offs. These trade-offs dictate how systems are structured and how…

Other Computer Science · Computer Science 2019-11-11 Lena Pons , Ipek Ozkaya

Software security is of utmost importance for most software systems. Developers must systematically select, plan, design, implement, and especially, maintain and evolve security features -- functionalities to mitigate attacks or protect…

Software Engineering · Computer Science 2025-09-30 Kevin Hermann , Sven Peldszus , Jan-Philipp Steghöfer , Thorsten Berger

Design systems represent a user interaction design and development approach that is currently of avid interest in the industry. However, little research work has been done to synthesize knowledge related to design systems in order to inform…

Software Engineering · Computer Science 2022-05-24 Yassine Lamine , Jinghui Cheng

Programming requires much more than just writing code in a programming language. It is usually done in the context of a stateful environment, by interacting with a system through a graphical user interface. Yet, this wide space of…

Programming Languages · Computer Science 2023-02-21 Joel Jakubovic , Jonathan Edwards , Tomas Petricek

Reinforcement learning defines the problem facing agents that learn to make good decisions through action and observation alone. To be effective problem solvers, such agents must efficiently explore vast worlds, assign credit from delayed…

Machine Learning · Computer Science 2022-03-02 David Abel

Rapid technological progress in computer sciences finds solutions and at the same time creates ever more complex requirements. Due to an evolving complexity todays programming languages provide powerful frameworks which offer standard…

Human-Computer Interaction · Computer Science 2019-05-17 Igor Ivkic , Alexander Wöhrer , Markus Tauber

Control systems are sets of interconnected hardware and software components which regulate the behaviour of processes. The software of modern control systems rises for some years by requirements regarding the flexibility and functionality.…

Software Engineering · Computer Science 2009-04-24 Rolf Andreas Rasenack , Karsten Wolke , Kostyantyn Yermashov , Karl Hayo Siemsen

In this paper, we ask the question of why the quality of commercial software, in terms of security and safety, does not measure up to that of other (durable) consumer goods we have come to expect. We examine this question through the lens…

Cryptography and Security · Computer Science 2025-06-11 Gergely Biczók , Sasha Romanosky , Mingyan Liu

Good software documentation encourages good software engineering, but the meaning of "good" documentation is vaguely defined in the software engineering literature. To clarify this ambiguity, we draw on work from the data and information…

Software Engineering · Computer Science 2020-09-09 Christoph Treude , Justin Middleton , Thushari Atapattu

The term Model-Driven Engineering (MDE) is typically used to describe software development approaches in which abstract models of software systems are created and systematically transformed to concrete implementations. In this paper we give…

Software Engineering · Computer Science 2016-11-17 Robert France , Bernhard Rumpe

Technical debt is a metaphor used to convey the idea that doing things in a "quick and dirty" way when designing and constructing a software leads to a situation where one incurs more and more deferred future expenses. Similarly to…

Software Engineering · Computer Science 2019-04-03 Alvine Boaye Belle

Design representation is a common task in the design process to facilitate learning, analysis, redesign, communication, and other design activities. Traditional representation techniques rely on human expertise and manual construction and…

Information Retrieval · Computer Science 2022-10-24 Serhad Sarica , Ji Han , Jianxi Luo