论文标题
计算科学软件的不断变化
The Changing Nature of Computational Science Software
论文作者
论文摘要
如何适应计算科学(CS)的软件工程?如果我们理解这一点,那么我们可以更好地支持CS社区的软件可持续性,可验证性,可重复性,理解力和可用性。例如,提高CS代码的可维护性可能会导致:(a)更快地适应了科学项目模拟对新的有效硬件(多核和异质系统); (b)更好地支持大型团队以协调(通过与跨学科团队集成); (c)建模复杂现象的扩展能力。 为了更好地了解计算科学,本文使用定量证据(来自GitHub的59个CS项目)来检查有关CS的13个发表的信念。这些信念反映了(a)科学挑战的本质; (b)计算机硬件限制的含义; (c)科学软件开发的文化环境。我们发现,使用GitHub的这些新数据,只有少数较旧的信念才能得到认可。超过一半的先前信念是可疑的,这使我们得出结论,CS软件开发的性质正在发生变化。 此外,展望未来,这对(1)我们建议哪种工具更好地支持计算科学,以及(2)两个社区的研究方向。
How should software engineering be adapted for Computational Science (CS)? If we understood that, then we could better support software sustainability, verifiability, reproducibility, comprehension, and usability for CS community. For example, improving the maintainability of the CS code could lead to: (a) faster adaptation of scientific project simulations to new and efficient hardware (multi-core and heterogeneous systems); (b) better support for larger teams to co-ordinate (through integration with interdisciplinary teams); and (c) an extended capability to model complex phenomena. In order to better understand computational science, this paper uses quantitative evidence (from 59 CS projects in Github) to check 13 published beliefs about CS. These beliefs reflect on (a) the nature of scientific challenges; (b) the implications of limitations of computer hardware; and (c) the cultural environment of scientific software development. What we found was, using this new data from Github, only a minority of those older beliefs can be endorsed. More than half of the pre-existing beliefs are dubious, which leads us to conclude that the nature of CS software development is changing. Further, going forward, this has implications for (1) what kinds of tools we would propose to better support computational science and (2) research directions for both communities.