Cargando…
Current Practice in Software Development for Computational Neuroscience and How to Improve It
Almost all research work in computational neuroscience involves software. As researchers try to understand ever more complex systems, there is a continual need for software with new capabilities. Because of the wide range of questions being investigated, new software is often developed rapidly by in...
Autores principales: | , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Public Library of Science
2014
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3900372/ https://www.ncbi.nlm.nih.gov/pubmed/24465191 http://dx.doi.org/10.1371/journal.pcbi.1003376 |
_version_ | 1782300681030336512 |
---|---|
author | Gewaltig, Marc-Oliver Cannon, Robert |
author_facet | Gewaltig, Marc-Oliver Cannon, Robert |
author_sort | Gewaltig, Marc-Oliver |
collection | PubMed |
description | Almost all research work in computational neuroscience involves software. As researchers try to understand ever more complex systems, there is a continual need for software with new capabilities. Because of the wide range of questions being investigated, new software is often developed rapidly by individuals or small groups. In these cases, it can be hard to demonstrate that the software gives the right results. Software developers are often open about the code they produce and willing to share it, but there is little appreciation among potential users of the great diversity of software development practices and end results, and how this affects the suitability of software tools for use in research projects. To help clarify these issues, we have reviewed a range of software tools and asked how the culture and practice of software development affects their validity and trustworthiness. We identified four key questions that can be used to categorize software projects and correlate them with the type of product that results. The first question addresses what is being produced. The other three concern why, how, and by whom the work is done. The answers to these questions show strong correlations with the nature of the software being produced, and its suitability for particular purposes. Based on our findings, we suggest ways in which current software development practice in computational neuroscience can be improved and propose checklists to help developers, reviewers, and scientists to assess the quality of software and whether particular pieces of software are ready for use in research. |
format | Online Article Text |
id | pubmed-3900372 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2014 |
publisher | Public Library of Science |
record_format | MEDLINE/PubMed |
spelling | pubmed-39003722014-01-24 Current Practice in Software Development for Computational Neuroscience and How to Improve It Gewaltig, Marc-Oliver Cannon, Robert PLoS Comput Biol Perspective Almost all research work in computational neuroscience involves software. As researchers try to understand ever more complex systems, there is a continual need for software with new capabilities. Because of the wide range of questions being investigated, new software is often developed rapidly by individuals or small groups. In these cases, it can be hard to demonstrate that the software gives the right results. Software developers are often open about the code they produce and willing to share it, but there is little appreciation among potential users of the great diversity of software development practices and end results, and how this affects the suitability of software tools for use in research projects. To help clarify these issues, we have reviewed a range of software tools and asked how the culture and practice of software development affects their validity and trustworthiness. We identified four key questions that can be used to categorize software projects and correlate them with the type of product that results. The first question addresses what is being produced. The other three concern why, how, and by whom the work is done. The answers to these questions show strong correlations with the nature of the software being produced, and its suitability for particular purposes. Based on our findings, we suggest ways in which current software development practice in computational neuroscience can be improved and propose checklists to help developers, reviewers, and scientists to assess the quality of software and whether particular pieces of software are ready for use in research. Public Library of Science 2014-01-23 /pmc/articles/PMC3900372/ /pubmed/24465191 http://dx.doi.org/10.1371/journal.pcbi.1003376 Text en This is an open-access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. |
spellingShingle | Perspective Gewaltig, Marc-Oliver Cannon, Robert Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title | Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title_full | Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title_fullStr | Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title_full_unstemmed | Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title_short | Current Practice in Software Development for Computational Neuroscience and How to Improve It |
title_sort | current practice in software development for computational neuroscience and how to improve it |
topic | Perspective |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3900372/ https://www.ncbi.nlm.nih.gov/pubmed/24465191 http://dx.doi.org/10.1371/journal.pcbi.1003376 |
work_keys_str_mv | AT gewaltigmarcoliver currentpracticeinsoftwaredevelopmentforcomputationalneuroscienceandhowtoimproveit AT cannonrobert currentpracticeinsoftwaredevelopmentforcomputationalneuroscienceandhowtoimproveit |