返回
Workflow abstractions for automatic modularity: Improving workflow code reusability
DOI:10.1016/j.future.2026.108776.png)
摘要
En 中文
数据分析工作流是数据密集型科学的中心,但其日益增长的结构复杂性使得理解和复用变得困难。大型工作流图通常由数百个步骤和数千个数据依赖关系组成,可能令用户不知所措并阻碍代码探索。子工作流通过提供粗粒度、分层的工作流结构视图以及用于复用的可识别功能组件,提供了一种自然机制来降低这种复杂性。以GitHub分叉作为复用的指标,一项针对从GitHub挖掘的3,009个Nextflow工作流的实证研究表明,使用子工作流的工作流平均比不使用的多被分叉2.5倍,突显了模块化与复用之间的强关联。然而,仅有21.8%的工作流定义了子工作流,反映了设计有意义模块化结构的难度。为解决这一差距,我们提出了一种自动构建抽象的框架,即结构对象编码工作流图内(可能嵌套的)子工作流。基于对用户定义子工作流的大规模分析,我们推断出常见的模块化策略并形式化了三种类型的自动抽象。我们引入了AbstractionBuilder算法,该算法直接从工作流依赖图构建这些抽象。来自工作流开发者的反馈和对实际工作流的实证评估表明,该抽象框架能够创建有意义的子工作流,形成可降低工作流图结构复杂度的连贯组件。这些发现表明,该抽象框架支持工作流的理解和复用。
期刊
F
IF:
6.1
论文数:
6.8K
被引数:
2.3W
机构
引用论文
暂无论文信息

