Nmag 微磁模拟工具——软件工程经验教训
软件工程
2016-07-14 v2 计算物理
摘要
我们从计算科学中的软件工程视角,回顾开源代码 Nmag 的设计与开发决策及其影响。我们总结了经验教训以及对未来计算科学项目的建议。关键经验包括:将模拟功能封装于通用语言(此处为 Python)的库中,为软件使用提供了极大灵活性。为顶层用户界面选择 Python 深受科学与工程界用户欢迎。从源码安装(即将所需的外部库与依赖从 tarball 编译)异常稳健。在某些地方,代码过于复杂远超必要,引入了不必要的复杂性并降低了可维护性。随包分发的测试有用,尽管更多的单元测试与持续集成本应更可取。详细的文档连同系统使用教程,被社区视为其主要优势之一。
引用
@article{arxiv.1601.07392,
title = {Nmag micromagnetic simulation tool - software engineering lessons learned},
author = {Hans Fangohr and Maximilian Albert and Matteo Franchin},
journal= {arXiv preprint arXiv:1601.07392},
year = {2016}
}
备注
7 pages, 5 figures, Software Engineering for Science, ICSE2016