Laboratory of Structural Bioinformatics, Institute of Molecular Biology and Biotechnology, Collegium Biologicum, Adam Mickiewicz University, ul. Umultowska 89, 61-614 Poznan, Poland.
Brief Bioinform. 2012 Mar;13(2):244-57. doi: 10.1093/bib/bbr035. Epub 2011 Jul 29.
Creating useful software is a major activity of many scientists, including bioinformaticians. Nevertheless, software development in an academic setting is often unsystematic, which can lead to problems associated with maintenance and long-term availibility. Unfortunately, well-documented software development methodology is difficult to adopt, and technical measures that directly improve bioinformatic programming have not been described comprehensively. We have examined 22 software projects and have identified a set of practices for software development in an academic environment. We found them useful to plan a project, support the involvement of experts (e.g. experimentalists), and to promote higher quality and maintainability of the resulting programs. This article describes 12 techniques that facilitate a quick start into software engineering. We describe 3 of the 22 projects in detail and give many examples to illustrate the usage of particular techniques. We expect this toolbox to be useful for many bioinformatics programming projects and to the training of scientific programmers.
开发有用的软件是许多科学家的主要活动,包括生物信息学家。然而,学术环境中的软件开发通常是无系统的,这可能导致与维护和长期可用性相关的问题。不幸的是,难以采用有充分文件记录的软件开发方法,并且尚未全面描述直接改进生物信息编程的技术措施。我们检查了 22 个软件项目,并确定了一套在学术环境中进行软件开发的实践方法。我们发现这些方法对于规划项目、支持专家(例如实验人员)的参与以及提高程序的质量和可维护性非常有用。本文介绍了 12 种有助于快速入门软件工程的技术。我们详细描述了其中的 3 个项目,并提供了许多示例来说明特定技术的用法。我们希望这个工具包对许多生物信息学编程项目和科学程序员的培训都有用。