Generative Adversarial Imitation Learning
Stanford University(斯坦福大学)
考虑从示例专家行为中学习策略,而无需与专家交互或访问强化信号。一种方法是用逆强化学习恢复专家的成本函数,然后用强化学习从该成本函数中提取策略。这种方法是间接的,可能会很慢。我们提出了一个新的一般框架,直接从数据中提取的政策,就好像它是通过强化学习以下的逆强化学习。我们证明了我们框架的某个实例在模仿学习和生成对抗网络之间进行了类比,从中我们得到了一个无模型的模仿学习算法,该算法在模仿大型高维环境中的复杂行为时,比现有的无模型方法获得了显着的性能增益。
2016-06-10 cs.AI cs.LG
SWE-Protégé: Learning to Selectively Collaborate With an Expert Unlocks Small Language Models as Software Engineering Agents
Meta;University of Michigan(密歇根大学);Stanford University(斯坦福大学)
SWE-Protégé通过选择性协作专家,使小型语言模型在软件工程任务中取得显著提升,实现42.4%的Pass@1成绩。
2026-02-25 cs.AI cs.CL cs.LG
Causal Imitation Learning with Unobserved Confounders
Columbia University(哥伦比亚大学);Purdue University(普渡大学)
孩子们学习的一种常见方式是模仿成年人。模仿学习的重点是学习政策与适当的性能从示范产生的专家,一个未指定的性能指标,和未观察到的奖励信号。流行的模仿学习方法要么直接模仿专家的行为策略(行为克隆),要么学习一个奖励函数,优先考虑观察到的专家轨迹(逆强化学习)。然而,这些方法依赖于这样的假设,即专家用来确定其行为的协变量被完全观察到。在本文中,我们放松了这一假设,并研究了当学习者和专家的感官输入不同时的模仿学习。首先,我们提供了一个非参数的,图形化的标准,是完整的(既必要又充分),以确定模仿的可行性,从示范数据和定性假设的基础环境的组合,表示在因果模型的形式。然后,我们表明,当这样的标准不成立,模仿仍然是可行的,利用定量知识的专家轨迹。最后,我们开发了一个有效的程序学习模仿政策,从专家的轨迹。
2022-08-12 cs.AI cs.LG
Reinforced Imitation Learning by Free Energy Principle
The University of Tokyo(东京大学)
强化学习(RL)需要大量的探索,尤其是在稀疏奖励环境中。模仿学习(Imitation Learning,IL)可以从专家的演示中学习而无需探索,但它永远不会超过专家的表现,而且也容易受到演示和执行之间的分布转移的影响。本文从自由能原理出发,从根本上统一了强化学习和交互学习。FEP是一种统一的大脑贝叶斯理论,它通过一个共同的基本原理来解释感知,行动和模型学习。我们提出了一个理论上的扩展FEP和推导出一个算法,在该算法中,代理学习的世界模型,内化专家演示,并在同一时间使用该模型来推断当前和未来的状态和行动,最大限度地提高回报。因此,该算法通过部分模仿专家以及以无缝的方式最大化其回报来降低探索成本,从而获得比次优专家更高的性能。我们的实验结果表明,这种方法是有前途的视觉控制任务,特别是在稀疏奖励环境。
2021-07-25 cs.AI cs.LG
Pretraining Deep Actor-Critic Reinforcement Learning Algorithms With Expert Demonstrations
Tsinghua University(清华大学)
由于需要较少的在线仿真数据,因此已发现使用专家演示的预训练在加速深度强化学习算法的训练过程中是有用的。有些人使用监督学习来加快特征学习的过程,另一些人通过模仿专家演示来预训练策略。然而,这些方法是不稳定的,不适合演员-评论家强化学习算法。此外,一些现有的方法依赖于全局最优假设,这在大多数情况下是不正确的。在本文中,我们采用专家示范的行动者-批评强化学习框架,同时确保性能不受影响的事实,专家示范是不是全局最优的。我们从理论上推导出一种仅通过专家演示即可计算策略梯度和价值估计量的方法。我们的方法在理论上是可行的演员-评论家强化学习算法,预训练的政策和价值函数。将该方法应用于两种典型的actor-critic强化学习算法DDPG和ACER,实验结果表明,该方法不仅比没有预训练过程的RL算法性能更好,而且仿真效率更高.
2018-02-09 cs.AI cs.LG stat.ML
How to Build AI Agents by Augmenting LLMs with Codified Human Expert Domain Knowledge? A Software Engineering Framework
Department of Computer Science and Engineering, Chalmers University of Technology(计算机科学与工程系,查尔姆斯理工大学);Department of Mathematics and Computer Science, Eindhoven University of Technology(数学与计算机科学系,埃因霍温理工大学);Department of Computer Science and Media Technology, Malmö University(计算机科学与媒体技术系,马尔默大学)
本文提出一种软件工程框架,通过增强大语言模型与编码化专家知识,构建能自主生成可视化内容的AI代理,实现非专家在专业领域内达到专家水平的成果。
2026-01-21 cs.AI
Learning Reasoning Rewards from Expert Demonstrations with Inverse Reinforcement Learning
University of Cambridge(剑桥大学)
本文提出了一种名为Reasoning Adversarial Inverse Reinforcement Learning (R-AIRL)的方法,通过逆强化学习从专家示范中学习推理奖励,以克服传统监督微调的局限性,并在多个数据集上展示了其在训练和推理过程中的有效性。
2026-05-17 cs.AI
Selective Expert Guidance for Effective and Diverse Exploration in Reinforcement Learning of LLMs
School of Data Science, Fudan University(复旦大学数据科学学院);Shanghai Institute of Artificial Intelligence for Education, East China Normal University(华东师范大学上海智能教育研究院);College of Computer Science and Artificial Intelligence, Fudan University(复旦大学计算机科学与技术学院);Ant Group(蚂蚁集团)
提出MENTOR框架,仅在关键决策点提供专家引导,平衡探索的有效性与多样性,提升LLM在可验证奖励强化学习中的推理能力。
2026-07-02 cs.AI cs.CL
Learning Agile Skills via Adversarial Imitation of Rough Partial Demonstrations
Max Planck Institute for Intelligent Systems(马克斯·普朗克智能系统研究所);ETH Zurich(苏黎世联邦理工学院)
学习敏捷技能是机器人技术的主要挑战之一。为此,强化学习方法已经取得了令人印象深刻的结果。这些方法需要明确的任务信息的奖励函数或专家,可以在模拟中查询,以提供一个目标控制输出,这限制了它们的适用性。在这项工作中,我们提出了一种生成对抗方法,用于从部分和潜在的物理不兼容的演示中推断奖励函数,以获得成功的技能,其中参考或专家演示不容易获得。此外,我们表明,通过使用Wasserstein GAN制定和过渡的示范与粗糙和部分信息作为输入,我们能够提取的政策,是强大的,能够模仿演示的行为。最后,所获得的技能,如后空翻进行了测试,一个敏捷的四足机器人称为独奏8和目前的忠实复制的手持人类示范。
2022-11-21 cs.AI cs.LG cs.RO
Align Your Intents: Offline Imitation Learning via Optimal Transport
Skolkovo Institute of Science and Technology(斯科尔科沃科学技术研究院);Artificial Intelligence Research Institute(人工智能研究院);University of California, Irvine(加州大学欧文分校)
离线强化学习(RL)通过预先收集的数据学习最优策略,而不与环境交互,从而解决顺序决策问题。到目前为止,它仍然有些不切实际,因为人们很少明确地知道奖励,而且很难追溯它。在这里,我们表明,模仿代理仍然可以学习所需的行为仅仅从观察专家,尽管没有明确的奖励或行动标签。在我们的方法AILOT(Aligned模仿学习via Optimal Transport)中,我们以一种意图的形式涉及状态的特殊表示,该意图在数据中包含成对的空间距离。给出这样的表示,我们定义内在的奖励函数通过最佳的专家和代理的轨迹之间的运输距离。我们报告说,AILOT在D4RL基准测试中的表现优于最先进的离线模仿学习算法,并通过在稀疏奖励任务中进行密集奖励重新标记来提高其他离线RL算法的性能。
2024-10-04 cs.AI cs.LG
Generative Adversarial Imitation Learning for End-to-End Autonomous Driving on Urban Environments
Federal University of Santa Catarina(圣卡塔琳娜联邦大学)
自动驾驶是一项复杂的任务,自1989年第一辆自动驾驶汽车ALVINN以来,人们一直在使用监督学习方法或行为克隆(BC)来解决这个问题。在BC中,神经网络用构成由专家制作的训练集的状态-动作对来训练,即,人类司机然而,这种类型的模仿学习没有考虑在导航轨迹的不同时刻采取的动作之间可能存在的时间依赖性。这些类型的任务更好地由强化学习(RL)算法处理,该算法需要定义奖励函数。另一方面,最近的模仿学习方法,如生成对抗模仿学习(GAIL),可以训练策略,而无需明确要求定义奖励函数,允许代理直接在专家轨迹的训练集上通过试错来学习。在这项工作中,我们提出了两个变化的GAIL自主导航的车辆在现实的CARLA模拟环境中的城市场景。它们都使用相同的网络架构,处理来自三个前置摄像头的高维图像输入,以及代表速度的其他九个连续输入,稀疏轨迹的下一个点和高级驾驶命令。我们表明,它们都能够在训练结束后从头到尾模仿专家轨迹,但用BC增强的GAIL损失函数在收敛时间和训练稳定性方面优于前者。
2021-10-16 cs.AI cs.LG cs.RO
GEMS: Generative Expert Metric System through Iterative Prompt Priming
University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);Microsoft Research(微软研究院)
本文提出受神经活动启发的提示工程框架GEMS,利用生成模型从理论中提取并推理出情境感知度量,以支持大型软件组织中的软件社区知识传递与复杂问题分诊。
2024-10-01 cs.AI cs.SE
Towards a Theory of Software Development Expertise
软件开发包括各种任务,如实现新功能,分析需求和修复错误。成为这些任务的专家需要一定的技能,知识和经验。一些研究调查了软件开发专业知识的各个方面,但缺少的是一个全面的理论。我们提出了第一个概念理论的软件开发的专业知识,是基于数据的混合方法的调查与335软件开发人员和文献的专业知识和专家的表现。我们的理论目前专注于编程,但已经为研究人员,开发人员和雇主提供了有价值的见解。该理论描述了软件开发专业知识的重要属性,以及哪些因素促进或阻碍其形成,包括开发人员的绩效如何随着时间的推移而下降。此外,我们的定量结果表明,开发人员的专业知识自我评估是上下文相关的,经验不一定与专业知识。
2018-11-04 cs.SE
Synergizing Domain Expertise with Self-Awareness in Software Systems: A Patternized Architecture Guideline
Loughborough University(拉夫堡大学);University of Birmingham(伯明翰大学);Southern University of Science and Technology(南方科技大学)
为了促进软件系统的可重用性和自适应性,体系结构模式及其方法学为解决软件工程过程中经常出现的问题提供了统一的解决方案。然而,在现有的模式和方法中,随着时间的推移而建立的领域知识和工程师的专业知识并没有明确地与自我意识过程相关联。这种联系是重要的,因为知识是解决相关问题的宝贵资产,如果没有知识,就会造成不必要的开销,可能产生误导性的结果,并不明智地浪费领域专门知识可能带来的巨大好处。本文强调了协同领域的专业知识和自我意识,使更好的自适应软件系统的重要性,依赖于定义良好的专业知识表示,算法和技术。特别是,我们提出了一个整体框架的概念,丰富的模式和方法,被称为DBASES,提供了一个原则性的指导方针,为工程师进行困难和利益分析可能的协同作用,试图保持“工程师在循环”。通过三个教程的案例研究,我们展示了DBASES如何可以应用在不同的领域,其中一组精心挑选的候选人具有不同的协同作用,可用于定量调查,提供更明智的决策的设计选择。
2020-03-31 cs.AI cs.SE
Should I Bug You? Identifying Domain Experts in Software Projects Using Code Complexity Metrics
在任何足够复杂的软件系统中,都有专家,他们对系统的某些部分有着比其他部分更深刻的理解。然而,并不总是清楚这些专家是谁,以及他们可以为系统的哪些特定部分提供帮助。我们提出了一个框架,以引起开发人员的专业知识,并建议专家分析复杂性措施随着时间的推移。此外,团队可以检测到目前没有专家或只有少数专家的软件部分,并采取预防措施以保持集体代码知识和所有权。我们在一家中等规模的公司采用了这种先进的方法。结果进行了评估与调查,比较感知和计算的专业知识的开发人员。我们表明,聚合代码度量可用于识别不同的软件组件的专家。在90%以上的情况下,开发人员将确定的专家评为可接受的候选人。
2018-09-20 cs.SE
Exploring the Experiences of Experts: Sustainability in Agile Software Development -- Insights from the Finnish Software Industry
本研究通过访谈芬兰软件行业专家,探究敏捷软件开发中的可持续性现状,发现Scrum最常用、各可持续性维度存在连锁效应,并为2030软件工程路线图提出三项关键建议。
2024-07-09 cs.SE
Towards a Common Testing Terminology for Software Engineering and Data Science Experts
Fraunhofer Institute for Experimental Software Engineering IESE(弗劳恩霍夫实验软件工程研究所);Algorithm Accountability Lab, TU Kaiserslautern(凯泽斯劳滕工业大学算法问责实验室)
分析质量保证,特别是测试,是软件密集型系统开发的一个组成部分。随着人工智能(AI)和机器学习(ML)作为此类系统的一部分的使用越来越多,这变得更加困难,因为众所周知的软件测试方法无法直接应用于系统的AI支持部分。经典测试方法的必要调整和人工智能新概念的开发将受益于人工智能和软件工程专家之间更深入的理解和交流。我们认为,两个社区使用的不同术语是这方面的主要障碍。由于我们认为测试术语的相互理解是一个关键,本文贡献了经典软件测试和人工智能测试的最重要的概念之间的映射。在映射中,我们突出了映射概念的相关性和命名方面的差异。
2021-10-06 cs.AI cs.LG cs.SE
Talk to Me: A Case Study on Coordinating Expertise in Large-Scale Scientific Software Projects
大规模的协作科学软件项目需要比任何一个人通常拥有更多的知识。这使得知识和专业知识的协调和交流成为创造和保障软件质量的关键因素,没有它,我们就无法拥有可持续的软件。然而,当研究人员试图扩大软件的生产规模时,他们面临着意识和理解的问题。这为制定更好的做法和工具直接应对这些挑战提供了机会。为此,我们对Trilinos项目的开发人员进行了案例研究。我们调查了软件开发所面临的挑战,并展示了这些问题如何与他们所知道的以及他们如何沟通联系在一起。基于这些数据,我们提供了一系列切实可行的建议,并为未来的研究勾勒出前进的道路。
2018-09-17 cs.SE
Navigating Expertise in Configurable Software Systems through the Maze of Variability
针对可配置软件系统(CSS)中传统专业知识指标因可变性实现与模块结构不匹配而受限的问题,本研究调查CSS开发工作分布及专家对可变代码的参与,为改进专业知识评估方法奠定基础。
2024-01-19 cs.SE
Using an Expert Panel to Validate the Malaysian SMEs-Software Process Improvement Model (MSME-SPI)
本文介绍了一个新开发的马来西亚中小企业软件过程改进模型(MSME-SPI)的组成部分,可以评估中小企业软件开发行业在管理和提高他们的软件过程能力。MSME-SPI是针对马来西亚中小企业软件开发行业的实证研究中强调的从业者需求而开发的。在模型开发之后,需要独立的反馈,以表明模型符合其目标。因此,确认阶段是通过一组软件过程改进专家检查MSME-SPI模型组件来执行的。此外,MSME-SPI模型的有效性进行了验证,使用专家小组。三个标准被用来评估模型的有效性,即:有用性,可验证性和结构。结果表明,该模型有效的中小企业使用的微小修改。验证阶段有助于该领域从业人员更好地理解和使用MSME-SPI模型。
2021-03-10 cs.SE
Making FPGAs Accessible to Scientists and Engineers as Domain Expert Software Programmers with LabVIEW
在本文中,我们提出了一个图形化的编程框架,LabVIEW,和相关的语言和库,以及编程技术和模式,我们发现有用的科学家和工程师作为领域专家软件程序员访问FPGA。
2014-08-20 cs.DC cs.OS cs.PL
An Expert Module Design and Implementation that Evaluation the C&K Metric Suite in Terms of Object Oriented Software Quality
面向对象软件具有封装性、继承性、内聚性、耦合性和多态性等特性。这些特性对面向对象软件的测试、维护和修复活动有着重要的影响。这些活动的成功结束,取决于正确的检测和正确的解释的指标将被评估。通过开发和使用软件测试工具,也可以安全、快速地评估这些指标。目前,许多软件测试工具都是面向对象的。但是,这些工具的功能存在一些限制。许多这种工具只产生度量结果,不采取任何行动,在这一点上,这些结果意味着什么,以及它如何影响软件的质量。因此,需要使这些工具多样化并提高其能力。基于本研究中提到的软件测试工具的局限性,旨在通过专家系统的方法提供面向对象测试过程的自动化。为此,专家模块,审查和解释的度量结果,提供信息的内部质量属性的项目(.jar扩展名)开发的面向对象的编程方法已经开发。本模块采用了Chidamber和Kemerer(C&K)开发的公制套件。该模块利用软件测试工具QMS获得的度量结果,具有自动、手动和跨版本比较方法的评价特点,并解释了内部质量规范之间的关系。在软件测试活动中,预期betrefend模块将成为白盒测试的支持元素。
2019-02-09 cs.SE
DeepQuali: Initial results of a study on the use of large language models for assessing the quality of user stories
Fraunhofer Institute for Experimental Software Engineering IESE(弗劳恩霍夫实验软件工程研究所IESE);QAware GmbH(QAware有限公司);let's dev GmbH & Co. KG(let's dev两合有限公司)
DeepQuali利用大型语言模型评估用户故事质量,通过对比专家判断发现其在整体评估上有效,但细节评分存在分歧,且需进一步融入工作流程。
2026-02-09 cs.AI cs.SE
Expertise-Based Developer Assignment for Long-Term Software Components in Open-Source Projects
Zayed University(扎耶德大学);University of Adelaide(阿德莱德大学);National University of Computer and Emerging Sciences(国家计算机与新兴科学大学);Heriot-Watt University(赫瑞-瓦特大学)
本文针对开源项目中长期软件组件的开发人员分配问题,开发了基于Git提交建模专业技能的网页应用,该应用经测试在速度和目标开发人员排序上表现良好。
2026-08-07 cs.SE
LACY: Simulating Expert Mentoring for Software Onboarding with Code Tours
Bilkent University(比尔肯特大学);Beko(贝科)
LACY是一种混合人类-人工智能的入职系统,通过可重用的代码巡演模拟专家指导,首次结合AI生成内容与专家审核。实验显示专家引导的巡演在学习效果和效率上优于纯AI内容。
2026-03-26 cs.SE
Which RESTful API Design Rules Are Important and How Do They Improve Software Quality? A Delphi Study with Industry Experts
一些研究分析了现有的Web API对REST的约束,以估计最先进的API之间的REST合规程度。这些研究表明,只有少数Web API是真正的REST风格。此外,理论上的REST概念和实际实现之间的不匹配使我们相信,实践者在其重要性和对软件质量的影响方面对许多规则和最佳实践的看法与这些REST概念不同。因此,我们进行了一项Delphi研究,在这项研究中,我们向来自行业的八位Web API专家提出了82条REST API设计规则的目录。对于每个规则,我们让他们评估其重要性和软件质量影响。作为共识,我们的专家将28条规则评为高重要性,17条中等重要性,37条低重要性。此外,他们认为可用性、可维护性和兼容性是最受影响的质量属性。详细的分析显示,专家们认为达到Richardson成熟度等级2的规则是至关重要的,而达到等级3则不那么重要。由于所获得的共识数据可以作为设计工具支持的方法用于RESTful API的自动质量评估的有价值的输入,我们简要讨论了这种方法的要求,并评论了最重要的规则的适用性。
2021-07-30 cs.SE
Identifying Experts in Software Libraries and Frameworks among GitHub Users
Federal University of Minas Gerais(米纳斯吉拉斯联邦大学);Federal Institute of Minas Gerais(米纳斯吉拉斯联邦理工学院)
软件开发越来越依赖于库和框架来提高生产力并缩短上市时间。尽管如此,我们仍然缺乏技术来评估开发人员在广泛流行的库和框架中的专业知识。在本文中,我们评估了无监督(基于聚类)和有监督机器学习分类器(随机森林和SVM)的性能,以识别三个流行的JavaScript库中的专家:Facebook/react、mongodb/node-mongodb和socketio/socket.io。首先,我们收集了关于GitHub项目上开发人员活动的13个特性,包括依赖于这些库的源代码文件的提交。我们还建立了一个地面真相,包括575名开发人员对所研究的库的专业知识,正如他们在调查中自我报告的那样。基于我们的研究结果,我们记录了使用机器学习分类器来预测软件库中的专业知识的挑战,使用从GitHub提取的特征。然后,我们提出了一种方法来识别图书馆专家的基础上聚类特征数据从GitHub的三角形的结果与Linkedin配置文件上提供的信息,我们表明,它是能够推荐几十个GitHub用户的证据是专家在所研究的JavaScript库。我们还提供了一个公共数据集,其中包含575名开发人员对所研究的库的专业知识。
2019-03-19 cs.LG cs.SE
''You Can't Open an LLM With a Screwdriver'': The De-Democratization of Software
Virginia Commonwealth University(弗吉尼亚联邦大学);University of Hawai'i at Mānoa(夏威夷大学马诺阿分校);Oregon State University(俄勒冈州立大学)
本文指出AI虽扩大代码生成获取范围但或使软件控制权集中,软件工程专业知识重心转向意图规范,并提出教育、工具和政策领域的研究机遇以应对AI时代挑战。
2026-08-26 cs.SE
LLM-Powered Workflow Optimization for Multidisciplinary Software Development: An Automotive Industry Case Study
Chalmers University of Technology(查尔姆斯理工大学);University College London(伦敦大学学院)
本文提出基于图的工作流优化方法,利用大语言模型替代手动协调,提升多学科软件开发效率,通过汽车行业案例验证,实现93.7%的F1分数,将API开发时间从5小时缩短至7分钟。
2026-03-30 cs.AI cs.SE
A Large-Scale Study on Developer Engagement and Expertise in Configurable Software System Projects
本研究通过挖掘25个CSS项目仓库的45万余次提交,分析开发者对可变/强制代码的参与度、可变代码工作量集中度及专业知识指标有效性,发现可变代码责任高度集中且传统指标识别效果差,为CSS项目任务分配提供改进方向。
2025-08-25 cs.SE
The Human Need for Storytelling: Reflections on Qualitative Software Engineering Research With a Focus Group of Experts
University of Florence(佛罗伦萨大学);Vrije Universiteit Amsterdam(阿姆斯特丹自由大学);Monash University(莫纳什大学);University of Maryland, Baltimore County(马里兰大学巴尔的摩县分校);University College Cork(科克大学学院)
本文通过专家小组讨论,探讨定性软件工程研究的重要性、发展历程及未来前景。
2025-12-08 cs.SE
Predicting Expert Evaluations in Software Code Reviews
本文提出一种算法模型,通过从代码提交预测编码时间、实现时间和代码复杂度等主观指标(与人类判断强相关),自动化处理耗时且易被忽视的代码审查任务,从而减轻审查者负担并支持数据驱动决策。
2024-09-23 cs.SE
Circumstantial-Evidence-Based Judgment for Software Effort Estimation
软件工作量估算的专家判断是通过专家的经验,针对类似项目或活动的实际工作量的直接证据。然而,直接证据的可用性意味着需要合适的专家和过去的数据。本文提出的基于环境证据的判断方法,注重人类知识中积累的开发经验,通过理性推理,可以对新项目不同方案的实施努力进行定性评估。为了演示基于环境证据的判断过程,本文采用基于命题学习理论的诊断推理方法,在不同技术和环境下实现Web服务组合项目时,对不同的工作量估计进行了推断和比较。范例表明,我们提出的工作可以帮助确定项目实施前的努力权衡。总的来说,基于环境证据的判断不是专家判断的替代品,而是对专家判断的补充,以促进和改善软件工作量估计。
2013-02-09 cs.SE
Analysis of LLMs vs Human Experts in Requirements Engineering
Crowdbotics(克劳博蒂克斯公司)
本研究对比了LLM与人类专家在需求获取中的表现,发现LLM生成的需求更对齐、更完整、速度更快且成本极低,表明LLM将在需求工程中发挥日益重要的作用。
2025-02-04 cs.AI cs.SE
Chain-of-Experts (CoE): Reverse Engineering Software Bills of Materials for JavaScript Application Bundles through Code Clone Search
针对JavaScript应用程序束逆向生成SBoM的挑战,本文提出多任务深度学习模型Chain-of-Experts (CoE),通过代码分割、分类和克隆检索三个任务,首次为真实世界JavaScript应用束的SBoM生成提供了可扩展、高效且端到端的解决方案。
2024-08-29 cs.SE
Experience in engineering of scientific software: The case of an optimization software for oil pipelines
科学和工程软件的开发通常是不同的,可能比传统的企业软件的开发更具挑战性。作者参与了学术界和工业界之间的一个技术转让项目,该项目侧重于石油管道泵送能源成本优化软件的工程、开发和测试。具有不同技能的专家(机械、电力和软件工程师)参与其中。考虑到软件的复杂性(复杂的底层优化模型)以及具有来自不同领域的专家,在软件系统的各个软件工程方面存在挑战(例如,要求和测试)。我们报告我们的观察和经验,在我们的技术转让项目中解决这些挑战,并旨在增加现有的经验和证据的科学和工程软件的工程。我们相信,我们的观察,经验和教训,可以为其他科学和工程软件系统的工程研究人员和从业人员有用。
2020-03-01 cs.SE
Do Open Source Software Developers Listen to Their Users?
在应用软件中,目标用户的满意使软件更容易被接受。开放源码软件(OSS)系统既没有专有软件的物理边界,也没有商业边界,因此世界各地的用户都可以与之互动。这种免费使用是有利的,因为越来越多的用户能够使用开放源码软件;有更多的改进机会。这项研究探讨了OSS开发人员处理用户反馈的方式。在我们的调查中,我们还询问了开放源码软件开发人员是否咨询专业的可用性专家来改进他们的项目。根据结果,大多数OSS开发人员既不将可用性视为他们的首要任务,也不咨询可用性专家。
2015-07-24 cs.SE
Diversity Empowers Intelligence: Integrating Expertise of Software Engineering Agents
Salesforce AI Research(Salesforce AI研究院);Carnegie Mellon University(卡内基梅隆大学)
针对现有软件工程智能体各有优劣的问题,提出元模块框架DEI整合多智能体专业能力,在SWE-Bench Lite基准上实现性能大幅提升,最优组解决率达55%位居榜首。
2024-08-13 cs.AI cs.CL cs.LG
Expert-in-the-Loop Systems with Cross-Domain and In-Domain Few-Shot Learning for Software Vulnerability Detection
本研究针对网络威胁下的高效软件漏洞检测需求,对比大语言模型不同提示策略并结合基于置信度的专家在环路由机制,验证了少样本提示的性能提升效果,为AI辅助漏洞检测系统部署提供基础。
2025-06-11 cs.CR cs.SE
Representation of Developer Expertise in Open Source Software
The University of Tennessee(田纳西大学)
背景:开发人员专业知识的准确表示一直是一个重要的研究问题。虽然一些研究提出了在单个项目中代表专业知识的新方法,但这些方法很难在生态系统层面上应用。然而,随着软件开发的重点从单一转向模块,在整个开放源码软件开发的背景下,例如,当一个项目试图寻找新的维护人员和具有相关技能的开发人员时,就有必要采用一种方法来代表开发人员的专门知识。目的:我们的目标是通过提出和构建技能空间来解决这个知识缺口,每个API,开发人员和项目都代表了这个空间,并假设这个空间的拓扑结构应该如何反映开发人员的知识(和项目需要)。方法:我们使用World of Code基础设施来提取开源开发人员更改的文件中的完整API集,并基于这些数据,使用Doc 2 Vec嵌入来表示API,开发人员和项目的矢量。然后,我们通过预测开发人员使用/加入的新API/项目以及他们的拉取请求是否被接受来评估这些嵌入是否反映了技能空间的假设拓扑。我们还检查开发人员在技能空间中的表示如何与他们自我报告的API专业知识保持一致。测试结果:我们的研究结果表明,在技能空间中提出的嵌入似乎满足假设的拓扑结构,我们希望这样的表示可以帮助构建信号,提高整个开源生态系统的信任(和效率),并有助于调查与开发人员熟练程度和学习相关的其他现象。
2021-02-02 cs.LG cs.SE
SWE-Opt: A Benchmark for Evaluating LLMs on Performance-Oriented Repository-Level Optimization
Siemens AG(西门子公司);Technical University of Munich(慕尼黑技术大学);Heilbronn, Germany(德国海德堡);Munich, Germany(德国慕尼黑)
针对现有基准过度简化性能优化的问题,提出基于102个专家优化的仓库级基准SWE-Pro,评估LLM在运行时、峰值内存和时间加权内存使用上的表现,发现LLM优化效果显著弱于专家。
2026-11-03 cs.AI cs.CL cs.SE
Predicting Defect Content and Quality Assurance Effectiveness by Combining Expert Judgment and Defect Data - A Case Study
对于开发软件或软件密集型系统的公司来说,以系统的方式规划质量保证(QA)活动并控制其执行是一项具有挑战性的任务。两者都需要关于所应用的QA技术的有效性和所检查工件的缺陷内容的估计能力。用于这些目的的现有方法需要来自历史项目的大量测量数据。由于许多公司没有收集足够的数据来应用这些方法(特别是在项目生命周期的早期),他们通常只根据专家的意见进行QA计划和控制。本文提出了一种混合的方法,结合了常用的测量数据和上下文特定的专家知识。为了评估该方法的适用性和实用性,我们进行了一个案例研究的背景下,独立的验证和确认活动的关键软件在空间领域。为软件需求分析阶段开发了一个混合缺陷内容和有效性模型,并使用可用的遗留数据进行了评估。一个主要的结果是,与仅基于数据的适用模型相比,混合模型提供了改进的估计精度。通过交叉验证确定的平均相对误差幅度(MMRE)为29.6%,而通过最准确的基于数据的模型获得的平均相对误差幅度为76.5%。
2014-01-13 cs.SE
Secure Software Engineering in the Financial Services: A Practitioners' Perspective
安全软件工程是现代软件开发中的一项基本活动。然而,虽然安全研究领域已经取得了相当快的进展,但在实践中,安全专家和软件开发团队之间仍然存在巨大的知识差距。毕竟,我们不能指望开发人员和其他软件从业人员成为安全专家。了解软件开发团队如何将安全性纳入他们的流程以及他们面临的挑战是缩小这一差距的一步。在本文中,我们研究了金融服务公司如何确保其软件系统的安全性。为此,我们进行了一项定性研究的基础上,半结构化的采访,16个软件从业人员从11个不同的金融公司在三大洲。我们的研究结果揭示了从业人员在软件开发过程的不同阶段所采取的安全考虑因素,软件团队使用不同的安全实践来确保其软件系统的安全性,从业人员认为在现有的实践安全工具中重要的改进,不同的知识共享和学习实践,开发人员用来了解更多关于软件安全,以及软件从业人员目前面临的挑战,当谈到保护他们的系统。
2021-04-08 cs.SE
Inferencing into the void: problems with implicit populations Comments on `Empirical software engineering experts on the use of students and professionals in experiments'
我欢迎Falessi等人[1]的贡献(以下称为F++)以及随后的辩论。实验是经验软件工程中的一个重要工具,因此我们如何选择参与者显然是一个相关的问题。此外,正如F++所指出的,这个问题比乍看之下的简单二分法要微妙得多。本评注的结构如下。在第2节中,我简要总结了F++的论点,并评论了他们的方法。接下来,在第3节中,我会退一步来考虑推理论证中代表性的本质以及仔细定义的必要性。然后,我给出了三个使用不同类型的参与者来考虑影响的例子。最后,我认为,在很大程度上同意F++,学生参与者是否具有代表性的问题取决于目标人群。然而,我们需要认真考虑如何界定这一群体,特别是不要忽视任务和环境的代表性。明确描述目标人群有助于这一点。
2018-10-17 cs.SE
Identifying Source Code File Experts
在软件开发中,源代码文件的识别是专家的一项重要工作。识别这些专家有助于改进软件维护和演化活动,例如开发新功能、代码评审和错误修复。尽管一些研究已经提出了存储库挖掘技术来自动识别源代码专家,但在这一领域仍然存在差距。例如,研究与源代码知识相关的新变量,并应用机器学习,旨在提高识别源代码专家的技术的性能。本研究的目的是调查的机会,以提高现有的技术,推荐源代码文件的专家的性能。我们通过收集113个软件项目的开发历史和调查开发人员的数据来建立一个预言。然后,我们使用这个预言:(i)分析从开发历史和开发人员的源代码知识提取的措施之间的相关性和(ii)调查使用机器学习分类器,通过评估其性能,在识别源代码文件的专家。第一作者和修改的最近度分别是与源代码知识正相关和负相关最高的变量。在公共数据集中,机器学习分类器的性能优于线性技术(F-Measure = 71%至73%),但在私有数据集中,这种优势并不明显,线性技术的F-Measure范围为55%至68%,ML技术为58%至67%。总的来说,线性技术和机器学习分类器实现了类似的性能,特别是如果我们分析F-Measure。然而,机器学习分类器通常获得更高的精度,而线性技术获得最高的召回值。
2022-08-16 cs.SE
Non-cognitive abilities of exceptional software engineers: a Delphi study
软件工程概念的重要构建块无疑是技术性的。在过去的十年中,对非技术性的研究和实际兴趣已经增长,揭示了构建模块是纯技术知识之外的各种技能和能力。人们曾多次尝试对这些模块进行分类,但迄今为止,很少有国际研究通过询问工业界和学术界的专家来确定技能:开发人员需要哪些能力才能在软件工程行业中脱颖而出?为了回答这个问题,我们进行了一项德尔菲研究,邀请了来自全球11个不同国家的36位专家,隶属于21个国际知名机构。这项研究提出了55个确定和排名的技能,分为四个主要领域:沟通技能(移情,积极倾听等),协作技能(分担责任,相互学习等),解决问题的能力(验证假设,解决方案导向的思维等),和个人技能(好奇心,对想法持开放态度等),其中比较了技术专家,企业专家和学者的意见。我们希望这项工作能激励教育工作者和从业者调整他们的培训计划,缩小行业和学术界之间的差距。
2019-10-22 cs.CY cs.SE
Sustainable Software Ecosystems: Software Engineers, Domain Scientists, and Engineers Collaborating for Science
科学软件的开发通常是领域科学家和科学软件工程师之间的合作。在开发先进的科学软件时,接受这些合作尤为重要,因为可持续性,可重复性和可扩展性非常重要。在理想的情况下,正如本文所讨论的那样,这将由世界上最重要的科学专家组成的团队聚集在一起,这些专家在特定领域具有经验丰富的软件开发人员,他们在形成高度协作的软件团队以促进科学研究方面经验丰富。
2014-07-22 cs.SE
Action Research Can Swing the Balance in Experimental Software Engineering
一般来说,专业人士在大多数决策中仍然忽视科学证据,而不是专家意见。出于这个原因,在该领域采用新的软件技术仍然很常见,没有任何科学依据或有充分依据的标准,而是根据专家的意见。实验性软件工程对于理解软件技术的局限性和适用性至关重要。为了更好地观察和理解软件工程的实践,我们需要寻找替代的实验方法来支持我们的研究。不同的研究策略可以用来探索不同的软件工程实践。行动研究可以被看作是一种替代方案,以加强进行重要的实验研究,结果具有很大的价值,同时深入调查软件工程的做法。本文讨论了行动研究在软件工程中的应用。为了更好地解释行动研究的应用,一个实验研究(体内)的调查的主观决策的软件开发人员,有关重构的源代码,以提高源代码质量在分布式软件开发环境中的描述。此外,一些关于如何完成软件工程行动研究的指导补充了讨论。
2013-06-11 cs.SE
Building a Pilot Software Quality-in-Use Benchmark Dataset
Universiti Malaysia Sarawak(马来西亚砂拉越大学)
准备好特定领域的数据集对监督学习方法起着重要的作用。本文提出了一种新的软件使用质量句子数据集。选择了三位专家使用建议的注释方案对数据进行注释。然后在(不匹配消除)过程中核对数据,以减少偏倚。Kappa,k统计量显示一致性水平可接受;专家之间存在中度至实质性一致性。构建的数据可以用于评估情感分析模型中的软件使用质量模型。此外,注释方案可用于扩展当前数据集。
2015-09-18 cs.CL cs.SE
One to More, More to One: Category-Aware Iterative Expert Training for Software Engineering Agents
Alibaba Group(阿里巴巴集团)
针对仓库级软件工程任务在池化强化学习下的类别跷跷板问题,提出类别感知的专家训练与多教师在线策略蒸馏框架,在Pro-618和SWE-bench Multilingual上分别提升5.39和2.78个百分点。
2026-10-30 cs.CL cs.LG cs.SE
A Call for Critically Rethinking and Reforming Data Analysis in Empirical Software Engineering
University of Oulu(奥卢大学);Federal University of Rio de Janeiro(里约热内卢联邦大学);University of Milano-Bicocca(米兰比可卡大学)
本研究通过调查约27,000项实证研究并举办专家研讨会,发现统计方法错误普遍且专家检测能力有限,呼吁对实证软件工程的数据分析进行批判性反思与改革。
2025-01-22 cs.AI cs.DL cs.SE
A Case Study on Model-Based Development of Robotic Systems using MontiArc with Embedded Automata
服务机器人的软件开发本质上是复杂的。即使是单个机器人也需要多个传感器、执行器和软件模块的组合。系统通常由领域专家组开发,很少有软件工程专家。因此,最终的软件系统是在单一平台上解决单一问题的单片程序。我们声称,以模块化的方式对机器人的结构和行为进行建模,可以获得更好的可重用软件。我们报告的研究与结构和行为建模语言MontiArcAutomaton的机器人软件的建模。本研究评估的好处和困难,基于模型的机器人软件开发使用MontiArc-Automaton。我们的研究结果是基于一项调查,与参与者的讨论,以及他们发展行为的关键数字。我们提出的项目,我们的研究,经验教训,以及未来的工作的基础上获得的见解
2014-08-25 cs.SE
Knowledge-Based Multi-Agent Framework for Automated Software Architecture Design
本文提出基于知识的多智能体架构设计(MAAD)框架,利用LLM智能体模拟人类角色,整合系统设计、文献和专家知识,以自动化软件架构设计,推动应用级系统开发的全自动化。
2025-03-26 cs.SE
The Influence of Teamwork Quality on Software Team Performance
传统上,软件质量被认为取决于健全的软件工程和开发方法,如结构化编程和敏捷开发。然而,高质量的软件同样依赖于团队内部的高质量协作。由于软件开发项目的成功率很低(Wateridge,1995; The Standish Group,2009),因此了解软件开发团队中哪些交互特征会显著影响绩效非常重要。Hoegl和Gemuenden(2001)使用六因素团队质量(TWQ)模型报告了团队质量和软件质量之间关系的经验证据。本文扩展了Hoegl和Gemuenden(2001)的工作,目的是找到可能影响软件团队绩效的其他因素。我们引入了三个新的TWQ因素:信任,价值共享和专业知识的协调。使用来自252名团队成员和利益相关者的数据对团队工作质量与团队绩效的关系以及模型的改进进行了检验。结果表明,团队合作质量与团队成员和利益相关者的团队绩效显着相关:TWQ解释了团队成员评分的团队绩效差异的81%和利益相关者评分的61%。本研究显示,团队领导者在达成高品质的软体团队工作时,必须考虑信任、共同价值观与专业知识的协调。
2017-01-22 cs.SE