English
Related papers

Related papers: Learning From Each Other: How Are Architectural Mi…

200 papers

In Software Engineering, early detection of architectural issues is key. It helps mitigate the risk of poor performance, and lowers the cost of repairing these issues. Metrics give a quick overview of the project which helps designers with…

Software Engineering · Computer Science 2019-01-29 Théo Coulin , Maxence Detante , William Mouchère , Fabio Petrillo

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

Software Architecture, from definition to maintenance and evolution, is a complex aspect of software development and, consequently, a challenging subject when it comes to teaching it, and learning it. Many research efforts have been devoted…

Software Engineering · Computer Science 2023-03-01 Laura M. Castro

Software development, often perceived as a technical endeavor, is fundamentally a social activity requiring collaboration among team members. Acknowledging this, the software development community has devised strategies to address possible…

Software Engineering · Computer Science 2024-09-04 Mikhail Evtikhiev , Ekaterina Koshchenko , Vladimir Kovalenko

Context: Designing software is an activity in which software developers think and make design decisions that shape the structure and behavior of software products. Designing software is one of the least understood software engineering…

Software Engineering · Computer Science 2021-08-27 Rodi Jolak , Andreas Wortmann , Grischa Liebel , Eric Umuhoza , Michel R. V. Chaudron

Software failures can have significant consequences, making learning from failures a critical aspect of software engineering. While software organizations are recommended to conduct postmortems, the effectiveness and adoption of these…

Software Engineering · Computer Science 2026-02-27 Dharun Anandayuvaraj , Tanmay Singla , Zain Hammadeh , Andreas Lund , Alexandra Holloway , James C. Davis

Due to various sources of uncertainty, emergent behavior, and ongoing changes, the reliability of many socio-technical systems depends on an iterative and collaborative process in which organizations (1) analyze and learn from system…

Software Engineering · Computer Science 2024-02-16 Jonathan Sillito , Matt Pope

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

Sustainability is an increasingly-studied topic in software engineering in general, and in software architecture in particular. There are already a number of secondary studies addressing sustainability in software engineering, but no such…

Software Engineering · Computer Science 2022-04-26 Vasilios Andrikopoulos , Rares-Dorian Boza , Carlos Perales , Patricia Lago

Background: Software Engineering regularly views communication between project participants as a tool for solving various problems in software development. Objective: Formulate research questions in areas related to CHASE. Method: A…

Software Engineering · Computer Science 2022-07-04 Christoph Matthies , Mary Sánchez-Gordón , Jens Bæk Jørgensen , Lutz Prechelt

Architectural decision-making is a crucial concern for researchers and practitioners alike. There is a rationale behind every architectural decision that motivates an architect to choose one architectural solution out of a set of options.…

Software Engineering · Computer Science 2023-09-26 Klara Borowa , Rafał Lewanczyk , Klaudia Stpiczyńska , Patryk Stradomski , Andrzej Zalewski

Technology organizations continuously invest in professional development, but face difficulties in transferring learning to project practice. This exploratory qualitative study investigates which improvements software engineering…

Software Engineering · Computer Science 2026-03-17 Rodrigo Siqueira , Danilo Monteiro Ribeiro

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

Context: Prior research has established that a few individuals generally dominate project communication and source code changes during software development, regardless of task assignments at project initiation. Objective: While this…

Software Engineering · Computer Science 2021-02-15 Sherlock A. Licorish , Stephen G. MacDonell

Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural specifications) are going to be accumulated, the development…

Software Engineering · Computer Science 2009-09-25 Jianjun Zhao

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

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

Context: Surveys constitute an valuable tool to capture a large-scale snapshot of the state of the practice. Apparently trivial to adopt, surveys hide, however, several pitfalls that might hinder rendering the result valid and, thus,…

Software Engineering · Computer Science 2017-02-27 Marco Torchiano , Daniel Méndez Fernández , Guilherme Horta Travassos , Rafael Maiani de Mello

Distributed software development is more difficult than co-located software development. One of the main reasons is that communication is more difficult in distributed settings. Defined processes and artifacts help, but cannot cover all…

Software Engineering · Computer Science 2021-04-12 Kai Stapel , Eric Knauss , Kurt Schneider , Nico Zazworka

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