| Literature DB >> 35449149 |
Sibylle Hermann1,2, Jörg Fehr3.
Abstract
The reuse of research software needs good documentation, however, the documentation in particular is often criticized. Especially in non-IT specific disciplines, the lack of documentation is attributed to the lack of training, the lack of time or missing rewards. This article addresses the hypothesis that scientists do document but do not know exactly what they need to document, why, and for whom. In order to evaluate the actual documentation practice of research software, we examined existing recommendations, and we evaluated their implementation in everyday practice using a concrete example from the engineering sciences and compared the findings with best practice examples. To get a broad overview of what documentation of research software entailed, we defined categories and used them to conduct the research. Our results show that the big picture of what documentation of research software means is missing. Recommendations do not consider the important role of researchers, who write research software, whose documentation takes mainly place in their research articles. Moreover, we show that research software always has a history that influences the documentation.Entities:
Mesh:
Year: 2022 PMID: 35449149 PMCID: PMC9023583 DOI: 10.1038/s41598-022-10376-9
Source DB: PubMed Journal: Sci Rep ISSN: 2045-2322 Impact factor: 4.996
Purpose of the different documentations.
| Documentation | Neweul-M2 | DuMux | preCICE |
|---|---|---|---|
| Wiki | F, I | I | |
| Help/Handbook/User Docs | F, I | F, I | F, I |
| GitLab/GitHub | P, F, I | F, I | F, I |
| RSE Manuscript/Dev docs | I | F, I | |
| Publications | P, F | P,F, I | P,F, I |
| Examples | F | F | F |
| Code | I | ||
| API | I | ||
| Community | F, I | ||
| Blog | F, I |
P—Problem, F—Feature, I—Implementation.
Figure 1Different aspects of documentation.
Information about examined research software projects.
| Research software | Neweul-M2 | DuMux | preCICE |
|---|---|---|---|
| Team size | 1 RSE, 3 RSD | 2 RSE, 22 RSD | 7 RSE |
| Estimated number of users | 40 | 35 | > 100 |
| Year of release | 2007 | 2009 | 2009 |
| Language | MATLAB | C++ | C++ |
Purpose mentioned in the recommendations.
| Article | Problem | Feature | Implementation |
|---|---|---|---|
| Stodden and Miguez[ | x | ||
| Fehr and Heiland[ | x | ||
| Wilson et al.[ | x | x | x |
| Wilson et al.[ | x | ||
| Hastings et al.[ | x | x | |
| Lee[ | x | x | |
| Taschuk and Wilson[ | x | x | |
| Sandve et al.[ | x | x | x |
| Karimzadeh and Hoffman[ | x | ||
| Gil et al.[ | x | x |
Domains mentioned in the recommendations.
| Article | Private | Shared | Open |
|---|---|---|---|
| Stodden and Miguez[ | x | x | |
| Fehr and Heiland[ | x | ||
| Wilson et al.[ | x | x | |
| Wilson et al.[ | x | ||
| Hastings et al.[ | x | ||
| Lee[ | x | ||
| Taschuk and Wilson[ | x | x | |
| Sandve et al.[ | x | x | |
| Karimzadeh and Hoffman[ | x | ||
| Gil et al.[ | x |
Domains of the different documentations.
| Documentation | Neweul-M2 | DuMux | preCICE |
|---|---|---|---|
| Wiki | S | O | |
| Help/Handbook/User Doc | S | O | O |
| GitLab/GitHub | S | O | O |
| RSE Manuscript/Dev Docs | P | O | |
| Publications | S, O | O | O |
| Examples | S | O | O |
| Code | O | ||
| API | O | ||
| Community | O | ||
| Blog | O |
P—Private, S—Shared, O—Open.
Figure 2Quality of research software documentation over time. The research software undergoes different phases, from first implementation to continuous application. During these phases, the quality of the documentation varies accordingly. In particular, the change of RSE involves risks, but can also lead to improvements.
Authors and audience of the different documentations.
| Documentation | Neweul-M2 | DuMux | preCICE | |||
|---|---|---|---|---|---|---|
| Author | Audience | Author | Audience | Author | Audience | |
| Wiki | RSE | RSE | RSD | |||
| Help/Handbook/User Doc | RSE, RSD | User | RSE | RSD, User | RSE | User |
| GitLab/GitHub | RSE, RSD | RSE, RSD | RSE, RSD | RSD,User | RSE | RSE, User |
| RSE Manuscript/Dev Docs | RSE | RSE | RSE | RSE | ||
| Publications | RSE, RSD | RSE, RSD, (User) | RSE, RSD | RSE, RSD, (User) | RSE | RSE ,(User) |
| Examples | RSE | RSD, User | RSE | RSD, User | RSE | User |
| Code | RSE | RSD | ||||
| API | RSE | RSE, User | ||||
| Community | RSE | User | ||||
| Blog | RSE | User | ||||
RSE—Research Software Engineer, RSD—Research Software Developer.
Authors and audience of documentation mentioned in the recommendations.
| Article | Research software engineer | Research software developer | User | ||
|---|---|---|---|---|---|
| Author | Audience | Author | Audience | Audience | |
| Stodden and Miguez[ | x | x | x | ||
| Fehr and Heiland[ | x | x | x | ||
| Wilson et al.[ | x | x | |||
| Wilson et al.[ | x | x | |||
| Hastings et al.[ | x | x | x | x | |
| Lee[ | x | x | x | ||
| Taschuk and Wilson[ | x | x | x | ||
| Sandve et al.[ | x | x | x | ||
| Karimzadeh and Hoffman[ | x | x | x | ||
| Gil et al.[ | x | x | x | ||