English
Related papers

Related papers: Best Practices for Scientific Computing

200 papers

Programming is ubiquitous in applied biostatistics; adopting software engineering skills will help biostatisticians do a better job. To explain this, we start by highlighting key challenges for software development and application in…

By bringing together code, text, and examples, Jupyter notebooks have become one of the most popular means to produce scientific results in a productive and reproducible way. As many of the notebook authors are experts in their scientific…

Software Engineering · Computer Science 2019-06-13 Jiawei Wang , Li Li , Andreas Zeller

There are both technical and social issues regarding the design of sustainable scientific software. Scientists want continuously evolving systems that capture the most recent knowledge while developers and architects want sufficiently…

Software Engineering · Computer Science 2015-10-16 John D. McGregor , J. Yates Monteith

There is a gap in scientific information systems development concerning modern software engineering and scientific computing. Historically, software engineering methodologies have been perceived as an unwanted accidental complexity to…

Modern research in the sciences, engineering, humanities, and other fields depends on software, and specifically, research software. Much of this research software is developed in universities, by faculty, postdocs, students, and staff. In…

Software Engineering · Computer Science 2019-06-04 Daniel S. Katz , Kenton McHenry , Caleb Reinking , Robert Haines

Software is primarily developed for people by people and human factors must be studied in all software engineering phases. Creativity is the source to improvise solutions to problems for dominating complex systems such as software…

Software Engineering · Computer Science 2013-05-28 Daniel Graziotin

We should be in a golden age of scientific discovery, given that we have more data and more compute power available than ever before, plus a new generation of algorithms that can learn effectively from data. But paradoxically, in many…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-26 Niall H. Robinson , Joe Hamman , Ryan Abernathey

Software plays a central role in scientific discovery. Improving how we develop and use software for research can have both broad and deep impacts on a spectrum of challenges and opportunities society faces today. The emergence of Research…

Software Engineering · Computer Science 2022-11-17 Michael A. Heroux

Software is the key crosscutting technology that enables advances in mathematics, computer science, and domain-specific science and engineering to achieve robust simulations and analysis for science, engineering, and other research fields.…

Many scientific-software projects test their codes inadequately, or not at all. Despite its well-known benefits, adopting routine testing is often not easy. Development teams may have doubts about establishing effective test procedures,…

Software Engineering · Computer Science 2014-11-11 Paul Madden , Eduardo G. Valente

While mastered by some, good scientific writing practices within Empirical Software Engineering (ESE) research appear to be seldom discussed and documented. Despite this, these practices are implicit or even explicit evaluation criteria of…

Software Engineering · Computer Science 2025-08-05 Roberto Verdecchia , Justus Bogner

Programming is essential to modern scientific research, yet most scientists report inadequate training for the software development their work demands. Generative AI tools capable of code generation may support scientific programmers, but…

Software Engineering · Computer Science 2026-04-13 Gabrielle O'Brien , Alexis Parker , Nasir Eisty , Jeffrey Carver

Loss of key personnel has always been a risk for research software projects. Key members of the team may have to step away due to illness or burnout, to care for a family member, from a loss of financial support, or because their career is…

Planetary science space missions need high quality software ed efficient algorithms in order to extract innovative scientific results from flight data. Reliable and efficient software technologies are increasingly vital to improve and…

Instrumentation and Methods for Astrophysics · Physics 2020-04-14 Francesco Lazzarotto , Gabriele Cremonese , Alice Lucchetti , Cristina Re , Emanuele Simioni , Maurizio Pajola , Pamela Cambianica , Giovanni Munaretto

We describe two pilot studies of code review by and for scientists. Our principal findings are that scientists are enthusiastic, but need to be shown code review in action, and that just-in-time review of small code changes is more likely…

Software Engineering · Computer Science 2014-09-09 Marian Petre , Greg Wilson

University research groups in Computational Science and Engineering (CSE) generally lack dedicated funding and personnel for Research Software Engineering (RSE), which, combined with the pressure to maximize the number of scientific…

Many dependability techniques expect certain behaviors from the underlying subsystems and fail in chaotic ways if these expectations are not met. Under expected circumstances, however, software tends to work quite well. This paper suggests…

Operating Systems · Computer Science 2007-05-23 George Candea

Cloud computing is gaining more and more traction as a deployment and provisioning model for software. While a large body of research already covers how to optimally operate a cloud system, we still lack insights into how professional…

Software Engineering · Computer Science 2015-03-18 Jürgen Cito , Philipp Leitner , Thomas Fritz , Harald C. Gall

In computational science and in computer science, research software is a central asset for research. Computational science is the application of computer science and software engineering principles to solving scientific problems, whereas…

Software Engineering · Computer Science 2019-08-19 Wilhelm Hasselbring , Leslie Carr , Simon Hettrick , Heather Packer , Thanassis Tiropanis

Nowadays, Computer Science tightly entered all spheres of human activity. To improve quality and speed of development process, it is important to help programmers improve their working conditions. This paper proposes a vision on exploring…

Software Engineering · Computer Science 2020-12-17 Rozaliya Amirova , Sergey Masyagin , Anastasia Reprintseva , Giancarlo Succi , Herman Tarasau