Skip to main content
QUICK REVIEW

[论文解读] HEP Software Foundation Community White Paper Working Group - Software Development, Deployment and Validation

B. Couturier, G. Eulisse|arXiv (Cornell University)|Dec 21, 2017
Scientific Computing and Data Management参考文献 7被引用 5
一句话总结

本白皮书提出了一项面向高能物理(HEP)领域全体社区的策略,旨在通过采纳开源软件社区的最佳实践,提升软件开发、部署与验证的水平。该策略倡导建立一个中心化的论坛、实施标准化培训、改进开发工具,并加强对软件贡献的认可,以确保在跨机构、异构的HEP合作团队中实现长期可持续性与互操作性。

ABSTRACT

The High Energy Phyiscs community has developed and needs to maintain many tens of millions of lines of code and to integrate effectively the work of thousands of developers across large collaborations. Software needs to be built, validated, and deployed across hundreds of sites. Software also has a lifetime of many years, frequently beyond that of the original developer, it must be developed with sustainability in mind. Adequate recognition of software development as a critical task in the HEP community needs to be fostered and an appropriate publication and citation strategy needs to be developed. As part of the HEP Softare Foundation's Community White Paper process a working group on Software Development, Deployment and Validation was formed to examine all of these issues, identify best practice and to formulare recommendations for the next decade. Its report is presented here.

研究动机与目标

  • 解决高能物理领域大规模、分布式软件开发所面临的挑战,其中团队跨越多个机构,软件专业水平参差不齐。
  • 通过推广代码质量、模块化设计和长期可维护性等最佳实践,提升软件的长期可持续性,超越原始开发者的在职期限。
  • 通过创建共享的培训资源并促进跨实验合作,实现知识共享,减少重复工作。
  • 通过标准化工具、性能监控与度量驱动的开发方式,提升软件验证与部署水平。
  • 建立正式的软件贡献认可机制,确保开发者获得公平的学术认可与职业发展机会。

提出的方法

  • 建立一个类比成功工业论坛(如Concurrency Forum)的社区论坛,用于跟踪新兴技术并促进对软件挑战的讨论。
  • 开发并传播标准化的软件项目模板与打包解决方案,以简化新成员的入职流程,减少重复开发。
  • 创建与实验无关的核心培训课程,基于Software Carpentry、LHCb StarterKit和ALICE Juniors等成功项目的经验。
  • 加强与外部软件社区(如SciPy、SC、WSSSPE)的联系,分享HEP使用案例,并借鉴更广泛的软件开发趋势。
  • 开发性能测量与性能分析工具原型,用于监控并发行为与系统表现,基于现有工具如igprof进行扩展。
  • 设计基于度量的软件引用系统,用于追踪使用情况,实现对软件贡献的正式认可。

实验结果

研究问题

  • RQ1在实验间时间线、规模与资金模式存在差异的背景下,HEP社区如何实现软件开发实践的标准化?
  • RQ2当原始开发者离职且代码库已存在数十年时,应通过何种机制确保软件的长期可持续性?
  • RQ3如何在地理上分散且文化多元的HEP团队之间有效共享知识与最佳实践?
  • RQ4哪些工具与工作流能够提升大规模复杂随机HEP软件输出的验证效率?
  • RQ5如何以正式方式认可并引用软件贡献,以支持职业发展与科研认可?

主要发现

  • 建立HEP软件社区论坛对于跟踪新兴技术与协调原型开发至关重要,其模式可借鉴成功的工业论坛。
  • 标准化的项目模板与打包解决方案可显著缩短入职时间,并提升各实验间代码的可维护性。
  • 基于Software Carpentry与LHCb StarterKit等项目的经验,开发与实验无关的培训课程,能有效提升整个社区的核心软件能力。
  • 与外部软件社区(如SciPy、WSSSPE)的整合,有助于实现知识共享,并加速现代开发实践的采纳。
  • 性能监控工具(如igprof的增强版本)对于测量与提升软件效率至关重要,尤其在并发与高性能计算环境中。
  • 基于度量的软件引用系统可实现对软件贡献的正式认可,支持公平的科研信用与职业发展。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。