Business Rule Mining from Spreadsheets
业务规则表示指导业务组织操作的知识。它们在组织使用的软件应用程序中实现,从软件中提取它们的活动称为业务规则挖掘。它有各种用途,其中迁移和生成文档是最常见的。然而,除了传统的软件,组织也使用电子表格的大部分业务和决策活动。因此,我们认为电子表格也有丰富的业务规则。因此,我们建议开发一个自动化的系统,从电子表格中提取业务规则,在人类可理解的自然语言格式。这份立场书描述了我们的动机、问题描述、相关工作以及我们预见的挑战。
2015-03-19 cs.SE
Ten Simple Rules for Catalyzing Collaborations and Building Bridges between Research Software Engineers and Software Engineering Researchers
本文针对科研领域中研究软件工程师与软件工程研究者协作的需求,提出十条战略准则,涵盖差异尊重、协作培育、共寻挑战、互利共赢等方面,助力双方建立协同关系以提升研究质量与影响力。
2025-06-03 cs.SE
What to Fix? Distinguishing between design and non-design rules in automated tools
技术债务--为优化交付速度而采取的设计捷径--是长期软件成本的关键部分。因此,自动检测技术债务是软件从业者的高度优先事项。软件质量工具供应商已经通过定位他们的工具来检测和管理技术债务来响应这种需求。虽然这些工具捆绑了许多规则,但用户很难理解哪些规则标识了设计问题,而不是语法质量。这一点很重要,因为以前的研究表明,最重要的技术债务与设计问题有关。其他研究集中在比较开源项目中的这些工具,但这些比较没有考虑这些规则是否与设计相关。我们进行了一项实证研究,使用结构化的分类方法,手动分类466软件质量规则从三个行业工具-CAST,SonarQube,NDepend。我们发现,这些规则中的大多数很容易被标记为非设计(55%)或设计(19%)。其余的(26%)导致标签之间的分歧。我们的研究结果是第一步,正式定义的设计规则,以支持自动检测。
2017-05-31 cs.SE
EvaluateXAI: A Framework to Evaluate the Reliability and Consistency of Rule-based XAI Techniques for Software Analytics Tasks
针对软件分析任务中基于规则的XAI技术(如PyExplainer和LIME)生成解释的可靠性和一致性问题,提出EvaluateXAI框架及细粒度评估指标,实验表明现有技术解释不可靠且不一致,需进一步研究。
2024-07-18 cs.SE
Towards Lakosian Multilingual Software Design Principles
大型软件系统通常包括用不同的程序设计语言编写的程序。当跨语言互操作性是通过外部函数接口(Foreign Function Interface,FFI)实现的,例如pybind 11、Boost.Python、Emscripten、PyV 8或JNI等,常见的软件工程工具(如调用图分析)会受到FFI不透明性的阻碍。这会使调试复杂化,并引发潜在的低效率和安全问题。一个促成问题是,几乎没有严格的多语言软件的软件设计建议。在本文中,我们提出了一个更严格的多语言软件设计方法的进展。该方法基于Lakos开发的大型C++系统设计的现有方法。Lakosian方法是为数不多的解决物理设计而不仅仅是逻辑设计的设计方法之一。使用MLSA工具包在以前的工作中开发的多语言软件的分析,我们专注于一个FFI -pybind 11 FFI。Lakosian C++设计规则的扩展被提出来处理使用pybind 11的多语言软件。使用50个使用pybind 11的公共GitHub存储库的样本,我们测量了目前有多少存储库满足这些规则。最后,我们提出了一个通用的基于pybind 11的规则,任何使用FFI接口的多语言软件。
2019-06-19 cs.SE
Software Security Rules, SDLC Perspective
软件已经成为日常生活中不可或缺的一部分。每天,数以百万计的人通过互联网,自动取款机,移动电话进行交易,他们发送电子邮件和电子问候,并使用字处理和电子表格为各种目的。人们在使用软件时要记住,软件是可靠的,可以信任的,他们执行的操作是安全的。现在,如果这些软件有可利用的安全漏洞,那么他们如何能够安全使用。安全性为软件带来了人们信任的价值。安全软件提供的价值至关重要,因为许多关键功能完全依赖于软件。这就是为什么安全是一个严肃的话题,应该在整个SDLC期间从一开始就给予适当的关注。为了在软件中正确实现安全性,本文提出了21条安全规则以及验证结果。研究发现,通过按照给定的实现机制应用这些规则,可以消除软件中的大多数漏洞,并可以构建更安全的软件。
2009-11-03 cs.CR cs.SE
A Rule-based Model for Customized Risk Identification in Distributed Software Development Projects
分布式软件开发中的许多项目风险与并置开发中的风险有很大不同,因此经常被忽视。同时,它们在很大程度上取决于具体项目的特点。本文提出了一个在项目早期识别风险的模型。该模型系统地捕获了过去项目的经验,并基于一组逻辑规则,描述了项目特征如何影响分布式开发中的典型风险。因此,该模型能够单独评估每个项目的风险。它是通过对19名从业人员的访谈进行定性内容分析而制定的。通过专家访谈进行的评估表明,在81%的情况下,该模型确定的风险与实际经验相符;其中40%在项目开始时尚未得到考虑。文章介绍了该模型的概念,它的实例化和评估,其次是结论和未来的工作。
2014-01-13 cs.SE
The more Product Complexity, the more Actual Effort? An Empirical Investigation into Software Developments
[背景]软件工作量预测方法和模型通常假设软件产品复杂度和开发工作量之间存在正相关关系。然而,从我们使用COCOMO81数据集的经验中可以看到相互矛盾的观察结果,即产品复杂性和实际工作量之间的负相关性。[Aim鉴于我们对所观察到的现象是否是巧合的怀疑,本研究试图调查产品复杂性的增加是否会导致软件开发项目中的上述反直觉趋势。[方法:]将一种改进的关联规则挖掘方法应用于转换后的COCOMO81数据集。为了减少分析的噪声,该方法使用恒定的前因(复杂性增加,而工作量减少)来挖掘潜在的后果与修剪。[结果]实验分别从一般、嵌入和有机项目数据中挖掘出4条、5条和7条关联规则。挖掘规则的后果建议两个主要方面,即人的能力和产品规模,在这项研究中特别关注。[结论]复杂性与努力程度的负相关在特定条件下并非巧合。在软件项目中,产品复杂性与其他因素(如程序员能力和分析员能力)之间的相互作用不可避免地会在削弱产品复杂性对实际开发工作的实际影响方面发挥“摩擦”作用。
2015-09-28 cs.SE
An Empirical Investigation on the Challenges of Creating Custom Static Analysis Rules for Defect Localization
背景:自定义静态分析规则,即特定于一个或多个应用程序的规则已经成功地应用于执行纠正和预防软件维护。模式驱动的维护(PDM)是一种方法,旨在支持在软件维护过程中创建这样的规则。然而,由于PDM是最近提出的,很少有维护人员报告其使用情况。因此,正确应用PDM所需的挑战和技能是未知的。目的:在本文中,我们调查所面临的挑战,维护人员应用PDM创建自定义静态分析规则的缺陷定位。方法:我们进行了一项观察性研究的新手维护创建自定义静态分析规则,通过应用PDM。该研究分为三个任务:(i)识别缺陷模式,(ii)编程一个静态分析规则来定位模式的实例,以及(iii)验证定位的实例。我们分析了维护人员应用PDM的效率和接受程度,以及他们对任务挑战的评价。结果如下:我们观察到,以前的知识调试,主题软件,以及相关技术的影响的性能维护人员,以及时间来学习的技术涉及规则编程。结论:结果增强了我们的信心,PDM可以帮助维护人员制定自定义的静态分析规则来定位缺陷。然而,一个适当的选择和培训的维护人员是需要有效地应用PDM。此外,使用更高级别的抽象可以简化新手维护人员的静态分析规则编程。
2021-11-18 cs.SE
A Rule-Based Change Impact Analysis Approach in Software Architecture for Requirements Changes
软件系统通常运行在一个动态的环境中,他们的需求不断变化,新的需求经常出现。单个需求很难孤立存在:它与其他需求以及实现它的软件开发工件相关。当引入需求变更时,需求工程师可能不得不手动分析单个变更的所有需求和架构元素。这可能会导致忽略变更的实际影响。我们的目标是通过使用需求关系、需求变化和需求与体系结构之间的痕迹的形式化语义来改进软件体系结构中需求变化的变化影响分析。在我们以前的工作中,我们提出了一种技术,用于需求中的变更影响分析。该技术使用了需求关系和变更的形式化语义。它的输出是一组候选需求,这些候选需求会对所提出的变更产生影响,并且会在需求模型中产生传播路径。在本文中,我们提出了一种补充技术,传播需求变化的软件架构,并找出这些变化的影响架构元素。R&A之间的需求关系、变更和跟踪的形式化用于确定候选架构元素,以应对架构中需求变更的影响。工具支持是我们的需求推理和一致性检查工具(TRIC)的扩展。我们的方法有助于消除一些错误的积极影响,在变化传播。我们说明了我们的方法在一个工业的例子表明,需求关系,变化和痕迹的形式语义,使候选人的建筑元素的识别与减少一些假阳性的影响。
2016-08-09 cs.SE
Automatically Generating Rules of Malicious Software Packages via Large Language Model
School of Cyberspace Security, Beijing Jiaotong University(网络安全学院,北京交通大学)
RuleLLM利用大语言模型自动为开源软件生态系统生成YARA和Semgrep规则,在1,633个恶意软件包数据集上实现85.2%精确率和91.8%召回率,优于现有工具,并提出了11类38子类的规则分类法。
2025-04-24 cs.AI cs.CR cs.SE
Methodological Harness in Agentic Software Engineering: An Empirical Study on Mining Software Repositories
Universidad Politécnica de Madrid(马德里理工大学)
本研究基于AIDev数据集中的5,435个GitHub仓库,实证验证了智能体软件工程中八机制方法论约束框架的可观察性,发现机制采用以孤立形式为主,集成系统罕见。
2026-09-29 cs.SE
Ten Essential Guidelines for Building High-Quality Research Software
本文提出十条覆盖研究软件开发生命周期各阶段的基本准则,涵盖规划、编码、测试、模块化、可复现性、性能优化、维护、文档与社区参与,旨在帮助研究人员构建高质量、可持续且可复用的研究软件。
2025-07-22 cs.SE
Integration of Communication Analysis and the OO-Method: Rules for the manual derivation of the Conceptual Model
企业信息系统可以按照模型驱动的范例开发。通过这种方式,代表组织工作实践的模型被用来产生代表信息系统的模型。当前的软件开发方法开始为概念模型的构建提供指导,并将需求模型作为输入。本文提出了两种方法的集成:通信分析(面向通信的需求工程方法[España,González et al. 2009])和OO方法(模型驱动的面向对象的软件开发方法[Pastor and Molina 2007])。为此,提出了一种从业务过程和需求模型中导出OO方法概念模型的系统技术。处理业务过程规范(包括消息结构)是为了获得计算机化信息系统的静态和动态视图。然后,使用OLIVANOVA框架,可以自动生成软件源代码[CARE Technologies]。
2011-06-21 cs.SE
A Model-Based Approach to Impact Analysis Using Model Differencing
影响分析关注的是识别变更的后果,因此是软件演化的一项重要活动。在基于模型的软件开发中,模型是核心工件,通常用于生成软件系统的基本部分。因此,对模型的更改可以实质上影响软件系统的不同工件。在本文中,我们提出了一个基于模型的方法来影响分析,其中明确的影响规则可以指定在一个特定领域的语言(DSL)。这些影响规则定义了指定的UML类图变更对软件工件的影响,以及相关活动(如数据演化)的需求。UML类图的变化是使用模型差异自动识别的。使用显式影响规则的优点是,它们可以使关于产品的知识形式化。通过明确地定义这些知识,可以创建一个清单,其中包含管理演化(可能)所需的开发步骤的提示。为了验证我们的方法的可行性,我们提供了一个案例研究的结果。
2014-06-26 cs.SE
Ten Recommendations for Engineering Research Software in Energy Research
针对能源研究软件因开发者缺乏软件工程训练而质量、可复现性和可重用性不足的问题,本文基于两次研讨会提出涵盖概念化到发布的十条建议。
2025-02-19 cs.SE
RUM: Rule+LLM-Based Comprehensive Assessment on Testing Skills
本文提出RUM方法,将规则与大语言模型结合,对测试用例、脚本和报告进行主客观综合评估,在软件测试竞赛中实现效率提升80.77%、成本降低97.38%,为测试技能评估和个性化教学提供新思路。
2025-08-18 cs.SE
How software engineering research aligns with design science: A review
背景:评估和交流软件工程研究是具有挑战性的。设计科学被认为是应用研究的一个适当的研究范式,但在软件工程中很少被提及。将设计科学的视角应用到软件工程研究中可以改善研究贡献的评估和交流。目标:本研究的目的是1)了解设计科学的镜头是否有助于总结和评估软件工程的研究贡献,2)在软件工程文献中描述不同类型的设计科学贡献。方法:在以往的研究中,我们开发了一个可视化的抽象模板,总结了设计科学范式的核心结构。在这项研究中,我们使用这个模板在一组38顶软件工程出版物的审查,以提取和分析他们的设计科学的贡献。结果:我们确定了五组论文,根据它们与设计科学范式的一致性对其进行分类。结论:设计科学的镜头有助于强调研究成果的理论贡献-在技术规则方面-并反映研究提出的规则的实际相关性、新颖性和严谨性。
2019-11-08 cs.SE
Patch2QL: Discover Cognate Defects in Open Source Software Supply Chain With Auto-generated Static Analysis Rules
针对开源软件供应链中同源缺陷检测难的问题,提出Patch2QL技术,通过自动生成SAST规则检测同源缺陷,在上游和下游项目中均发现大量安全问题,效果优于通用方法。
2024-01-30 cs.CR cs.SE
Ten simple rules for PIs to integrate Research Software Engineering into their research group
本文为研究组领导者提供了十条简单规则,旨在降低研究软件工程的技术门槛并给出实用建议,帮助其将RSEng整合到研究组中,从而提升研究软件的质量、可重复性和可信度。
2025-06-25 cs.CE cs.CY cs.SE
Software Architecture Overview
什么是软件架构?帮助构造、构建和测试一个重要软件的规则、范例和模式。它是抽象层次上的实践经验。软件架构建立在系统工程和伽利略建立的科学方法之上:测量你能测量的,使你不能测量的。实验比推理更重要。关于软件架构的信息片段遍布互联网。本文尽可能多地使用引文。其目的是汇集一个概览,而不是重新措辞。
2005-07-24 cs.SE
Code Swarm: A Code Generation Tool Based on the Automatic Derivation of Transformation Rule Set
本文提出代码生成工具Code Swarm(CodS),利用群体智能方法从类模型和状态模型自动生成Java代码,无需显式转换规则集或元模型信息,并通过电梯控制系统案例验证了生成代码的正确性与一致性。
2023-12-03 cs.SE
Automated Test Generation for Medical Rules Web Services: A Case Study at the Cancer Registry of Norway
本研究以挪威癌症登记处的医疗规则引擎GURI为对象,评估AI测试工具EvoMaster的黑盒与白盒测试效果,发现黑盒工具在领域规则覆盖率上表现更优,可提升其测试实践水平。
2023-11-06 cs.SE
Ten simple rules for training scientists to make better software
本文提出十条简单规则,旨在有效培养具备一定编程基础但缺乏正式软件工程训练的科研人员(如早期博士生),使其掌握开发可持续、高质量研究软件的必要技能,以支撑学术与工业生物医学研究。
2025-03-06 cs.CY cs.SE
PREVENT: An Unsupervised Approach to Predict Software Failures in Production
本研究提出无监督方法PREVENT,无需预定义规则或故障训练数据即可预测定位分布式企业应用故障,在商用云系统中表现优于或不亚于监督方法,更稳定可靠且实用性更强。
2024-09-17 cs.SE
XRepoSkill: Learning Transferable Skills for Software Engineering Agents
Nanyang Technological University(南洋理工大学);Tsinghua University(清华大学);Tencent(腾讯);King’s College London(伦敦国王学院)
XRepoSkill通过对比成功与失败轨迹提取可迁移规则,验证其跨仓库泛化性,并在SWE-bench Pro和DeepSWE上以三种LLM取得最高问题解决率,较基线提升显著。
2026-09-30 cs.SE
An Empirical Study of Deep Learning Sentiment Detection Tools for Software Engineering in Cross-Platform Settings
软件工程(SE)中的情感检测已经显示出支持各种开发活动的前景。然而,鉴于SE平台的多样性,SE特定的情感检测工具在跨平台设置中的性能可能会受到影响。最近,发现基于深度学习(DL)的特定于SE的情感检测工具比基于浅机器学习(ML)/基于规则的工具提供更好的性能。然而,目前还不知道DL工具在跨平台设置中的性能如何。在本文中,我们研究了在跨平台设置中,特定于SE的DL情感检测器是否比基于ML/基于规则的浅情感检测器更有效。在三个数据集中,我们研究了三种DL工具(SentiMoji,BERT 4SentiSE,RNN 4SentiSE),并将其与三种基线进行比较:两种浅层学习工具(Senti 4SD,SentiCR)和一种基于规则的工具(SentistrengthSE)。我们发现(1)SE的深度学习SD工具BERT 4SentiSE在大多数情况下在跨平台设置中优于其他监督工具,但在大多数情况下,该工具优于基于规则的工具SentistrengthSE。(2)BERT 4SentiSE在三个数据集的平台内设置中大幅优于SentistrengthSE,并且在六个跨平台设置中的四个中仅略优于SentiStrengthSE。这一发现为在跨平台设置中进一步改进预训练的Transformer模型(如BERT 4SentiSE)提供了希望。(3)两个表现最好的深度学习工具(BERT 4SentiSE和Se…
2023-01-17 cs.SE
Beyond Fixed Fault Models: Comparing LLM-Based and Rule-Based Fault Injection in OpenStack
University of Naples Federico II(那不勒斯费德里科二世大学);IMT School for Advanced Studies Lucca(卢卡高等研究学院);University of North Carolina at Charlotte(北卡罗来纳大学夏洛特分校)
本研究比较LLM与规则故障注入在OpenStack中的效果,发现LLM扩展了故障行为覆盖,但需受控生成和验证才能实际应用。
2026-09-09 cs.SE
From Complexity Measurement to Holistic Quality Evaluation for Automotive Software Development
近年来,软件在汽车领域的作用和重要性发生了巨大变化。能够系统地评估和管理软件质量变得更加重要。然而,在实践中,我们仍然发现一个很大程度上静态的方法来衡量软件质量的基础上预定义的复杂性度量与静态阈值来满足。我们建议使用一个更灵活的框架,它系统地根据开发项目的目标和背景导出度量和评估规则。
2021-10-27 cs.SE
The Construction of an Empirical Dataset of Incomplete Software Changes from Open Source Projects
Institute of Science Tokyo(东京科学大学)
本研究构建了从开源项目中挖掘真实不完整变更的数据集,分析其特征,并重新评估了共同变更规则提取方法LCExtractor,发现多数遗漏变更涉及少量文件。
2026-09-29 cs.SE
Quantitative Information Flow Control by Construction for Component-Based Systems
本文提出一种构造式方法,使软件架构师能依据定量信息流规范,从安全组件库出发,通过精化规则和良构性规则构建安全的基于组件的系统。
2024-01-15 cs.SE
Ten Years of Software Engineering in Society
本研究通过映射ICSE的SEIS轨道十年间123篇文章,识别出可持续性、多样性与开源软件趋势,发现实际干预缺失及社会维度主导、环境维度被忽视的空白,旨在激发社区讨论与复制研究。
2025-05-23 cs.SE
Quantifying the Deign Quality of Object Oriented System The metric based rules and heuristic
面向对象软件的设计结构对其质量有着决定性的影响。设计必须与可分析性、可变性、稳定性和可测试性等质量特征密切相关,这些特征对于维护系统非常重要。但由于面向对象系统的多态性、封装性、耦合性等设计特性的多样性和复杂性,使其变得繁琐。
2010-02-16 cs.SE
Measuring Object-Oriented Design Principles
自动化面向对象设计评估的想法并不新鲜。不同的方法定义和应用自己的质量模型,这是由单一的度量或组合,可操作的软件设计。然而,单一的指标是太细粒度的识别核心设计缺陷,他们不能提供提示,使设计改进。为了解决基于度量的模型的这些弱点,基于规则的方法在源代码质量领域已经证明是成功的。此外,对于开发一个设计良好的软件系统,设计原则起着关键作用,因为它们定义了基本的指导方针,并有助于避免陷阱。因此,本论文将加强并完善一个以规则为基础的质量参考模型,以使设计原则可操作化,并提供一个实现这些规则的测量工具。设计质量模型和测量工具的验证将基于各种工业项目。此外,将进行定量和定性调查,以获得面向对象设计原则对软件开发价值的验证结果
2016-02-23 cs.SE
Better Safe Than Sorry! Automated Identification of Functionality-Breaking Security-Configuration Rules
本文提出一种结合组合测试与机器学习的方法,自动化识别安全配置中会破坏系统功能的规则,使管理员能在不损害功能的前提下安全加固系统。
2023-03-10 cs.SE
Ten Simple Rules for AI-Assisted Coding in Science
Yonsei University(延世大学);Stanford University(斯坦福大学);Princeton University(普林斯顿大学);University of Science and Technology of China(中国科学技术大学);University of California, Irvine(加州大学尔湾分校)
针对AI编码工具在科学计算中引发的代码质量与科学有效性问题,本文提出十条实用准则,围绕四大开发主题平衡AI利用与科研严谨性,保障代码符合科研诚信要求。
2025-10-31 cs.SE
Generating CodeMeta through declarative mapping rules: An open-ended approach using ShExML
Kazerne Dossin(卡泽尔讷多辛)
本文提出利用 ShExML 中的声明式映射规则生成 CodeMeta 文件,通过实现并合并三个交叉映射覆盖两个真实研究软件制品,并结合 SHACL 与 ShEx 验证和自动化工作流,以促进 CodeMeta 的采用并提升研究软件的 FAIR 程度。
2025-11-07 cs.DL cs.SE
Mining Action Rules for Defect Reduction Planning
Polytechnique Montréal(蒙特利尔理工学院)
本文提出CounterACT,一种无需黑盒模型的反事实行动规则挖掘方法,用于生成缺陷减少计划,在9个软件项目上相比现有方法实现了更高的重叠分数和更好的精确率-召回率权衡,并探索了利用LLM生成可操作的代码编辑。
2024-05-22 cs.LG cs.SE
Bug Classification in Quantum Software: A Rule-Based Framework and Its Evaluation
National Institute of Technology Srinagar(斯利那加国家技术学院)
本文提出了一种基于规则的框架,用于分类量子软件中的缺陷,通过评估发现经典缺陷占主导,量子特定缺陷占比高,且在严重性分类上仍有改进空间。
2025-06-12 cs.CY cs.DC cs.SE
Benchmarking of Java Verification Tools at the Software Verification Competition (SV-COMP)
通过基准测试对验证工具进行经验性评估是软件验证研究中常用的方法。软件验证竞赛(SV-COMP)旨在通过对C程序的全自动软件验证器的比较评估,每年在软件验证社区内实现基准测试的标准化和可重复性。在此成功的基础上,我们将介绍如何重用围绕SV-COMP开发的生态系统来对Java验证工具进行基准测试。我们提供了一个详细的描述的基准测试验证任务的规则,新的工具集成到SV-COMP的基准测试框架,并给出了一个基准测试运行在最先进的Java验证工具,JPF,SPF,JayHorn和JBMC的实验结果。
2019-03-04 cs.LO cs.SE
Ten Years of Teaching Empirical Software Engineering in the context of Energy-efficient Software
Vrije Universiteit Amsterdam(阿姆斯特丹自由大学)
本文总结了阿姆斯特丹自由大学Green Lab课程十年教学经验,该课程以研究为导向教授节能软件背景下的实证软件工程,学生通过自主实验完成研究全流程,产出多项科研成果,还构建了协作贡献开源工具的良性学习社区。
2024-07-08 cs.AI cs.DC cs.SE
EditLord: Learning Code Transformation Rules for Code Editing
The University of Chicago(芝加哥大学);Columbia University(哥伦比亚大学);Rutgers University(罗格斯大学)
EditLord通过显式化代码变换步骤,利用语言模型提取元规则集,提升代码编辑性能和鲁棒性。
2025-07-09 cs.CR cs.LG cs.SE
A Full-fledged Commit Message Quality Checker Based on Machine Learning
Innoopract GmbH(Innoopract有限责任公司);QPR Technologies(QPR科技公司);Karlsruhe Institute of Technology(卡尔斯鲁厄理工学院)
本文针对缺乏自动评估提交信息质量工具的问题,基于机器学习训练模型检查CM质量规则,开发了开源框架,最差任务F$_1$达82.9%,有效提升软件可维护性。
2023-09-09 cs.AI cs.LG cs.SE
Sustaining Research Software: an SC18 Panel
许多科学进步都是由于使用研究软件,这对推进几乎所有科学,技术,工程和数学(STEM)学科和许多非STEM学科(包括社会科学和人文科学)至关重要。虽然其中大部分都是在开源许可证下提供的,但随着底层系统和软件以及用户需求的发展,还需要进行开发、支持和维护。此外,高性能计算(HPC)平台不断变化的格局,其中性能和扩展的进步越来越依赖于软件和算法的改进,因为我们遇到了硬件扩展障碍,这导致软件的可持续性与其性能之间重新出现紧张关系。我们必须做更多的工作来强调性能和可持续性之间的权衡,并强调可持续性的必要性,因为复杂的软件栈如果没有频繁的维护就无法生存;随着一代成熟和大量使用的研究软件的开发人员退休,这将变得更加困难。一些HPC论坛正在这样做,它也已成为一个活跃的资金领域。作为回应,作者在SC 18会议上组织并运行了一个小组。该小组的目标是强调可持续性的重要性,阐明纯绩效和可持续性之间的紧张关系,并引导SC社区讨论理解和解决这一问题和这一紧张关系。讨论的结果,如本文所述,可以为先进的计算和数据基础设施的选择提供信息,以积极影响未来的研究软件和未来的研究。
2019-02-24 cs.CY cs.DC cs.SE