| Literature DB >> 28443186 |
Luis Bastiao Silva1, Rafael C Jimenez2, Niklas Blomberg2, José Luis Oliveira3.
Abstract
Most bioinformatics tools available today were not written by professional software developers, but by people that wanted to solve their own problems, using computational solutions and spending the minimum time and effort possible, since these were just the means to an end. Consequently, a vast number of software applications are currently available, hindering the task of identifying the utility and quality of each. At the same time, this situation has hindered regular adoption of these tools in clinical practice. Typically, they are not sufficiently developed to be used by most clinical researchers and practitioners. To address these issues, it is necessary to re-think how biomedical applications are built and adopt new strategies that ensure quality, efficiency, robustness, correctness and reusability of software components. We also need to engage end-users during the development process to ensure that applications fit their needs. In this review, we present a set of guidelines to support biomedical software development, with an explanation of how they can be implemented and what kind of open-source tools can be used for each specific topic.Entities:
Keywords: Agile; bioinformatics; biomedical software; guidelines; software development
Year: 2017 PMID: 28443186 PMCID: PMC5383938 DOI: 10.12688/f1000research.10750.2
Source DB: PubMed Journal: F1000Res ISSN: 2046-1402
Figure 1. Software development process: including the several stages of the process.
Figure 2. Example of a strategy for SCM workflow based on Git.
It is an example of a bug fix branch from master branch and created a pull request with the changes against master branch.
Figure 3. The deployment of each new release should follow three release management steps: development, testing and production.