A Framework for Using LLMs for Repository Mining Studies in Empirical Software Engineering
本研究基于两项软件仓库挖掘研究的经验,提出名为PRIMES的LLM仓库挖掘研究框架,含提示词优化检查清单与结果追踪机制,可提升相关研究的可靠性与可复现性,并指出未来需解决幻觉等挑战。
2024-12-12 cs.SE
Do Developers Adopt Green Architectural Tactics for ML-Enabled Systems? A Mining Software Repository Study
本文通过挖掘168个GitHub开源ML项目,利用LLM挖掘机制识别绿色架构策略的采用情况,为ML系统可持续实践提供实证见解并推动未来自动化。
2025-01-02 cs.SE
Helping Software Developers through Offline Repository Based API Searching in Data MiningIntegrated Environment
软件开发变化如此之快。如果能够通过对开发人员的指导来加快软件开发的进程,将是非常有益的。在开发过程中给开发人员提供适当的指导和准确的建议,可以减少软件开发费用,也可以节省开发人员宝贵的时间。有很多方法可以加速软件开发过程。这可以通过代码辅助工具来完成,这些工具通过从应用程序编程接口(API)的特定存储库中推荐相关项目来帮助开发人员。一些方法是基于在线搜索,由于请求和响应延迟,因为它必须处理服务器中的超大文件,因此具有一些缺点。开发人员通常使用以前完成的资源以及库或框架来生成相关的代码片段,这些代码片段由API的引用存储库提供。开发人员发现很难选择合适的方法,因为有成千上万的方法,其中一些没有正确的文档。在本文中,我们提出了一个概念及其相应的框架,以指导开发人员从离线挖掘的存储库中建议相关的API方法。从我们所做的调查,我们可以说,我们的方法比一些现有的方法工作得更好。
2020-06-21 cs.SE
Empirical Standards for Repository Mining
学术同行评议的目的是评估科学手稿的质量。然而,一项又一项研究表明,同行评议既不能有效地评估研究质量,也不能可靠地评估研究质量。经验标准试图通过模拟科学界对在该社区进行的每一种经验研究的期望来解决这个问题。这不仅会提高研究质量,而且会提高同行评审的可靠性和可预测性,因为科学家在其研究者和评审者的角色中都采用了这些标准。然而,这些改进取决于标准的质量和采用情况。因此,本教程将介绍挖掘软件存储库的经验标准,以传达其内容并从与会者那里获得反馈。本教程将分为三个部分:(1)经验标准项目的简要概述;(2)储存库开采标准的详细介绍;(3)讨论和改进建议。
2022-03-29 cs.DL cs.SE
Green Architectural Tactics in ML-enabled Systems: An LLM-based Repository Mining Study
Universitat Politècnica de Catalunya (UPC)(加泰罗尼亚理工大学);University of Salerno(萨莱诺大学)
本文通过分析205个开源ML项目,发现现有绿色实践在实际应用中存在差异,并识别出九种未记录的可持续实践,为减少ML系统的环境影响提供指导。
2026-03-19 cs.SE
Survey Results on Threats To External Validity, Generalizability Concerns, Data Sharing and University-Industry Collaboration in Mining Software Repository (MSR) Research
采矿软件仓库(MSR)是一个应用和面向企业的领域,旨在解决从业者遇到的实际问题,并为行业带来价值。结果和发现的重复性、可推广性和外部有效性、大学-产业合作、数据共享和创建数据集存储库是MSR研究中的重要问题。通过对MSR论文的文献计量分析,发现缺乏产学合作、缺乏封闭或适当来源的数据集研究、缺乏研究者之间的数据和工具共享。我们对过去三年(2012年,2013年和2014年)MSR会议的作者进行了调查,以收集他们对解决所述问题的意见和建议的数据。我们向100多位作者提出了20个问题,并收到了39位作者的回复。我们的研究结果表明,大约三分之一的受访者总是公开他们的数据集,大约三分之一的人认为,数据共享应该是在MSR会议上发布的强制性条件。我们的调查显示,超过50%的作者在他们的研究中只使用开源软件(OSS)数据集。超过50%的受访者表示,在公司外部共享工业数据集的困难是大学与工业合作的主要障碍之一。
2015-06-04 cs.SE
Guiding Software Developers by Social Networking Application Plug-in using the Multiple Bridge Source Repository through a Data Mining Integrated Approach
在当今世界,社交网络是一个重要的(充满力量的)大众传播媒介。几乎所有阶层的人都在通过使用不同社交网站中的大量用户友好应用程序相互交流并分享他们的观点,时刻和想法。找到一个从来没有听说过社交网络的人真是难以置信。可用的社交网站通常使其用户能够通过特定的模板和嵌入式代码源开发各种定制应用程序。具有一般开发知识的用户经常遇到重用这些资源的困难,最终缺乏指导方针和必要的API建议。在我们的工作中,我们提出了一个框架和模型,以帮助这些应用程序开发人员通过用户辅助插件工具,能够提供相同的API使用模式和序列,以响应特定的用户查询。我们将我们的系统命名为社交网络应用程序插件(SNAP)。我们搜索社交网络应用程序存储库,其中多个存储被桥接,并应用相应的挖掘算法,以找到相关的序列,以满足用户的需求。它提供了类似的、最相关的、功能性的API使用场景,并提供了一个选择、重用和修改推荐源的选项。从我们曾经做过的调查,我们的SNAP方法是能够推荐用户的无错误,可理解的,和最小的API模式。
2020-06-24 cs.SE
Sustainability of Open-Source Machine Learning Robustness Assessment Tools: A Repository Mining Study
Jheronimus Academy of Data Science(热罗尼默斯数据科学学院);Tilburg University(蒂尔堡大学);University of Sannio(萨尼奥大学)
本研究通过挖掘GitHub上的28个开源鲁棒性工具仓库,发现其参与度与维护活动分布不均,多数仓库不活跃,呼吁将鲁棒性工具视为演进中的软件系统。
2026-08-31 cs.SE
Lessons Learned from Mining the Hugging Face Repository
Universitat Politècnica de Catalunya(加泰罗尼亚理工大学)
本文总结了在 Hugging Face 仓库挖掘中的经验,提出分层抽样策略和从仓库挖掘到队列研究的指南,以提高研究质量并建立因果关系。
2024-02-11 cs.LG cs.SE
Empirical Investigation of Quantum Computing Toolchains and Algorithms : Mining Stack Overflow Repository
M3S Empirical Software Engineering Research Unit, University of Oulu(奥卢大学 M3S 实证软件工程研究单位)
本文通过分析1404个Stack Overflow帖子,探讨开发者在量子计算领域的讨论主题、工具和算法使用情况,揭示了混合量子-经典计算和量子电路实现的主导地位,以及Qiskit和Q-sharp的主导地位。
2026-04-16 cs.SE
Dealing with SonarQube Cloud: Initial Results from a Mining Software Repository Study
本文通过挖掘软件仓库研究GitHub项目对SCA工具SonarQube Cloud的使用与定制情况,发现多数项目正确连接但存在配置问题,提出将质量门配置与软件结果关联的研究方向。
2025-08-26 cs.SE
Mining Threat Intelligence about Open-Source Projects and Libraries from Code Repository Issues and Bug Reports
University of Maryland, Baltimore County(马里兰大学巴尔的摩县分校)
开源项目和库被用于软件开发,同时也存在多个安全漏洞。第三方生态系统的使用为开发中的产品创造了一种新的攻击面。智能攻击者可以通过利用链接项目和库中存在的漏洞之一来攻击产品。在本文中,我们从公共代码存储库中报告的错误和问题中挖掘有关开源项目和库的威胁情报。我们还跟踪客户机上已安装软件的库和项目依赖关系。我们表示并存储此威胁情报,以及安全知识图谱中的软件依赖关系。然后,安全分析师和开发人员可以查询知识图谱,并在发现任何关于其产品中使用的链接库和项目的威胁情报时从知识图谱接收警报。
2018-08-09 cs.AI cs.CR cs.SE
A Mining Software Repository Extended Cookbook: Lessons learned from a literature review
Federal University of ABC(巴西联邦大学ABC分校);Federal University of Technology - Parana (UTFPR)(Parana)
Mining Software Repositories(MSR)的主要目的是发现最新的增强功能,并提供如何在软件项目中进行改进的见解。有鉴于此,本文更新了原始MSR Cookbook的MSR发现,首先进行系统的映射研究,以引出和分析最新技术,然后提出了一个扩展版本的Cookbook。这本扩展版《烹饪手册》建立在四个高层次主题之上,这些主题来自对112项选定研究的分析。因此,它被用来巩固扩展的Cookbook,作为对以下领域实践和研究的贡献:1)包括在所有可用和相关出版场所发表的研究; 2)包括和更新所有四个高级别主题的建议,与原始MSR Cookbook相比,本研究中的评论增加了84%; 3)总结每个高级别主题所使用的工具; 4)为未来的研究提供经验教训。因此,在这项工作中检查的扩展的Cookbook可以支持新的研究项目,因为在样本和工具的帮助下可以获得升级的建议和经验教训。
2021-10-08 cs.AI cs.SE
Combining Text Mining and Visualization Techniques to Study Teams' Behavioral Processes
人们对挖掘软件存储库数据以理解和预测团队流程的各个方面的兴趣越来越大。特别是,文本挖掘和自然语言处理(NLP)技术支持了这种努力。可视化还可以补充文本挖掘,以揭示对软件团队行为过程的独特多维见解。在这项研究中,我们证明了这些方法相结合的效用。未来将这些方法应用于团队行为过程的研究,为研究和实践提供了希望。
2021-02-19 cs.SE
Coming: a Tool for Mining Change Pattern Instances from Git Commits
像Git这样的软件存储库已经成为软件工程研究人员的相关信息来源。例如,检测满足给定标准的提交(例如,bug修复提交)是理解软件演化最常见的任务之一。然而,据我们所知,没有开源工具,给定Git存储库,返回给定更改模式的所有实例。在本文中,我们介绍了Coming,这是一个工具,它可以输入Git存储库,并在每次提交时挖掘更改模式的实例。为此,Coming计算两个连续修订之间的细粒度更改,分析这些更改以检测它们是否对应于更改模式的实例(由用户使用XML指定),最后,在分析所有提交后,它提供a)代码更改的频率和b)在每个提交中找到的实例。我们评估了一组28对来自Defects4J的修订,发现其中26个涉及If条件的更改模式的实例。
2018-10-19 cs.SE
SnipGen: A Mining Repository Framework for Evaluating LLMs for Code
William & Mary(威廉与玛丽学院)
针对代码 LLM 评估中的训练与评测数据重叠问题,本文提出 SnipGen 仓库挖掘框架,利用近期 GitHub 提交生成方法级数据点与可组合提示模板,支持严谨的代码生成评测。
2025-02-16 cs.AI cs.LG cs.SE
Mining Software Metrics from Jazz
在本文中,我们描述了提取的源代码度量从Jazz存储库和应用程序的数据采掘技术,以确定最有用的这些指标预测的成功或失败的尝试构建一个工作实例的软件产品。我们目前的结果,从一个系统的研究,使用J48分类方法。结果表明,我们认为只有相对较少的可用软件度量对预测构建的结果有意义。这些重要的指标进行了讨论,并讨论了结果的影响,特别是能够预测失败的构建尝试的相对困难。
2014-07-09 cs.SE
Enhancing Software Development Process (ESDP) using Data Mining Integrated Environment
如今,重用现有的应用程序编程接口(API)、类库和框架已成为快速软件开发的基本需求。软件开发人员经常通过调用相应的API或库来重用它。但在这样做的时候,开发人员在搜索适当的代码段时通常会遇到不同的问题。在大多数情况下,API和库是复杂的,没有良好的结构或良好的文档记录。在线搜索引擎的搜索耗时长,但匹配的相关性不高,表示性不好。为了根据查询获得建议,我们可以使用搜索引擎或代码搜索引擎在线找到该片段。在某些情况下,依赖于数据库的搜索和基于远程Web服务器的挖掘存储库搜索给开发人员带来了问题。在代码搜索引擎上查找API建议通常会处理超大文件,最终会减慢软件开发过程。我们在整个工作过程中一直在寻找解决办法,并努力取得更好的结果。作为替代行动,我们已经实施了一个系统,我们称之为增强软件开发过程(ESDP)工具,该工具能够为开发人员提供一个高效的集成环境,更好地抽象和表示搜索结果,程序员需要从源代码中派生。我们还构建并应用了一个基于XML的丰富存储库,以从客户端的挖掘存储库中获得推荐,而无需与依赖于互联网的服务器进行交互,以节省复杂性和时间。我们使用基于图的表示为程序员或开发人员提供最相关的代码框架或映射。
2020-05-06 cs.SE
Mining developer communication data streams
本文探讨的概念建模的软件开发项目作为一个过程,导致在创建一个连续的数据流。就本研究中使用的Jazz存储库而言,数据流的一个方面是开发人员的沟通。这些数据可用于创建以一系列指标为特征的不断发展的社交网络。本文介绍了数据流挖掘技术的应用,以确定最有用的指标预测构建结果。结果从应用Hoeffding树分类方法与自适应滑动窗口(ADWIN)的方法检测概念漂移。结果表明,只有一小部分可用的度量标准对预测构建的结果有意义。
2014-07-23 cs.SE
Software Metrics in Boa Large-Scale Software Mining Infrastructure: Challenges and Solutions
在本文中,我们描述了我们的经验,实现一些经典的软件工程度量使用Boa -一个大规模的软件存储库挖掘平台-及其专用语言。我们的目标是利用Boa的基础设施,提出新的软件度量,并通过软件度量来表征开源项目,提供基于大量开源项目的软件度量的参考值。提出的软件度量,众所周知,并提出在本文中,可以用来建立大规模的软件缺陷预测模型。此外,我们提出了我们在开发指标时遇到的障碍,我们的分析可以用于在未来的版本中改进Boa。所实现的度量也可以用作更复杂的开源项目探索的基础,并作为如何使用Boa实现软件度量的指南,因为度量的源代码可以免费获得,以支持可重复的研究。
2017-03-18 cs.SE
Mining for sustainability in cloud architecture among the discussions of software practitioners: building a dataset
本文通过挖掘 StackExchange 上 192 条从业者讨论构建云架构可持续性标注数据集,发现从业者侧重设计阶段和技术与经济可持续性,与学术界强调环境可持续性形成对比。
2024-06-10 cs.SE
What Affects Team Behavior? Preliminary Linguistic Analysis of Communications in the Jazz Repository
越来越多的人相信,理解和解决软件开发过程中使用的人类过程可能会为行业提供更多的价值,而不是为实现各种方法和工具提供更多的建议。为此,相当多的研究工作一直致力于研究人类的问题,在软件工件中表示,由于其相对不引人注目的性质。我们遵循这条研究路线,并利用数据采掘技术和语言分析对团队行为进行了初步研究。我们的数据源,IBMRationalJazz存储库,被挖掘出来,并且从三个不同的项目领域中提取数据。然后使用LIWC语言分析工具分析这些项目中的通信。我们发现,虽然在致力于不同软件成果的项目领域工作的团队之间的语言使用存在一些差异,但项目类型和参与人员的组合(和数量)并没有影响团队行为,这在他们的沟通中很明显。然而,这些评估是初步的,我们计划进一步的探索性分析来验证这些结果。我们解释了这些发现,并讨论了它们对软件工程实践的影响。
2021-01-11 cs.SE
Enhancing the OPEN Process Framework with Service-Oriented Method Fragments
面向服务是一个很有前途的范例,它使大规模分布式软件系统的工程使用严格的软件开发过程。现有的问题是,每个面向服务的软件开发项目通常需要一个定制的开发过程,提供特定的面向服务的软件工程任务,以支持该项目的独特需求。为了解决这个问题,并允许情景方法工程,我们已经定义了一组方法片段,以支持工程的项目特定的面向服务的软件开发过程。我们已经从11个突出的面向服务的软件开发方法,使用系统的挖掘方法的经常性功能,提出了方法片段。我们已经将这些新的片段添加到OPEN过程框架的存储库中,使它们作为可重用的片段提供给软件工程师使用这个众所周知的方法存储库。关键字面向服务软件开发,开放过程框架,OPF知识库,方法片段,情景方法工程
2020-04-17 cs.SE
A Methodological Framework for LLM-Based Mining of Software Repositories
针对LLM在软件仓库挖掘中方法学整合缺乏理解的问题,通过混合方法研究揭示了15种方法、9种威胁和25种缓解策略,并提出了包含6阶段23子步骤的PRIMES 2.0实证框架,为基于LLM的MSR研究提供规范性支持。
2025-08-11 cs.SE
What's Inside a GitHub Repository? An Empirical Study on the Contents of 10K Projects
DCC, UFMG(联邦米纳斯吉拉斯大学计算机系);REALISE Lab, Concordia University(康科迪亚大学)
本文通过分析10000个GitHub仓库的文件和目录,揭示了过去十年仓库内容的变化,包括README.md标准化、GitHub Actions兴起、配置格式演变及生成式AI相关内容的增长。
2026-07-15 cs.SE
Who Do You Think You Are? Creating RSE Personas from GitHub Interactions
本文提出数据驱动的RSE角色画像方法,结合仓库挖掘与画像技术,在GitHub上分析115,174名贡献者,识别出七种从低到高交互性的角色,帮助理解研究软件工程中的贡献模式。
2025-10-06 cs.SE
Integrating Large Language Models in Software Engineering Education: A Pilot Study through GitHub Repositories Mining
本研究通过挖掘400个GitHub项目开展试点,实证验证了SE教育中LLM应用的激励与阻碍因素分类体系,为构建负责任融入的综合框架奠定基础。
2025-09-05 cs.SE
Evaluating Repository-level Software Documentation via Question Answering and Feature-Driven Development
Harbin Institute of Technology, Shenzhen, China(哈尔滨工业大学(深圳));Independent Researcher, China(独立研究者)
本文提出SWD-Bench基准,通过功能驱动的问答任务评估仓库级文档质量,揭示现有方法局限,并展示高质量文档对SWE-Agent问题解决率的提升。
2026-04-08 cs.AI cs.SE
When Post-Anchor Metrics Fail: Stabilization Regimes in AI-Evidence Open-Source Projects
University of Montana(蒙大拿大学);University of Oklahoma(俄克拉荷马大学);University of South Dakota(南达科他大学)
研究人工智能证据开源项目中架构变更后稳定义务衡量问题,指出后锚定稳定密度指标失败,引入稳定机制并人工验证校准,强调需受控设计与机制感知归因来可靠识别稳定义务。
2026-07-21 cs.SE
Synthetic Minority Over-sampling TEchnique(SMOTE) for Predicting Software Build Outcomes
在这项研究中,我们使用数据流的方法来挖掘数据和构建决策树模型,预测软件构建结果的软件度量,来自源代码中使用的软件构建过程。使用数据流方法的基本原理是跟踪预测模型随时间的演变,因为构建是从以前的版本逐步构建的,以纠正错误或增强功能。由于我们使用的软件存储库中可用于挖掘的数据量有限,我们通过应用SMOTE过采样算法合成了新的数据实例。结果表明,少数可用的度量有意义的预测软件构建的结果。据观察,分类准确性稳步提高后,大约900个实例的构建已被馈送到分类器。在数据流处理结束时,分类准确率达到了80%,尽管由于数据在两个类别中的分布而产生了一些偏差。
2014-07-09 cs.SE
Domain-Driven Design in Practice: A Mining Study of Maintenance and Evolution in Open-Source Repositories
Karlsruhe Institute of Technology(卡尔斯鲁厄理工学院);Adelaide University(阿德莱德大学);Faculty of Science and Engineering Waseda University(早稻田大学理工学府);esentri AG(esentri股份公司)
通过挖掘GitHub仓库,研究领域驱动设计战术构建块的分布、演化及其对软件维护质量的影响,量化边界上下文违规的规模与维护关联。
2026-06-24 cs.SE
Using Process Mining to Generate AI Agents from Software Engineering Process Records
Hasso Plattner Institute (HPI), University of Potsdam(波茨坦大学哈索·普拉特纳研究院(HPI));IBM Software Innovation Lab (SIL)(IBM软件创新实验室(SIL));University of Haifa(海法大学);paluno Institute, University of Duisburg Essen(杜伊斯堡-埃森大学paluno研究院)
研究如何在软件工程中结合人工智能代理,面临代理粒度和关注点分离难题。通过过程挖掘,用软件库事件日志发现特定项目代理角色,生成规范与实现,并进行测试和用户研究验证效果。
2026-10-06 cs.AI 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
git2net - Mining Time-Stamped Co-Editing Networks from Large git Repositories
来自软件仓库的数据已经成为软件工程过程实证研究的重要基础。存储库挖掘文献中反复出现的主题是开发人员网络的推断,例如从项目的提交历史中捕获协作,协调或通信。大多数研究的网络是基于在文件,模块或包的水平上定义的软件制品的合著。虽然这种方法导致了对软件开发的社会方面的见解,但它忽略了关于代码更改和代码所有权的详细信息,例如,哪些开发人员编写了哪些代码行,这些信息包含在软件项目的提交日志中。为了解决这个问题,我们引入了git2net,这是一个可扩展的python软件,可以帮助提取大型git存储库中的细粒度协同编辑网络。它使用文本挖掘技术来分析文件中文本修改的详细历史。这些信息使我们能够构建定向、加权和时间戳网络,其中链接表示一个开发人员编辑了最初由另一个开发人员编写的源代码块。我们的工具应用于开源和商业软件项目的案例研究。我们认为,它为人类协作模式的高分辨率数据开辟了一个巨大的新来源。
2019-03-25 cs.CY cs.SE cs.SI
Chaos Engineering in the Wild: Findings from GitHub
Jheronimus Academy of Data Science(杰罗尼穆斯数据科学学院);Tilburg University(蒂尔堡大学);University of Sannio(萨尼奥大学);University of Salerno(萨莱诺大学)
本研究通过大规模挖掘GitHub仓库,揭示了混沌工程工具在开源项目中的采用集中于少数工具,网络故障和实例终止占主导,为工具选择和未来研究提供了实证依据。
2026-09-22 cs.SE
A Deep Dive on the Impact of COVID-19 in Software Development
背景:COVID-19疫情影响全球不同行业。Objective.本研究调查了COVID-19对软件项目和软件开发专业人员的影响。方法:我们使用10个不同的指标,基于100个用Java开发的GitHub项目进行了挖掘软件存储库研究。接下来,我们调查了279名软件开发专业人士,以更好地了解COVID-19对日常活动和健康的影响。结果:我们确定了12个与生产力、代码质量和幸福感相关的观察结果。结论:我们的研究结果强调,COVID-19的影响不是二元的(降低生产力与提高生产力),而是一个频谱。对于我们的许多观察,相当大比例的受访者有不同的意见。我们认为,需要更多的研究来揭示导致某些结果更加普遍的特定条件。
2020-08-17 cs.SE
Data-Driven Search-based Software Engineering
本文介绍了数据驱动的基于搜索的软件工程,它结合了挖掘软件仓库(MSR)和基于搜索的软件工程(SBSE)的见解。MSR将软件工程问题表述为数据采掘问题,SBSE将SE问题重新表述为优化问题,并使用元启发式算法来解决它们。MSR和SBSE都有一个共同的目标,即提供见解来改进软件工程。这两个领域使用的算法也有内在的联系。因此,我们认为,将这两个领域结合起来对于以下情况是有用的:(a)需要从大数据源中学习,或者(b)当优化器需要了解地形以更快地找到更好的解决方案时。本文旨在回答以下三个问题:(1)DSE所涉及的各种主题是什么?(2)研究人员在这一领域使用哪些类型的数据?(3)研究人员使用哪些研究方法?本文简要阐述了作为一个实践指南,以开发新的DSE技术,也作为一个教学资源。本文还提供了一个用于探索DSE的资源(tiny.cc/data-se)。该资源包含89个与DSE相关的工件,分为13个组,如需求工程,软件产品线,软件过程。这个存储库中的所有材料都在最近的软件工程论文中使用过;即,对于所有这些材料,研究人员可以根据基线结果对他们的新想法进行比较评估。
2018-03-16 cs.SE
Mining the YARA Ecosystem: From Ad-Hoc Sharing to Data-Driven Threat Intelligence
Polytechnique Montréal(蒙特利尔理工学院);Concordia University(康考迪亚大学)
研究通过分析840万条规则揭示YARA生态系统高度集中且存在运营问题,提出需从随意收集转向严格规则工程。
2026-03-15 cs.CR cs.SE
Operationalizing Research Software for Supply Chain Security
Purdue University(普渡大学);Loyola University(洛约拉大学);University of Alabama(阿拉巴马大学)
本文提出面向研究软件供应链的分类法,通过系统回顾和数据集构建,建立统一的分类体系,并展示如何利用OpenSSF Scorecard分析不同分类簇的安全信号差异。
2026-01-28 cs.CR cs.SE
Applicability of Software Reliability Growth Models to Open Source Software
软件可靠性增长模型(SRGMs)基于基本假设,这些假设使它们通常更适合于闭源项目及其开发生命周期的质量评估。它们在开放源码软件项目中的使用是一个辩论的主题。虽然确实有研究调查SRGMs在开放源码软件方面的适用性,但这些研究受到所考虑的模型和项目数量的限制,可能导致不确定的结果。在本文中,我们提出了一个实验研究的SRGMs的适用性,共88个OSS项目,比较9个SRGMs,在整个项目的最佳模型的稳定性,对版本,在不同的领域,并根据不同的项目的属性。在STRAIT工具的帮助下,我们自动化了存储库挖掘、数据处理和SRGM分析,以获得更好的再现性。总体而言,我们发现SRGMs对OSS具有良好的适用性,但在将数据集分割为版本和域时具有不同的性能,突出了推广研究结果和寻找一刀切模型的困难。
2022-06-24 cs.SE
Manas: Mining Software Repositories to Assist AutoML
Iowa State University(爱荷华州立大学)
如今,深度学习被广泛用于构建软件。深度学习的一个软件工程问题是,为任务找到合适的卷积神经网络(CNN)模型对开发人员来说可能是一个挑战。最近关于AutoML的工作,更准确地说是神经架构搜索(NAS),通过Auto-Keras等工具实现,旨在解决这个问题,基本上将其视为一个搜索问题,其中起点是默认的CNN模型,并且该CNN模型的突变允许探索CNN模型的空间,以找到最适合该问题的CNN模型。这些工作在产生高精度CNN模型方面取得了重大成功。然而,有两个问题。首先,NAS可能非常昂贵,通常需要几个小时才能完成。其次,NAS生成的CNN模型可能非常复杂,这使得理解它们变得更加困难,并且训练它们的成本也更高。我们提出了一种新的NAS方法,其中不是从默认的CNN模型开始,而是从GitHub提取的模型库中选择初始模型。直觉是,与默认模型相比,解决类似问题的开发人员可能已经开发了一个更好的起点。我们还分析了野外CNN模型的常见层模式,以了解开发人员为改进模型而做出的更改。我们的方法使用通常发生的变化作为NAS中的变异算子。我们扩展了Auto-Keras来实现我们的方法。我们使用Kaggle的8个投票最高的问题进行评估,包括图像分类和图像回归,结果显示,在相同的搜索时间下,在不损失准确性的情况下,Manas生成的模型比Auto-Keras的模型少42.9%到99.6%的参数。以GPU为基准,Mana…
2022-02-13 cs.LG cs.SE
Continuous Integration and Software Quality: A Causal Explanatory Study
本文运用因果有向无环图并结合文献综述与软件仓库挖掘,分析70个开源项目,揭示了持续集成对软件质量的直接和间接因果效应及项目年龄的混杂作用。
2023-09-18 cs.SE
Systematic Detection of Energy Regression and Corresponding Code Patterns in Java Projects
University of Namur(南纳穆尔大学);Delft University of Technology(代尔夫特理工大学)
本文提出EnergyTrackr方法,用于检测Java项目中多提交的能源回归,识别潜在增加软件能耗的代码反模式,帮助开发者优化代码以减少能耗。
2026-04-21 cs.SE
Analysing Time-Stamped Co-Editing Networks in Software Development Teams using git2net
来自软件仓库的数据已经成为软件工程过程实证研究的重要基础。存储库挖掘文献中反复出现的主题是开发人员网络的推断,例如从项目的提交历史中捕获协作,协调或通信。大多数研究的网络是基于软件人工制品的合著。因为这忽略了代码更改和代码所有权的详细信息,我们引入了git 2net,一个可扩展的python软件,它有助于在大型git仓库中提取细粒度的协同编辑网络。它使用文本挖掘技术来分析文件中文本修改的详细历史。我们将我们的工具应用于两个案例研究,使用多个开源的GitHub存储库以及商业软件项目。具体来说,我们使用超过120万次提交和超过25'000名开发人员的数据来测试软件团队中开发人员生产力和共同编辑模式之间关系的假设。我们认为,git 2net开辟了一个巨大的高分辨率的人类协作模式的数据,可用于推进理论在经验软件工程,计算社会科学和组织研究的新来源。
2019-11-21 cs.MA cs.SE cs.SI
Metrics Dashboard: A Hosted Platform for Software Quality Metrics
科学软件界正在形成一种共识,即科学研究的进展取决于“各级软件的质量和可获得性”(wssspe.researchcomputing.org.uk/)。这一进展取决于在软件工程中接受最好的传统和紧急实践,特别是与软件工程更正式的传统相交的敏捷实践。作为我们研究计算科学和工程(CSE)软件开发项目过程中质量指标的更大探索性项目的第一步,我们开发了一个名为“测试仪表板”的平台,该平台通过挖掘GitHub上的开源软件存储库来生成和观察指标。与GitHub和提供个人绩效指标(例如提交)的类似系统不同,GitHub仪表板专注于指示团队进度和项目健康状况的指标。用户可以通过Oracle Dashboard提交托管存储库的URL进行批处理分析,然后缓存分析结果。完成后,用户可以交互式地研究各种指标随着时间的推移(在不同的粒度),数字和视觉。该系统的初始版本作为公共云服务(SaaS)启动和运行,并支持项目规模(KBEE),缺陷密度,缺陷损坏和生产力。虽然我们的系统绝不是第一个支持支持软件指标的系统,但我们相信它可能是第一个可以被任何托管项目使用的以社区为中心的可扩展资源之一。
2018-04-09 cs.SE
Policy-driven Software Bill of Materials on GitHub: An Empirical Study
本研究通过挖掘GitHub软件仓库,分析政策驱动型软件物料清单(SBOM)的现状,发现热门仓库中仅0.56%含此类SBOM,其依赖项存在2202个唯一漏洞、22%缺许可信息,为SBOM助力安全评估与许可管理提供参考。
2025-09-01 cs.SE
Governance Matters: Lessons from Restructuring the data.table OSS Project
Northern Arizona University(北亚利桑那大学);data.table Project(data.table 项目)
data.table项目通过社区主导的治理改革,显著提升了贡献者招募、拉取请求解决效率和贡献者保留率,为OSS治理改进提供了实践经验。
2026-01-19 cs.SE
Towards a Classification of Open-Source ML Models and Datasets for Software Engineering
Universitat Politècnica de Catalunya(加泰罗尼亚理工大学);Singapore Management University(新加坡管理大学)
本研究针对开源ML模型与数据集缺乏软件工程(SE)导向分类的问题,对Hugging Face上的PTMs和数据集进行仓库挖掘与SE相关性分析,发现代码生成是最常见任务,并指出自2023年第二季度起面向SE的模型显著增加,强调需扩展任务覆盖以促进ML与SE的整合。
2024-11-14 cs.AI cs.LG cs.SE
Explaining the Contributing Factors for Vulnerability Detection in Machine Learning
Concordia University(康考迪亚大学);Stevens Institute of Technology(史蒂文斯理工学院);University of Hawaii(夏威夷大学)
本文研究不同漏洞特征表示与机器学习模型组合对17个项目漏洞检测准确性的影响,发现词袋嵌入结合随机森林的基线模型可稳定提升约4%准确率,并揭示了漏洞签名跨项目迁移的局限性。
2024-06-05 cs.AI cs.SE
Cataloguing Hugging Face Models to Software Engineering Activities: Automation and Findings
Universitat Politècnica de Catalunya(政治与技术大学);Singapore Management University(新加坡管理大学)
本文通过分类Hugging Face上的预训练模型,揭示了软件工程中模型的应用现状与不足,为自动化场景提供了基础。
2026-11-10 cs.LG cs.SE
Software Development During COVID-19 Pandemic: an Analysis of Stack Overflow and GitHub
新型冠状病毒已成为全球严重的健康问题。这种情况促使人们对不同领域进行研究,以防治这一流行病。在软件工程中,我们指出了数据可视化项目来跟踪疾病的演变,机器学习来估计流行病的行为,以及计算机视觉处理放射图像。这些项目中的大多数都存储在版本控制系统中,并且在问答网站中有关于它们的讨论。在这项工作中,我们对大量问题和项目进行了挖掘软件库,旨在找到可以帮助研究人员和从业人员对抗冠状病毒的趋势。我们分析了来自Stack Overflow和Data Science Q\&A的1,190个问题以及60,352个GitHub项目。我们确定了在整个大流行期间问题和项目之间的相关性。关于冠状病毒的主要问题是如何使用Python、JavaScript和R,与网络抓取和数据可视化有关。最常见的GitHub项目是机器学习项目,使用JavaScript,Python和Java。
2021-03-09 cs.CY cs.SE
Effects of Visualizing Technical Debts on a Software Maintenance Project
技术债务(TD)隐喻被广泛用于封装众多的软件质量问题。她描述了在软件产品的设计或实现阶段采取捷径的短期利益(例如,为了满足最后期限)和采取所述捷径的长期后果之间的权衡,这可能会影响软件产品的质量。为了保证软件质量,降低软件的维护和演化成本,必须对TD进行管理。然而,用于TD检测的工具通常只考虑文件的角度(类和方法)提供结果,这在项目管理中并不常见。在这项工作中,提出了一种技术来识别/可视化TD上一个新的角度:软件功能。该技术采用挖掘软件仓库(MRS)工具,以确定软件功能和后的技术债务,影响这些功能。此外,我们还提出了一种方法来支持维护任务指导TD可视化的功能级别,旨在评估其在实际软件项目的适用性。结果表明,该方法可以有效地减少现有的TD,以及避免引入新的TD。
2019-11-18 cs.HC cs.SE
A First Look at the Lifecycle of DL-Specific Self-Admitted Technical Debt
本文挖掘40个ML项目中的185个深度学习专属SATD实例,分析其引入、承认与持续生命周期,发现债务集中于开发早中期及Training、Hardware阶段。
2025-10-04 cs.SE
The Role of Data Filtering in Open Source Software Ranking and Selection
本文通过对GitHub十万余仓库的回归分析表明,按作者数等流行度相关标准过滤项目会显著扭曲特征与星标数之间的关系,甚至反转相关性,因此主张使用完整数据集或分层随机抽样。
2024-01-18 cs.SE