English
Related papers

Related papers: Documenting Bioinformatics Software Via Reverse En…

200 papers

[Background] In large open-source software projects, development knowledge is often fragmented across multiple artefacts and contributors such that individual stakeholders are generally unaware of the full breadth of the product features.…

Software Engineering · Computer Science 2024-08-05 Tim Puhlfürß , Lloyd Montgomery , Walid Maalej

Scientific software is essential to scientific innovation and in many ways it is distinct from other types of software. Abandoned (or unmaintained), buggy, and hard to use software, a perception often associated with scientific software can…

Software Engineering · Computer Science 2025-06-23 Addi Malviya Thakur , Reed Milewicz , Mahmoud Jahanshahi , Lavínia Paganini , Bogdan Vasilescu , Audris Mockus

Like other engineering disciplines, software engineering should also have principles to guide the construction of sustainable computer applications. Tangible properties include a) unlimited scalability, b) maximal reproducibility, and c)…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-07-23 Justin Shi

Students enrolled in software engineering degrees are generally required to undertake a research project in their final year through which they demonstrate the ability to conduct research, communicate outcomes, and build in-depth expertise…

Software Engineering · Computer Science 2023-02-14 Chetan Arora , Laura Tubino , Andrew Cain , Kevin Lee , Vasudha Malhotra

This document explores the advantages of integrating open source software and practices in managing a scientific lab, emphasizing reproducibility and the avoidance of pitfalls. It details practical applications from website management using…

Computers and Society · Computer Science 2024-05-14 Julien Cohen-Adad

In this paper, we present our vision of the integration of human factors engineering into the software development process. The aim of this approach is to improve the quality of software and to deal with human errors in a systematic way.

Software Engineering · Computer Science 2015-03-13 Maria Spichkova , Huai Liu , Mohsen Laali , Heinz W. Schmidt

Empirical software engineering is concerned with the design and analysis of empirical studies that include software products, processes, and resources. Optimization is a form of data analytics in support of human decision-making.…

Software Engineering · Computer Science 2019-12-05 Guenther Ruhe

Development of scientific and engineering software is usually different and could be more challenging than the development of conventional enterprise software. The authors were involved in a technology-transfer project between academia and…

Software Engineering · Computer Science 2020-03-03 Vahid Garousi , Ehsan Abbasi , Bedir Tekinerdogan

This paper describes a novel approach to software engineering derived from the "SP Theory of Intelligence" and its realisation in the "SP Computer Model". Despite superficial appearances, it is shown that many of the key ideas in software…

Software Engineering · Computer Science 2018-08-07 J Gerard Wolff

Product take-back legislation forces manufacturers to bear the costs of collection and disposal of products that have reached the end of their useful lives. In order to reduce these costs, manufacturers can consider reuse, remanufacturing…

Artificial Intelligence · Computer Science 2010-12-21 Bo Xing , Wen-Jing Gao , Kimberly Battle , Tshildzi Marwala , Fulufhelo V. Nelwamondo

Current day software development relies heavily on the use of service architectures and on agile iterative development methods to design, implement, and deploy systems. These practices result in systems made up of multiple services that…

Software Engineering · Computer Science 2020-07-20 Blagovesta Kostova , Seda Gürses , Carmela Troncoso

Context: Experiment replications play a central role in the scientific method. Although software engineering experimentation has matured a great deal, the number of experiment replications is still relatively small. Software engineering…

Software Engineering · Computer Science 2024-02-13 Martín Solari , Sira Vegas , Natalia Juristo

Spreadsheet engineering adapts the lessons of software engineering to spreadsheets, providing eight principles as a framework for organizing spreadsheet programming recommendations. Spreadsheets raise issues inadequately addressed by…

Software Engineering · Computer Science 2024-12-31 Thomas A. Grossman

Dynamic Binary Instrumentation (DBI) is the set of techniques that enable instrumentation of programs at run-time, making it possible to monitor and modify the execution of compiled binaries or entire systems. DBI is used for countless…

Cryptography and Security · Computer Science 2025-08-04 Oscar Llorente-Vazquez , Xabier Ugarte-Pedrero , Igor Santos-Grueiro , Pablo Garcia Bringas

On-line experimentation (also known as A/B testing) has become an integral part of software development. To timely incorporate user feedback and continuously improve products, many software companies have adopted the culture of agile…

Applications · Statistics 2019-08-13 Yu Wang , Somit Gupta , Jiannan Lu , Ali Mahmoudzadeh , Sophia Liu

One source of software project challenges and failures is the systematic errors introduced by human cognitive biases. Although extensively explored in cognitive psychology, investigations concerning cognitive biases have only recently…

Software Engineering · Computer Science 2022-03-22 Rahul Mohanani , Iflaah Salman , Burak Turhan , Pilar Rodriguez , Paul Ralph

Empirical Software Engineering has received much attention in recent years and became a de-facto standard for scientific practice in Software Engineering. However, while extensive guidelines are nowadays available for designing, conducting,…

Software Engineering · Computer Science 2025-01-14 Daniel Mendez , Paris Avgeriou , Marcos Kalinowski , Nauman bin Ali

Software, and software source code in particular, is widely used in modern research. It must be properly archived, referenced, described and cited in order to build a stable and long lasting corpus of scientic knowledge. In this article we…

Digital Libraries · Computer Science 2020-09-16 Roberto Di Cosmo

It can be insightful to extend qualitative studies with a secondary quantitative analysis (where the former suggests insightful questions that the latter can answer). Documenting developer beliefs should be the start, not the end, of…

Software Engineering · Computer Science 2019-04-12 Shrikanth N. C. , Tim Menzies

We introduce a method of reversing the execution of imperative concurrent programs. Given an irreversible program, we describe the process of producing two versions. The first performs forward execution and saves information necessary for…

Programming Languages · Computer Science 2022-05-04 James Hoey , Irek Ulidowski