English
Related papers

Related papers: Archiving and referencing source code with Softwar…

200 papers

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

There is no denying the fact that with the widespread usage of computers and the Internet in our daily lives, security of information and data has gained increased attention. Information stored in electronic form is more susceptible to…

Cryptography and Security · Computer Science 2016-10-04 Muhammad Farooq-i-Azam

Documentation is an important mechanism for disseminating software architecture knowledge. Software project teams can employ vastly different formats for documenting software architecture, from unstructured narratives to standardized…

Software Engineering · Computer Science 2023-05-30 Neil A. Ernst , Martin P. Robillard

In recent years, many software engineering researchers have begun to include artifacts alongside their research papers. Ideally, artifacts, including tools, benchmarks, and data, support the dissemination of ideas, provide evidence for…

Software Engineering · Computer Science 2021-05-05 Christopher S. Timperley , Lauren Herckis , Claire Le Goues , Michael Hilton

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

Spreadsheets are used to develop application software that is distributed to users. Unfortunately, the users often have the ability to change the programming statements ("source code") of the spreadsheet application. This causes a host of…

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

We provide an overview of the software engineering efforts and their impact in QMCPACK, a production-level ab-initio Quantum Monte Carlo open-source code targeting high-performance computing (HPC) systems. Aspects included are: (i)…

Modern research heavily relies on software. A significant challenge researchers face is understanding the complex software used in specific research fields. We target two scenarios in this context, namely long onboarding times for newcomers…

Software Engineering · Computer Science 2026-04-14 Adrian Bajraktari , Andreas Vogelsang

In this chapter we first outline some of the popular computing environments used for analysing neural data, followed by a brief discussion of 'software carpentry', basic tools and skills from software engineering that can be of great use to…

Neurons and Cognition · Quantitative Biology 2012-07-26 Robin A. A. Ince

Sustainable software ecosystems are difficult to build, and require concerted effort, community norms and collaborations. In science it is especially important to establish communities in which faculty, staff, students and open-source…

Software Engineering · Computer Science 2013-09-13 Marcus D. Hanwell , Amitha Perera , Wes Turner , Patrick O'Leary , Katie Osterdahl , Bill Hoffman , Will Schroeder

To make digital resources on the web verifiable, immutable, and permanent, we propose a technique to include cryptographic hash values in URIs. We call them trusty URIs and we show how they can be used for approaches like nanopublications…

Cryptography and Security · Computer Science 2014-05-29 Tobias Kuhn , Michel Dumontier

Context: Software architecture is a knowledge-intensive field. One mechanism for storing architecture knowledge is the recognition and description of architectural patterns. Selecting architectural patterns is a challenging task for…

Software Engineering · Computer Science 2020-05-19 Siamak Farshidi , Slinger Jansen , Jan Martijn van der Werf}

Writing documentation about software internals is rarely considered a rewarding activity. It is highly time-consuming and the resulting documentation is fragile when the software is continuously evolving in a multi-developer setting.…

Software Engineering · Computer Science 2013-11-13 Tobias Kuhn , Alexandre Bergel

The number of open source software projects has been growing exponentially. The major online software repository host, GitHub, has accumulated tens of millions of publicly available Git version-controlled repositories. Although the research…

Software Engineering · Computer Science 2018-03-28 Vadim Markovtsev , Waren Long

Computational research and data analytics increasingly relies on complex ecosystems of open source software (OSS) "libraries" -- curated collections of reusable code that programmers import to perform a specific task. Software documentation…

Computers and Society · Computer Science 2018-06-01 R. Stuart Geiger , Nelle Varoquaux , Charlotte Mazel-Cabasse , Chris Holdgraf

Context. Software reusability mechanisms, like inheritance and delegation in Object-Oriented programming, are widely recognized as key instruments of software design. These are used to reduce the risks of source code being affected by…

Software Engineering · Computer Science 2022-08-17 Giammaria Giordano , Gerardo Festa , Gemma Catolino , Fabio Palomba , Filomena Ferrucci , Carmine Gravino

The security of research software is essential for ensuring the integrity and reproducibility of scientific results. However, research software security is still largely unexplored. Due to its dependence on open source components and…

Software Engineering · Computer Science 2025-08-07 Richard Hegewald , Rebecca Beyer

Software repositories contain a plethora of useful information that can be used to enhance software projects. Prior work has leveraged repository data to improve many aspects of the software development process, such as, help extract…

Software Engineering · Computer Science 2020-03-19 Ahmad Abdellatif , Khaled Badran , Emad Shihab

The web of data has brought forth the need to preserve and sustain evolving information within linked datasets; however, a basic requirement of data preservation is the maintenance of the datasets' structural characteristics as well. As…

The recent progress of artificial intelligence(AI) has shown great potentials for alleviating human burden in various complex tasks. From the view of software engineering, AI techniques can be seen in many fundamental aspects of…

Software Engineering · Computer Science 2021-03-02 Wenhe Zhang , Jin He , Kevin Song