Towards autonomous normative multi-agent systems for Human-AI software engineering teams
Decision Systems Lab University of Wollongong(伍伦贡大学决策系统实验室);Monash University(莫纳什大学);Macquarie University(麦考瑞大学);University of British Columbia(不列颠哥伦比亚大学)
本文提出自主规范的多智能体系统,通过大型语言模型赋能,实现人机协作的高效软件开发。
2025-12-02 cs.SE
Combining Design Thinking and Software Requirements Engineering to create Human-centered Software-intensive Systems
有效的需求工程是软件密集型开发项目中的一项重要活动。设计思维以人为中心的工作模式被认为是在设计创新系统时补充这些活动的有力方式。研究已经取得了很大的进展,说明了使用需求工程设计思维的好处。然而,如何真正实现两者的结合仍然是一个大问题。在这一章中,我们贡献了一个基于工件的模型,集成了创新的软件密集型系统的设计思维和需求工程。从我们的研究和项目经验,我们建议三个战略,剪裁和整合设计思维和需求工程互补的协同作用。
2021-12-10 cs.SE
Human-Like Summaries from Heterogeneous and Time-Windowed Software Development Artefacts
自动文本摘要在软件工程领域引起了极大的兴趣。总结与软件项目相关的活动是具有挑战性的,(1)因为所涉及的软件工件的数量和异质性,以及(2)因为不清楚开发人员在这样的多文档摘要中寻求什么信息。我们提出了第一个框架,用于总结在给定的时间范围内包含异构数据的多文档软件工件。为了生成类似人类的摘要,我们采用了一系列迭代算法来最小化文本和高维特征向量之间的余弦相似性。第一项研究表明,用户发现自动生成的摘要是最有用的,当它们是使用单词相似性和基于八个最相关的软件人工制品生成的。
2020-04-28 cs.SE
Storytelling in human--centric software engineering research
背景:软件工程是一项人类活动。人们自然会通过讲故事来理解他们的活动和经历。但是,软件工程研究似乎并没有对讲故事进行适当的研究。目的:我们探讨这样一个问题:讲故事对以人为中心的软件工程研究有什么贡献?实验方法:我们定义概念,确定故事类型及其目的,结果和影响,简要回顾以前的文献,确定几个贡献,并提出下一步。研究结果:除其他贡献外,讲故事可以促进数据汇集、数据分析、了解方式、研究成果、实践中的干预措施和宣传,并可以与证据和论点相结合。与所有方法一样,讲故事也会带来风险。这些风险是可以管理的。结论:讲故事为抽象提供了一种潜在的平衡,也是一种在软件工程中保留和尊重人类意义的方法。
2021-04-30 cs.SE
Towards a Human Values Dashboard for Software Development: An Exploratory Study
背景:人们越来越意识到人类价值观的重要性(例如,包容性、隐私性)。然而,没有实用的工具来支持在软件开发过程中集成人的价值。我们认为,一个工具,可以识别人类的价值观,从软件开发的文物,并将它们呈现给不同的软件开发角色可以(部分)解决这个差距。我们把这种工具称为人类价值观仪表板。除此之外,我们对这种工具的理解是有限的。目的:本研究的目的是(1)调查在软件开发过程中使用人类价值仪表板来帮助解决人类价值的可能性,(2)确定使用人类价值仪表板的可能好处,以及(3)从人类价值仪表板中引出从业者的需求。方法:我们进行了一项探索性研究,采访了15名软件从业人员。开发了一个仪表板原型,以支持面试过程。我们运用主题分析法对收集到的数据进行分析。结果:我们的研究发现,人类价值观仪表板对开发团队很有用(例如,项目经理、开发人员、测试人员)。我们的参与者承认开发工件,特别是需求文档和问题讨论,是识别仪表板值的最合适的来源。我们的研究还产生了一组人类价值观仪表板的高级用户需求(例如,它应允许确定项目的价值优先次序)。结论:我们的研究表明,价值观仪表板有可能用于提高人们对价值观的认识,并支持软件开发中基于价值观的决策。今后的工作将侧重于满足要求,并将问题讨论作为仪表板的潜在人工制品。
2021-07-23 cs.SE
Human AI Collaboration in Software Engineering: Lessons Learned from a Hands On Workshop
本文通过分析22名工程师与ChatGPT的三小时实操工作坊,揭示AI从工具转向协作伙伴的收益、局限及有效整合原则。
2023-12-17 cs.SE
Using Machine Learning To Identify Software Weaknesses From Software Requirement Specifications
本研究提出利用机器学习和潜在语义分析映射CWE与PROMISE_exp数据集,从软件需求规格中高效识别软件弱点,并验证SVM与神经网络效果可靠。
2023-08-10 cs.SE
A Study on the Prevalence of Human Values in Software Engineering Publications, 2015-2018
未能在软件中考虑人的价值(例如,平等和公平)可能导致用户不满和负面的社会经济影响。然而,在软件中设计这些价值需要在整个开发生存周期中提供技术和方法支持。本文调查了软件工程(SE)研究在多大程度上考虑了人的价值。我们调查了最近(2015 - 2018)在一些顶级SE会议和期刊上发表的人类价值观的流行程度。我们对社会科学出版物进行分类,根据其与不同价值观的相关性,反对社会科学广泛使用的价值结构。我们的研究结果表明:(a)只有一小部分出版物直接考虑价值,被归类为相关出版物;(b)对于大多数价值,很少或没有发现相关出版物;(c)与SE期刊相比,SE会议中相关出版物的流行率较高。本文分享了这些和其他的见解,激励研究人的价值在软件工程。
2019-07-18 cs.SE
Useful Statistical Methods for Human Factors Research in Software Engineering: A Discussion on Validation with Quantitative Data
在本文中,我们描述了统计验证技术的有用性人为因素调查研究。我们需要调查的多样性的有效性方面时,在人为因素的研究中创建度量,我们认为,在其他领域中使用的统计测试,以获得支持的可靠性和结构效度的调查,也应适用于人为因素的研究在软件工程更频繁。我们还简要介绍了如何应用这些方法(测试-再测试,克朗巴赫的α,探索性因素分析)。
2019-04-04 cs.SE
Fairness Across Fields: Comparing Software Engineering and Human Sciences Perspectives
University of Calgary(卡尔加里大学)
本文比较软件工程与人文科学对公平性的概念化,发现前者侧重形式和统计方法,后者强调结构性不平等与权力关系,为技术伦理发展提供跨学科见解。
2026-03-29 cs.SE
Integrating Human-Centric Approaches into Undergraduate Software Engineering Education: A Scoping Review and Curriculum Analysis in the Australian Context
本文通过 PRISMA-ScR 范围综述识别 HCSE 教学主题与方法,并分析澳大利亚本科软件工程课程,提出与软件工程过程对齐的主题支架建议。
2024-08-08 cs.SE
The Detection of Human Spreadsheet Errors by Humans versus Inspection (Auditing) Software
以前的电子表格检查实验让人类受试者在电子表格中寻找种子错误。在这项研究中,受试者试图在人类开发的电子表格中找到错误,以避免错误播种造成的潜在伪影。将人类受试者的成功率与应用于相同电子表格的电子表格静态分析工具(SSAT)的错误标记成功率进行比较。人为错误检测结果与使用错误播种的研究结果相当。然而,在这项研究中,Excel错误检查和电子表格专业版几乎无法正确标记自然(人为)错误。
2010-09-14 cs.SE
Operationalizing Human Values in Software Engineering: A Survey
人的价值(例如,快乐、隐私和社会正义)是一个人或一个社会认为重要的东西。在软件密集型系统中无法解决这些问题可能导致许多不希望的后果(例如,(经济损失)对个人和社会的影响。各种解决方案(例如,方法论、技术)的开发是为了帮助“在软件中实现价值”。最终目标是确保构建软件(更好地)反映和尊重人类价值观。在本调查中,“操作化价值”是指识别人类价值并将其转换为可访问和具体概念的过程,以便它们可以在软件中实现,验证,验证和测量。本文提供了一个深入的理解的研究景观在软件工程的操作价值,涵盖51个主要的研究。它还提出了一个分析和分类的51个解决方案的操作价值在软件工程。我们的调查显示,大多数解决方案都试图在软件开发生存周期的早期阶段(需求和设计)帮助实现价值。然而,后期阶段(实现和测试)和软件开发的其他方面(例如,“团队合作”需要充分考虑。我们概述了研究和实践的影响,并确定了开放的问题和未来的研究方向,以推进这一领域。
2022-07-26 cs.SE
Human-In-The-Loop Software Development Agents: Challenges and Future Directions
本文针对LLM驱动的多智能体软件开发趋势,介绍Atlassian部署人在环路智能体处理Jira工作项的评估实践,指出单元测试成本高、LLM评估不稳定两大挑战,并提出改进相关评估框架的未来研究方向。
2025-04-25 cs.SE
Analysis of Software Engineering Practices in General Software and Machine Learning Startups
本研究通过系统文献综述对比了ML初创企业与通用软件初创企业在软件开发生命周期五个阶段的软件工程实践差异,发现ML模型的非确定性带来了额外挑战,需采用不同策略保障产品质量。
2023-04-04 cs.SE
How do software practitioners perceive human-centric defects?
本研究通过调查和访谈软件从业者,发现以人为中心的缺陷(HCDs)管理存在认知不足和流程缺口,并提出改进反馈、分类和自动化以提升其管理。
2024-02-05 cs.SE
Exploring Creativity in Human-Human-LLM Collaborative Software Design
University of Southampton(南安普顿大学);Reykjavik University(雷克雅未克大学);Pontifícia Universidade do Rio Grande do Sul(南里奥格兰得天主教大学);University of California, Irvine(加州大学尔湾分校)
研究探讨了在软件设计任务中人类与LLM协作时创造力的产生与影响,发现人类设计师主导创造力,LLM提供新想法但可能阻碍创造力,强调人类洞察力的重要性。
2026-04-27 cs.SE
The Impact of Human Aspects on the Interactions Between Software Developers and End-Users in Software Engineering: A Systematic Literature Review
本文通过遵循Kitchenham指南、检索六个数据库并结合滚雪球法,对46项一手研究进行SLR,系统梳理影响开发者与用户交互的人为因素、关系、正负影响及缓解策略,并提出研究建议。
2024-05-08 cs.SE
Measuring the Quality of B Abstract Machines with ISO/IEC 25010
B方法通过将软件的设计指定为抽象机并形式化地验证抽象机的正确性来促进软件的开发。B抽象机的质量会显著影响最终软件产品的质量。本文基于国际上最新的软件工程软件质量评价标准之一ISO/IEC 25010,提出了一套B抽象机质量的度量准则。这些标准使用许多通用且与领域无关的方程和模型检验技术来评估抽象机器,以便抽象机器的质量可以量化为向量。所提出的标准被实施为B模型质量评估器,并使用一些例子来解释和证明。
2020-03-04 cs.SE
Prediction of Human Performance Capability during Software Development using Classification
人力资本的质量是软件企业在知识经济时代保持竞争优势的关键。软件公司将优秀的人才视为业务优势。他们越来越认识到有效的人才和业务成功之间的关键联系。然而,软件公司遭受高流动率往往很难招募到合适的人才。迫切需要开发一种人员选拔机制,以找到最适合其软件项目的人才。数据采掘技术保证了从历史项目中探索信息,项目经理可以根据这些信息做出生产高质量软件的决策。本研究的目的是填补空白,开发一个数据采掘框架的基础上,决策树和关联规则重新集中在人员选拔标准。以一家软件公司为例进行了实证研究,以支持他们对项目成员的聘用决策。结果表明,有必要重新关注质量目标的选择标准。通过整合软件项目数据库中的知识和作者的研究技术,从数据采掘模型中获得的模式识别出更好的选择标准。
2014-02-11 cs.SE
Robust Machine Learning in Critical Care -- Software Engineering and Medical Perspectives
在临床实践中使用机器学习对这些系统的可解释性、可靠性、可复制性和鲁棒性提出了严格的要求。因此,开发用于监测危重患者的可靠软件需要医生和软件工程师之间的密切合作。然而,这两个不同的学科需要找到自己的研究视角,以有助于医学和软件工程领域。在本文中,我们解决的问题是如何建立一个合作的地方,软件工程和医学满足设计强大的机器学习系统用于病人护理。我们描述了我们如何设计的软件系统,用于监测颈动脉内膜切除术下的患者,特别是集中在研究团队的知识建设的过程。我们的研究结果显示了在建立这样的合作时应该考虑什么,它是如何随着时间的推移而发展的,以及基于它可以构建什么样的系统。我们得出结论,主要的挑战是找到一个好的研究团队,其中不同的能力致力于一个共同的目标。
2021-03-15 cs.SE
A Classical Fuzzy Approach for Software Effort Estimation on Machine Learning Technique
软件成本估算的可靠性,生产力和开发工作是一个具有挑战性和繁重的任务。这激发了软件社区提供急需的推力,并深入研究软件工作量估计,以发展复杂的方法。类比估算是软件工作量估算领域的一种有效方法。然而,用于通过类比来估计软件工作量的方法无法以明确和精确的方式处理分类数据。本文提出了一种新的方法来估计软件工作量的项目表示的分类或数值数据,使用类比推理和模糊方法。现有的历史数据集,用模糊逻辑分析,产生准确的结果相比,数据集分析与早期的方法。
2011-12-16 cs.SE
Software Logging for Machine Learning
系统日志在软件密集型系统中执行关键功能,因为日志记录系统的状态和系统中重要时间点的重要事件。不幸的是,日志条目通常以临时、非结构化和不协调的方式创建,限制了它们对分析和机器学习的有用性。在本文中,我们提出了当代方法的主要挑战,以生成和存储系统日志数据的大型,复杂的,软件密集型系统的基础上,在一个世界领先的电信公司的深入的案例研究。其次,我们提出了一个系统的和结构化的方法来生成日志数据,不遭受上述挑战,并优化用于机器学习。第三,我们根据专家访谈对该方法进行了验证,确认该方法解决了已确定的挑战和问题。
2020-01-24 cs.SE
The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software Refactoring
重构是在不改变软件外部行为的情况下改变软件内部结构以提高其质量的过程。经验研究一再表明,重构对软件系统的可理解性和可维护性有积极的影响。然而,在执行重构活动之前,开发人员需要识别重构机会。目前,重构机会识别严重依赖于开发人员的专业知识和直觉。在本文中,我们调查的有效性机器学习算法在预测软件重构。更具体地说,我们训练了六种不同的机器学习算法(即,逻辑回归,朴素贝叶斯,支持向量机,决策树,随机森林和神经网络),数据集包含来自Apache,F-Droid和GitHub生态系统的11,149个真实项目的超过200万次重构。结果模型预测了类、方法和变量级别的20种不同重构,准确率通常高于90%。我们的研究结果表明,(i)随机森林是预测软件重构的最佳模型,(ii)过程和所有权度量似乎在创建更好的模型中发挥了至关重要的作用,(iii)模型在不同的环境中推广良好。
2020-09-11 cs.SE
A Cognitive and Machine Learning-Based Software Development Paradigm Supported by Context
认知和机器学习(ML)使能系统的使用的进步推动了对新方法和工具的追求,以支持支持软件开发人员执行他们的任务。首先,由于软件开发是一项复杂和动态的活动,这些任务高度依赖于软件项目及其上下文的特征,开发人员需要基于任务上下文的信息和指导方面的全面支持。其次,缺乏基于会话引导代理的方法,这些方法考虑了注意力和记忆力等认知方面。第三,还缺乏利用历史隐式或隐性数据来推断关于项目任务的新知识的技术,诸如相关任务、任务专家、任务完成和警告所需的相关信息,以及过程的导航方面,诸如接下来执行什么任务和最佳任务排序。基于这些挑战,本文介绍了一种新的模式,人机软件支持的背景下,认知辅助,和机器学习,并简要介绍了正在进行的研究活动,以实现这一模式。该研究利用了上下文感知软件流程、聊天机器人等认知计算和推荐系统等机器学习中提供的紧急方法之间的协同作用。这些新颖的范例有可能改变软件开发的方式,允许开发人员在参与项目时实时接收有价值的信息和指导。
2021-02-10 cs.SE
Towards Automated Governance: A DSL for Human-Agent Collaboration in Software Projects
本文提出一种领域特定语言(DSL),用于定义和强制执行涉及人类与AI智能体的软件项目中的治理政策,旨在实现更健壮、可适应且自动化的治理,以促进开源软件等项目的有效协作。
2025-10-16 cs.SE
The Influence of Human Aspects on Requirements Engineering-related Activities: Software Practitioners Perspective
需求工程(RE)相关的活动需要在软件工程(SE)中的各种角色之间进行高度协作,例如需求工程师,利益相关者,开发人员等。他们的人口统计,观点,对技术的理解,工作风格,沟通和协作能力使RE高度依赖于人。确定动机、领域知识、沟通技巧、个性、情感、文化等“人的方面”如何影响可再生能源相关活动,将有助于我们从总体上改善可再生能源和可持续能源。本研究的目的是更好地了解当前行业的角度对人的方面的影响,对RE相关的活动,特别是专注于动机和个性,针对软件从业人员参与RE相关的活动。我们的研究结果表明,软件从业者认为动机,领域知识,态度,沟通技巧和个性非常重要的人的方面时,参与RE相关的活动。一组因素被确定为软件从业者的动机因素时,参与RE相关的活动,并确定了重要的个性特征时,参与RE。我们还确定了因素,使个人参与RE相关的活动时,效率较低,并获得了初步的想法,测量个人的性能时,参与RE。我们的研究结果表明,各个领域需要更多的调查,我们总结了一套关键的建议,以进一步研究。
2022-06-06 cs.SE
The Impact of Considering Human Values during Requirements Engineering Activities
人的价值观,或者人们在生活中认为重要的东西,比如自由、公平和社会责任,在软件开发过程中往往被忽视和忽视。忽视价值观可能导致软件中的价值观违规,从而导致财务损失、声誉受损以及广泛的社会和法律影响。然而,在软件中嵌入人类价值不仅是不平凡的,而且通常是一个不明确的过程。早在需求工程(RE)活动期间就开始,保证了符合目的和质量的软件产品符合人类价值观。但是,在早期的可再生能源活动中明确考虑人类价值观的影响是什么?为了回答这个问题,我们进行了一项基于Coco的调查,其中56名软件从业人员将需求分析置于一个针对无家可归者的拟议移动应用程序的背景下,并相应地提出了充满价值的软件功能。对提出的特征进行了定性分析。结果表明,明确的价值观的考虑可以帮助从业者确定适用的价值观,他们开发的功能相关联的目的,认为开箱即用,并建立软件功能和人类价值观之间的联系。最后,根据本研究的结果和经验,我们提出了一个基于网络的价值观启发过程-一个简单的四步外卖作为本研究的实际意义。
2021-11-30 cs.SE
The Who, What, How of Software Engineering Research: A Socio-Technical Framework
软件工程是一项社会技术工作,虽然我们的许多贡献集中在技术方面,但人类利益相关者(如软件开发人员)直接受到我们的研究和工具创新的影响,并从中受益。在本文中,我们质疑我们的研究有多少涉及人类和社会问题,并探讨我们在研究设计中研究人类和社会方面的程度。为了回答这些问题,我们开发了一个社会技术研究框架,以捕捉研究的主要受益者(谁),产生的主要类型的研究贡献(什么),以及研究中使用的研究策略(我们如何在方法上提供相关的结果)。我们使用这个Who-What-How框架分析了来自两个被广泛引用的出版场所的151篇论文--国际软件工程会议的主要技术跟踪,以及Springer的经验软件工程杂志--以评估这项已发表的研究在多大程度上明确考虑了人类方面。我们发现,尽管这些论文中的大多数声称所包含的研究应该使人类利益相关者受益,但大多数论文都专注于技术贡献,而没有让人类参与他们的研究。虽然我们的分析范围是两个场地,我们的研究结果表明,需要更多样化和三角的研究策略。特别是,有必要制定战略,旨在更深入地了解软件开发实践的人类和社会方面,以平衡技术创新的设计和评估。我们建议,该框架应在未来的研究设计中使用,以推动软件工程研究明确包括人类和社会的关注,在他们的设计,并提高我们的研究人类利益相关者的相关性。
2020-05-26 cs.SE
Teaching Machine Learning to Software Engineers
Carleton University(卡尔顿大学)
针对软件工程课程缺乏AI/ML系统构建训练的问题,通过主题清单、课程映射和教师调查,提出将高优先级主题嵌入现有SE课程的指南。
2026-06-15 cs.SE
Challenges, Adaptations, and Fringe Benefits of Conducting Software Engineering Research with Human Participants during the COVID-19 Pandemic
该研究通过调查89名软件工程研究人员并辅以访谈,揭示了疫情期间以人为参与者开展研究面临的挑战、适应措施及意外收益,并为混合环境下有效开展远程研究提出建议。
2024-01-11 cs.SE
Human-competitive Patches in Automatic Program Repair with Repairnator
修理工是个机器人。它不断监控在持续集成开源软件过程中发现的软件错误,并尝试自动修复这些错误。如果它成功合成了一个有效的补丁,Repairnator会向人类开发人员推荐这个补丁,伪装成一个假的人类身份。到目前为止,Repairnator已经能够生成5个补丁,这些补丁被人类开发人员接受并永久合并到代码库中。这是软件工程中程序自动修复研究中人类竞争力的一个里程碑。
2018-10-13 cs.SE
Adaptive Automation: Leveraging Machine Learning to Support Uninterrupted Automated Testing of Software Applications
使用自动化软件工具检查软件应用程序的适用性已成为大多数组织的一个重要因素,无论他们是生产内部软件还是简单地定制现成的软件应用程序供内部使用。随着软件解决方案变得越来越复杂,行业越来越依赖于软件自动化工具,但可用软件自动化工具的脆弱性限制了它们的有效性。公司在获得和实现自动化软件方面投入了大量资金,但当维护有效的自动化测试套件的成本超过手动测试所花费的成本和时间时,大多数工具都无法交付。当前一代软件自动化工具的一个缺点是,它们不能在没有频繁(和时间昂贵)的手动干预的情况下适应意外的修改和障碍。这些问题在行业从业者中是公认的,但目前这一代工具都没有利用机器学习和人工智能的进步来解决这些问题。本文提出了一个框架解决方案,利用机器学习的概念,即模糊匹配和错误恢复。建议的解决方案应用自适应技术来从意外的障碍中恢复,否则这些障碍会阻止脚本继续执行。恢复细节在报告中呈现给用户,可以分析该报告以确定恢复程序是否可接受,并且框架将根据用户的决定调整未来的运行。使用这个框架,从业者可以在没有人为干预的情况下运行自动化套装,同时最大限度地降低了时间表延迟的风险。
2015-08-04 cs.SE
Quality Characteristics of a Software Platform for Human-AI Teaming in Smart Manufacturing
随着支持AI的软件系统在智能制造中变得越来越普遍,它们的角色从被动转向主动,为机器操作员提供特定于上下文的支持。在一个国际研究项目的背景下,我们开发了一个基于人工智能的软件平台,该平台将促进人类操作员和制造机器之间的协作。我们与潜在软件平台的利益相关者进行了14次结构化访谈,以确定选定的质量特征与智能制造中人工智能团队的个体相关性。这些特征包括ISO 25010:2011软件质量标准和AI特定的质量特征,如可信性,可解释性和可解释性。受访者认为可信性、功能适用性、可靠性和安全性是这种情况下最重要的质量特征,而可移植性、兼容性和可维护性是最不重要的。此外,我们观察到协议的相关性,具有相同的作用的受访者之间的质量特征。另一方面,每个质量特征的相关性取决于预期软件平台的具体用例。受访者还被问及与智能制造中的人工智能合作相关的关键成功因素。他们将改善生产周期、提高操作员效率、减少废料和降低人体工程学风险确定为关键成功标准。在本文中,我们还讨论了度量这些质量特性的实现,我们打算在未来的软件平台的操作过程中操作和监控的度量。
2022-05-31 cs.SE
A Perspective on the Role of Human Behaviors in Software Development: Voice and Silence
本研究拟通过问卷调查与结构方程模型,实证检验工作中发声与沉默理论在软件开发团队中的适用性。
2023-04-25 cs.SE
Human Factors in Software Reliability Engineering
在本文中,我们提出了我们的愿景,人因工程集成到软件开发过程中。这种方法的目的是提高软件的质量,并以系统的方式处理人为错误。
2015-03-12 cs.HC cs.SE
Predicting Software Defects through SVM: An Empirical Approach
软件缺陷预测是软件预防性维护的一个重要方面。许多技术已经被用来通过缺陷预测来提高软件质量。本文介绍了一种基于代码气味的机器学习算法--支持向量机(SVM)的缺陷预测方法。基于支持向量机的缺陷预测模型被用于预测Eclipse软件后续版本中的缺陷。结果表明气味在预测软件缺陷中的作用。结果可以进一步用作基线,以进一步研究气味在预测缺陷中的作用。
2018-03-08 cs.SE
Human Factors in Agile Software Development
通过四年的学生基于敏捷软件开发(ASD)过程的实验,我们对敏捷方法论中的人的因素有了深刻的理解。我们设计了一个敏捷项目管理工具-HASE协作开发平台,支持400多名学生自组织成80个团队来实践ASD。本文在实验、仿真和分析的基础上,提出了一系列的解决方案和见解,包括:1)一种基于目标网的ASD过程目标和需求管理方法; 2)一种新的基于简单多Agent实时(Simple Multi-Agent Real-Time,SMART)的ASD过程智能任务分配方法; 3)基于模糊认知图(FCM)的方法来增强ASD过程的情绪和士气管理,4)第一次对ASD过程中的人为因素进行大规模深入的实证见解,这些因素尚未被现有研究很好地研究,第一个将ASD过程识别为利用人类努力来执行计算机不擅长解决的任务的人类计算系统。另一方面,计算机可以帮助人类在ASD过程中做出决策。
2015-02-14 cs.SE
Software Defect Prediction Using Support Vector Machine
软件缺陷预测是软件开发过程中的一项重要任务,它可以帮助管理人员识别出最易出现缺陷的模块。从而降低了测试成本,有效地分配了测试资源。许多分类方法可以用来确定软件是否有缺陷。由于支持向量机在不同的数据集和参数设置下的不稳定性,使得支持向量机在这类问题中的应用并不广泛。影响精度的主要参数是核函数的选择。核函数的使用在以前的论文中没有得到深入的研究。因此,本研究以六种不同的核函数来检验支持向量机的效能与准确度。来自PROMISE项目的各种公共数据集实证验证了我们的假设。结果表明,没有核函数可以在不同的实验设置提供稳定的性能。此外,使用PCA作为特征约简算法在某些数据集上显示出轻微的准确性提高。
2022-09-10 cs.SE
Model-Assisted and Human-Guided: Perceptions and Practices of Software Professionals Using LLMs for Coding
基于对131名软件从业者的全球调查,本研究揭示了大语言模型在编码任务中的实际应用、感知益处与风险,并指出开发者普遍将其视为辅助工具,为负责任采纳提供了实践视角。
2025-10-10 cs.SE
Software Effort Estimation Accuracy Prediction of Machine Learning Techniques: A Systematic Performance Evaluation
软件工作量估计的准确性是有效计划、控制和在预算和进度内交付成功软件项目的关键因素。高估和低估都是未来软件开发的关键挑战,因此,软件工作量估计(SEE)的准确性是一个持续的需求。研究人员和从业人员正在努力确定哪种机器学习估计技术基于评估措施、数据集和其他相关属性提供更准确的结果。相关研究的作者通常不知道以前发表的机器学习工作量估计技术的结果。本研究的主要目的是帮助研究人员了解哪种机器学习技术在软件开发中产生有前途的工作量估计精度预测。在本文中,性能的机器学习集成技术的研究与独奏技术的基础上,两个最常用的准确性评价指标。我们使用了Kitchenham和Charters提出的系统性文献综述方法。这包括搜索最相关的论文,应用质量评估标准,提取数据和绘制结果。我们评估了28个选定研究(14个集合,14个单独)的最先进的准确性性能,使用平均相对误差幅度(MMRE)和PRED(25)作为一组可靠的准确性指标,用于两种技术之间的准确性性能评估,以报告本研究中提出的研究问题。我们发现,机器学习技术是最常见的集成努力估计(ESTA)技术的建设。本研究的结果显示,与单技术相比,双技术通常产生有希望的估计精度。
2021-01-26 cs.SE
Continuous Experimentation and Human Factors An Exploratory Study
本文通过探索性定性研究,考察如何在持续软件实验中整合人因,识别其特征、实践挑战及管理最佳实践。
2023-11-01 cs.SE
How are Diverse End-user Human-centric Issues Discussed on GitHub?
许多软件系统无法满足社会上不同最终用户的需求,并且容易产生问题,例如可访问性和可用性问题。其中一些问题(部分)源于在软件开发过程中未能考虑不同最终用户的特性,限制和能力。我们把这类问题称为以人为中心的问题。尽管它们很重要,但对开发人员遇到的以人为中心的问题类型的理解有限。深入了解这些以人为中心的问题是设计软件系统,更好地满足其不同的最终用户的需求。本文旨在为软件开发和研究社区提供见解,其中以人为本的问题是GitHub上开发人员讨论的主题。我们进行了一项实证研究,从12个不同的项目中提取并手动分析了1,691条问题评论,从小型到大型项目,包括为有挑战性的最终用户设计的项目,例如,视障人士和有阅读障碍的人士。我们的分析表明,开发人员讨论了八类以人为中心的问题。这些包括包容性,隐私和安全性,兼容性,位置和语言,偏好,满意度,情感方面和可访问性。在我们的研究结果的指导下,我们强调了一些影响和未来可能的路径,以进一步理解和纳入以人为本的问题,在软件开发,能够设计软件,满足不同的最终用户在社会上的需求。
2022-01-15 cs.SE
Machine Learning for Software Engineering: A Systematic Mapping
Johannes Kepler University(约翰开普勒大学);Software Competence Center Hagenberg GmbH(哈根伯格软件能力中心有限公司)
内容:软件开发行业正在迅速采用机器学习,将现代软件系统转变为高度智能和自学习系统。然而,机器学习用于改善软件工程生存周期本身的全部潜力还有待发现,即,机器学习在多大程度上可以帮助减少软件工程的工作量/复杂性并提高最终软件系统的质量。到目前为止,还没有一项全面的研究来探索当前在软件工程生存周期阶段采用机器学习的最新技术水平。目的:本文解决了上述问题,旨在介绍机器学习在软件工程中越来越多的应用。方法:我们遵循经验软件工程的标准指南和原则,对机器学习在软件工程中的应用进行了系统的映射研究。结果如下:本研究介绍了一个机器学习的软件工程(MLSE)分类法的国家的最先进的机器学习技术,根据其适用于不同的软件工程生存周期阶段。总体而言,本研究严格选择并分析了227篇文章。结论:从所选的文章中,我们探讨了各种方面,这些方面应该有助于学术界和从业者了解在软件工程项目中采用机器学习技术的潜力。
2020-05-27 cs.LG cs.SE
A Critical Review of "Automatic Patch Generation Learned from Human-Written Patches": Essay on the Problem Statement and the Evaluation of Automatic Software Repair
在ICSE'2013上,有史以来第一次专门用于自动程序修复的会议。在这次会议上,Kim等人介绍了PAR,这是一种用于修复Java bug的基于模板的新方法。我们强烈反对这篇文章的主要观点。我们的评论有两个目标。首先,我们的目的是解释为什么我们不同意金和同事,为什么这种分歧背后的原因是重要的自动软件修复的研究一般。其次,我们的目标是通过澄清自动软件修复背后的基本思想来为该领域做出贡献。特别讨论了软件自动修复的主要评价标准:可理解性、正确性和完整性。我们表明,根据如何设置修复方案,评估目标可能是矛盾的。最后,我们讨论了修复的可接受性的性质和它的关系,软件正确性的概念。
2014-08-09 cs.SE
An Autonomy Aware Metamodel for Human AI Collaboration in Software Engineering
Tampere University(坦佩雷大学);University of Jyväskylä(于韦斯屈莱大学)
本文提出一个自主性感知元模型,将自主性视为情境相关的权威分配,通过四个维度支持动态权威分配,为AI优先的软件工程方法奠定概念基础。
2026-09-09 cs.SE
Human and Machine: How Software Engineers Perceive and Engage with AI-Assisted Code Reviews Compared to Their Peers
该研究通过访谈20名软件工程师,对比分析了LLM辅助代码评审与人类同行评审在认知、情感和行为参与维度上的差异,揭示了LLM评审降低情绪调节需求但可能增加认知负荷,且其反馈采纳受信任和上下文缺失限制,为AI与人类在软件工程中的协作提供了见解。
2025-01-03 cs.SE
Can AI Serve as a Substitute for Human Subjects in Software Engineering Research?
该论文探讨了利用 AI 和 LLMs 生成合成文本作为软件工程定性数据替代来源的潜力,提出了基于角色的提示等方法自动化数据收集,并指出 AI 与人类数据结合的整合方法效果最佳。
2023-11-18 cs.SE
Software Engineering in the Agent Era From Trustworthy Change to Human Agent Software Organizations
Faculty of Computing Harbin Institute of Technology(哈尔滨工业大学计算机学院)
本文针对智能体时代软件工程中可扩展执行的管控问题,提出含可信变更、责任拓扑、人机单元的框架,明确权威为分类轴并推导相关影响,贡献理论构建与操作化方法。
2026-09-07 cs.SE
Assessing Quantum Extreme Learning Machines for Software Testing in Practice
本文通过三个工业软件测试案例评估量子噪声对QELM的影响,发现噪声显著降低性能并增大不确定性,且现有错误缓解方法缺乏跨任务和规模的一致性。
2025-09-27 cs.SE
Impostor Phenomenon as Human Debt: A Challenge to the Future of Software Engineering
Pontifical Catholic University of Rio de Janeiro(里约热内卢天主教大学);University of Bari(巴里大学);Eindhoven University of Technology(埃因霍温理工大学)
本文将冒名现象视为人类债务,探讨其对软件工程未来的影响,并提出通过文化重构和盟友关系来缓解这一问题。
2026-02-14 cs.SE
Issue Auto-Assignment in Software Projects with Machine Learning Techniques
通常,软件项目中的经理或技术负责人手动分配问题。随着问题描述更加详细,此任务可能会变得更加复杂。这种复杂性也可能使该过程更容易出错(误分配)和耗时。在文献中,许多研究旨在通过使用机器学习策略来解决这个问题。虽然没有适用于所有公司的特定解决方案,但经验报告可用于指导工业自动分配项目的选择。本文介绍了一个全球性的电子公司,旨在尽量减少所花费的时间和错误,可能会出现在问题分配过程中进行的工业倡议。作为主要贡献,我们提出了一个文献综述,工业报告比较不同的算法,并在项目中吸取的经验教训。
2021-04-05 cs.SE
A Viable Paradigm of Software Automation: Iterative End-to-End Automated Software Development
本文提出AutoSW范式,通过AI系统作为人类伙伴,实现端到端自动化软件开发,展示了其在各类案例中的可行性。
2025-11-23 cs.SE
The human side of Software Engineering Teams: an investigation of contemporary challenges
最近有人呼吁研究软件工程中的人性化方面及其对生产力、开发人员幸福感和项目成功等各种因素的影响。对软件工程团队中哪些挑战最常见的分析仍然缺失。我们的目标是提供一个理论的出发点有关人类的挑战和他们的原因在软件工程。我们建立了一组可重用的挑战,并开始调查团队虚拟化的影响。虚拟团队通常使用数字通信,由不同国籍的成员组成。我们设计了一个调查工具,并要求受访者评估一组挑战的频率和重要性,这些挑战在“团队内部”以及“团队和客户之间”的背景下分开,从以前的经验工作,博客文章和试点调查反馈中编译。对于团队挑战,我们询问是否已采取缓解措施。受访者还被要求提供有关其团队设置的信息。该调查还衡量了施瓦茨的人类价值观。最后,受访者被问及他们的工作场所是否存在其他挑战。我们报告了从192名受访者获得的结果。我们提出了一系列的挑战,考虑到调查反馈,并介绍了两类挑战:“人际”和“自我”。我们没有发现人类价值观与挑战之间存在联系的证据。我们发现,团队中不同国籍的人数与某些挑战之间存在一些重要联系,与只有一个国籍或超过三个国籍的团队相比,如果有2-3个不同国籍的人,那么发生的频率和关键挑战就不那么频繁。更高程度的虚拟化似乎会增加一些人类挑战的频率。
2022-01-31 cs.SE