English
Related papers

Related papers: An Exploratory Study on Architectural Knowledge in…

200 papers

Many of the existing approaches for program comprehension rely on the linguistic information found in source code, such as identifier names and comments. Semantic clustering is one such technique for modularization of the system that relies…

Software Engineering · Computer Science 2017-08-08 Amir Saeidi , Jurriaan Hage , Ravi Khadka , Slinger Jansen

We investigated how programmers express high-level concepts such as path names and coordinates using primitive data types. While relying too much on primitive data types is sometimes criticized as a bad smell, it is still a common practice…

Software Engineering · Computer Science 2022-03-21 Yusuke Shinyama , Yoshitaka Arahori , Katsuhiko Gondow

Design patterns are elegant and well-tested solutions to recurrent software development problems. They are the result of software developers dealing with problems that frequently occur, solving them in the same or a slightly adapted way. A…

Software Engineering · Computer Science 2019-03-25 Hannes Thaller , Lukas Linsbauer , Alexander Egyed

Sustainability is increasingly recognized as an emerging quality property in software-intensive systems, yet architects lack structured guidance to address it effectively throughout the software design phase. Architectural perspectives-an…

Software Engineering · Computer Science 2025-08-29 Markus Funke , Patricia Lago

Successful development of software systems involves efficient navigation among software artifacts. One state-of-practice approach to structure information is to establish trace links between artifacts, a practice that is also enforced by…

Software Engineering · Computer Science 2016-02-25 Markus Borg

Code quality remains an abstract concept that fails to get traction at the business level. Consequently, software companies keep trading code quality for time-to-market and new features. The resulting technical debt is estimated to waste up…

Software Engineering · Computer Science 2022-03-10 Adam Tornhill , Markus Borg

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

Effective ownership of software artifacts, particularly code, is crucial for accountability, knowledge sharing, and code quality enhancement. Researchers have proposed models linking ownership of software artifacts with developer…

Software Engineering · Computer Science 2024-05-27 Umme Ayman Koana , Quang Hy Le , Shadikur Rahman , Chris Carlson , Francis Chew , Maleknaz Nayebi

Software-intensive projects are specified and modeled using domain terminology. Knowledge of the domain terminology is necessary for performing many Software Engineering tasks such as impact analysis, compliance verification, and safety…

Software Engineering · Computer Science 2018-08-16 Jin L. C. Guo , Natawut Monaikul , Jane Cleland-Huang

Background: Poor communication of requirements between clients and suppliers contributes to project overruns,in both software and infrastructure projects. Existing literature offers limited insights into the communication challenges at this…

Software Engineering · Computer Science 2025-04-30 Waleed Abdeen , Krzysztof Wnuk , Michael Unterkalmsteiner , Alexandros Chirtoglou

Empirical Software Engineering (ESE) researchers study (open-source) project issues and the comments and threads within to discover -- among others -- challenges developers face when incorporating new technologies, platforms, and…

Software Engineering · Computer Science 2022-07-21 Ye Paing , Tatiana Castro Vélez , Raffi Khatchadourian

Type systems provide software developers immediate feedback about a subset of correctness properties of their programs. IDE integrations often take advantage of type systems to present errors, suggest completions and even improve…

Programming Languages · Computer Science 2022-07-14 Alcides Fonseca , Guilherme Espada

Security is an important quality of software systems, but there is a huge lack of security experts. To overcome this gap, we aim to make security design knowledge reusable for architects by proposing the SecuRe recommendation approach to…

Software Engineering · Computer Science 2025-01-28 Alex R. Sabau , Dominik Lammers , Horst Lichter

Textual queries are largely employed in information retrieval to let users specify search goals in a natural way. However, differences in user and system terminologies can challenge the identification of the user's information needs, and…

Information Retrieval · Computer Science 2020-03-31 Noemi Mauro , Liliana Ardissono , Adriano Savoca

This article presents a model for describing the architecture of software-intensive systems, based on the use of multiple, concurrent views. This use of multiple views allows to address separately the concerns of the various stakeholders of…

Software Engineering · Computer Science 2020-06-11 Philippe Kruchten

Software architectural changes involve more than one module or component and are complex to analyze compared to local code changes. Development teams aiming to review architectural aspects (design) of a change commit consider many essential…

Software Engineering · Computer Science 2021-09-03 Amit Kumar Mondal , Chanchal K. Roy , Kevin A. Schneider , Banani Roy , Sristy Sumana Nath

In open-source software (OSS), the design of usability is often influenced by the discussions among community members on platforms such as issue tracking systems (ITSs). However, digesting the rich information embedded in issue discussions…

Human-Computer Interaction · Computer Science 2020-01-20 Wenting Wang , Deeksha Arya , Nicole Novielli , Jinghui Cheng , Jin L. C. Guo

For a software system, its architecture is typically defined as the fundamental organization of the system incorporated by its components, their relationships to one another and their environment, and the principles governing their design.…

Software Engineering · Computer Science 2011-03-22 Robert Dabrowski , Krzysztof Stencel , Grzegorz Timoszuk

Many disciplines use standard examples for education and to share and compare research results. The examples are rich enough to study from multiple points of view; they are often called model problems. Software design lacks such a community…

Software Engineering · Computer Science 2025-03-11 Mary Shaw , Marian Petre

Developers create software branches for tentative feature addition and bug fixing, and periodically merge branches to release software with new features or repairing patches. When the program edits from different branches textually overlap…

Software Engineering · Computer Science 2021-03-04 Bowen Shen , Cihan Xiao , Na Meng , Fei He