English
Related papers

Related papers: Archify: A Recommender System of Architectural Des…

200 papers

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

The critical part for building any software system is its architecture. Architectural design is a design at a higher level of abstraction. A good architecture ensures that software will satisfy its requirement. This paper defines the most…

Software Engineering · Computer Science 2009-12-08 Lena Khaled

Design erosion is a persistent problem within the software engineering discipline. Software designs tend to deteriorate over time and there is a need for tools and techniques that support software architects when dealing with legacy…

Software Engineering · Computer Science 2021-04-29 Frederick Schmidt , Stephen MacDonell , Andy M. Connor

AI-powered software tools are widely used to assist software engineers. However, there is still a need to understand the productivity benefits of such tools for software engineers. In addition to short-term benefits, there is a question of…

Software Engineering · Computer Science 2025-06-24 Giorgio Amasanti , Jasmin Jahic

Software architecture design is a critical, yet inherently complex and knowledge-intensive phase of software development. It requires deep domain expertise, development experience, architectural knowledge, careful trade-offs among competing…

Software Engineering · Computer Science 2025-07-30 Ruiyin Li , Yiran Zhang , Xiyu Zhou , Peng Liang , Weisong Sun , Jifeng Xuan , Zhi Jin , Yang Liu

Software engineers need relevant and up-to-date architectural knowledge (AK), in order to make well-founded design decisions. However, finding such AK is quite challenging. One pragmatic approach is to search for AK on the web using…

Software Engineering · Computer Science 2021-03-23 Mohamed Soliman , Marion Wiese , Yikun Li , Matthias Riebisch , Paris Avgeriou

Software development has steadily embraced agile software development methodology/method (ASDM) and has been moving away from the plan driven software development methodology (PDM) approaches like waterfall. Given the iterative nature of…

Software Engineering · Computer Science 2021-03-02 Vinod Menon , Roopak Sinha , Stephen MacDonell

Software estimation is critical for a software project's success and a challenging activity. We argue that estimation problems are not restricted to the generation of estimates but also their use for commitment establishment: project…

Software Engineering · Computer Science 2022-03-28 Patricia G. F. Matsubara , Igor Steinmacher , Bruno Gadelha , Tayana Conte

The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of…

Software Engineering · Computer Science 2020-05-19 Hugo Andrade , Ivica Crnkovic , Jan Bosch

Development and Operations (DevOps), a particular type of Continuous Software Engineering, has become a popular Software System Engineering paradigm. Software architecture is critical in succeeding with DevOps. However, there is little…

Software Engineering · Computer Science 2020-03-16 Mojtaba Shahin , M. Ali Babar

Cloud-native architectures are often based on microservices and combine different aspects that aim to leverage the capabilities of cloud platforms for software development. Cloud-native architectural characteristics like patterns and best…

Software Engineering · Computer Science 2023-09-28 Robin Lichtenthäler , Jonas Fritzsch , Guido Wirtz

Managing software artifacts is one of the most essential aspects of computer science. It enables to develop, operate, and maintain software in an engineer-like manner. Therefore, numerous concrete strategies, methods, best practices, and…

Software Engineering · Computer Science 2024-04-23 Marcus Hilbrich , Ninon De Mecquenem

Artificial Intelligence (AI) planning is a flourishing research and development discipline that provides powerful tools for searching a course of action that achieves some user goal. While these planning tools show excellent performance on…

Artificial Intelligence · Computer Science 2021-02-23 Sebastian Graef , Ilche Georgievski

Software architecture is defined as the process of a well-structured solution that meets all of the technical and operational requirements, as well as improving the quality attributes of the system such as readability, Reliability,…

Software Engineering · Computer Science 2014-12-22 Abdulrhman Albeladi , Ahmed Almessabi , Aber Abozkhar , Huda Mohamed , Jilson Thomas , Zakaria Alomari

AI agent systems increasingly rely on reusable non-LLM engineering infrastructure that packages tool mediation, context handling, delegation, safety control, and orchestration. Yet the architectural design decisions in this surrounding…

Artificial Intelligence · Computer Science 2026-04-21 Hu Wei

Whenever an architect or a team of architects begins an architectural design, there are certain goals set to achieve. There are many factors involved in setting up goals for the architecture design such as type of the project, end user…

Software Engineering · Computer Science 2015-08-26 Arif Raza , Luiz Fernando Capretz

Increased popularity of `intelligent' web services provides end-users with machine-learnt functionality at little effort to developers. However, these services require a decision threshold to be set which is dependent on problem-specific…

Software Engineering · Computer Science 2020-08-20 Alex Cummaudo , Scott Barnett , Rajesh Vasa , John Grundy

Unique developmental and operational characteristics of ML components as well as their inherent uncertainty demand robust engineering principles are used to ensure their quality. We aim to determine how software systems can be (re-)…

Software Engineering · Computer Science 2022-01-11 Alex Serban , Joost Visser

Accurate software cost and schedule estimation are essential for software project success. Often it referred to as the "black art" because of its complexity and uncertainty, software estimation is not as difficult or puzzling as people…

Software Engineering · Computer Science 2012-01-16 Kardile Vilas Vasantrao

Complex software systems must be maintained for years or decades, and the effort and cost to maintain them are often high, involving continuous refactoring to ensure their longevity in the face of changing requirements. In this article, we…

Software Engineering · Computer Science 2018-02-13 Rafael Capilla , Elisa Yumi Nakagawa , Uwe Zdun , Carlos Carrillo
‹ Prev 1 3 4 5 6 7 10 Next ›