Pitt-Francis Joe, Bernabeu Miguel O, Cooper Jonathan, Garny Alan, Momtahan Lee, Osborne James, Pathmanathan Pras, Rodriguez Blanca, Whiteley Jonathan P, Gavaghan David J
Oxford University Computing Laboratory, Wolfson Building, University of Oxford, Parks Road, Oxford OX1 3QD, UK.
Philos Trans A Math Phys Eng Sci. 2008 Sep 13;366(1878):3111-36. doi: 10.1098/rsta.2008.0096.
Cardiac modelling is the area of physiome modelling where the available simulation software is perhaps most mature, and it therefore provides an excellent starting point for considering the software requirements for the wider physiome community. In this paper, we will begin by introducing some of the most advanced existing software packages for simulating cardiac electrical activity. We consider the software development methods used in producing codes of this type, and discuss their use of numerical algorithms, relative computational efficiency, usability, robustness and extensibility. We then go on to describe a class of software development methodologies known as test-driven agile methods and argue that such methods are more suitable for scientific software development than the traditional academic approaches. A case study is a project of our own, Cancer, Heart and Soft Tissue Environment, which is a library of computational biology software that began as an experiment in the use of agile programming methods. We present our experiences with a review of our progress thus far, focusing on the advantages and disadvantages of this new approach compared with the development methods used in some existing packages. We conclude by considering whether the likely wider needs of the cardiac modelling community are currently being met and suggest that, in order to respond effectively to changing requirements, it is essential that these codes should be more malleable. Such codes will allow for reliable extensions to include both detailed mathematical models--of the heart and other organs--and more efficient numerical techniques that are currently being developed by many research groups worldwide.
心脏建模是生理组学建模领域中现有模拟软件可能最为成熟的领域,因此它为思考更广泛的生理组学社区的软件需求提供了一个绝佳的起点。在本文中,我们将首先介绍一些用于模拟心脏电活动的最先进的现有软件包。我们考虑用于生成此类代码的软件开发方法,并讨论它们对数值算法的使用、相对计算效率、可用性、稳健性和可扩展性。然后,我们继续描述一类称为测试驱动敏捷方法的软件开发方法,并认为此类方法比传统学术方法更适合科学软件开发。一个案例研究是我们自己的一个项目,即癌症、心脏和软组织环境项目,它是一个计算生物学软件库,最初是作为使用敏捷编程方法的一次实验。我们通过回顾我们目前的进展来介绍我们的经验,重点关注这种新方法与一些现有软件包中使用的开发方法相比的优缺点。我们通过考虑心脏建模社区可能更广泛的需求目前是否得到满足来得出结论,并建议为了有效应对不断变化的需求,这些代码必须更具可塑性。这样的代码将允许进行可靠的扩展,以纳入心脏和其他器官的详细数学模型以及目前全球许多研究小组正在开发的更高效的数值技术。