How does Object-Oriented Code Refactoring Influence Software Quality? Research Landscape and Challenges
软件重构旨在提高软件质量和开发人员的生产力。在过去的二十年里,已经进行了大量的实证研究,调查重构活动对软件质量的影响。目的:本研究旨在对现有的面向对象代码重构活动对软件质量属性影响的实证研究进行全面系统的映射研究。方法:我们遵循多阶段审查过程,选择了截至2017年12月发表的142项主要研究。根据几个方面对选定的初步研究进行进一步分类,以回答为这项工作定义的研究问题。此外,本研究亦利用投票统计法,将实证结果与原始研究的分析结果结合起来。结果如下:研究结果表明,在学术环境中进行的研究发现,重构对软件质量的积极影响比在行业中进行的研究。一般来说,重构活动导致所有质量属性的改善或降低,除了内聚性,复杂性,继承性,故障倾向和功耗属性。此外,个别的重构活动对主要研究中探索的大多数质量属性有不同的影响,这表明重构并不总是改善所有的质量属性。结论:本研究指出了几个需要进一步调查的开放问题,例如,缺乏工业验证,重构活动覆盖面较小,工具支持有限等。
2019-08-15 cs.SE
Attributes of a Great Requirements Engineer
本研究针对需求工程领域缺乏优秀从业者特质研究的空白,通过问卷与访谈识别出22项特质及38种提升策略,整理为特质图谱与桑基图,助力从业者理解需求工程师的角色职责。
2024-11-01 cs.SE
A Game of Attribute Decomposition for Software Architecture Design
属性驱动的软件体系结构设计旨在通过考虑软件的质量属性来提供决策支持。这个过程中的一个中心问题是:什么架构设计最能满足期望的软件需求?为了回答这个问题,系统设计者需要在几个潜在冲突的质量属性之间进行权衡。这种决定通常是临时性的,在很大程度上依赖于经验。我们提出了一个数学方法来解决这个问题。博弈论自然提供了基本的语言:参与者代表需求,策略涉及在参与者之间建立联盟。通过这种方式,我们提出了一种新的模型,称为分解游戏,属性驱动的设计。基于内聚和扩展自由的概念,我们提出了它的解的概念,并证明了解总是存在的。然后,我们研究了获得解决方案的计算复杂性。博弈模型和算法可以作为一个通用的框架,为软件体系结构设计提供有用的指导。我们目前我们的结果,通过运行的例子和案例研究,在现实生活中的软件项目。
2015-08-12 cs.GT cs.SE
Quantum Computing Platforms: Assessing the Impact on Quality Attributes and SDLC Activities
实用的量子计算正在迅速成为现实。为了利用量子计算机在软件应用中的真正潜力,需要从软件工程(SE)的角度深入了解量子计算平台(QCP)的所有这些特性。对复制、删除、量子比特状态传输的限制,以及对量子算法的严格依赖,这些都是QCP特征中对构建量子软件有重要意义的例子。因此,开发量子软件需要软件工程师思维的范式转变。本文介绍了从SE的角度来看,从国家的最先进的QCP的深入研究,今天可用的主要结果。我们提出的主要贡献包括:i)提出了一个通用架构的QCP,ii)提出了一个编程模型,开发量子软件,iii)确定架构上的显着特点的QCP,和\textbf{iv)}确定这些特点的影响,对各种质量属性(QA)和软件开发生存周期(SDLC)的活动。我们表明,QCP的性质,使他们有用的主要是在专门的应用领域,如科学计算。除了性能和可伸缩性,大多数其他QA(例如,可维护性、可测试性和可靠性)受到QCP不同特性的不利影响。
2021-04-29 cs.SE
MetricHaven -- More Than 23,000 Metrics for Measuring Quality Attributes of Software Product Lines
可变性感知度量被设计用于度量软件产品线的定性方面。正如我们在先前的SLR \cite{El-SharkawyYamagishi-EichlerSchmid19}中所确定的,已经存在许多单独解决代码或可变性的度量,而对两者的组合的研究较少。MetricHaven填补了这一空白,因为它广泛支持将来自代码文件和可变性模型的信息组合在一起。此外,我们还实现了完善的单一系统指标与新颖的可变性感知指标的组合,超越现有的可变性感知指标。我们的工具支持最突出的单系统和可变性感知代码度量。我们为已经实施的指标提供配置支持,导致23,342个指标变化。此外,我们提出了一个抽象的语法树MetricHaven开发,允许实现额外的代码指标。工具:https://github.com/KernelHaven/MetricHaven视频:https://youtu.be/vPEmD5Sr6gM
2021-10-19 cs.SE
Attributes to Support the Formulation of Practically Relevant Research Problems in Software Engineering
University of Bari(巴里大学);Blekinge Institute of Technology and fortiss(布莱金厄理工学院与fortiss);Blekinge Institute of Technology(布莱金厄理工学院);M3S, University of Oulu(奥卢大学M3S);Institute of Information Systems Engineering (TU Wien)(维也纳工业大学信息系统工程研究所);Western Norway University of Applied Sciences(西挪威应用科学大学);University of Rome "Tor Vergata"(罗马第二大学)
本文通过研讨会评估了七个属性在制定实际相关软件工程研究问题中的重要性,并提出了改进方法。
2025-12-14 cs.SE
Towards Better Summarizing Bug Reports with Crowdsourcing Elicited Attributes
近年来,在软件维护中,解决大量错误报告的需求不断增长。为了减少测试人员/开发人员阅读错误报告的时间,错误报告摘要的任务在文献中吸引了大量的研究工作。然而,没有系统的分析已经进行了属性的建设,这严重影响了监督算法的性能缺陷报告摘要。在这项研究中,我们首先进行了一项调查,以揭示现有的方法在挖掘软件仓库的属性建设。在此基础上,提出了一种从众包数据中推断新的有效属性的方法Crowd-Attribute,并开发了一个新的工具Crowdsourcing软件工程平台。利用Crowd-Attribute,我们成功地构造了11个新的属性,并提出了一个新的监督算法,称为Logistic Regression with Crowdsourced Attributes(LRCA)。为了评估LRCA的有效性,我们构建了一系列包含105,177个错误报告的大规模数据集。在包含36个人工标注错误报告的公共数据集SDS和新的大规模数据集上的实验表明,LRCA可以始终优于最先进的错误报告摘要算法。
2018-09-29 cs.SE
Quality Attributes in Practice: Contemporary Data
众所周知,软件过程会影响最终产品的质量。然而,这种影响发生的具体方式仍然是未知的,并通过轶事报道。为了更好地了解这种关系,去年进行了一项非常大的调查,来自21个国家的100多名软件开发人员和工程师完成了调查。我们使用软件开发人员和工程师估计的满意客户的百分比作为主要因变量。结果证明了一些有趣的模式,比如客户更满意的质量属性似乎是功能性的,架构风格可能对质量没有显着影响,敏捷方法可能会让客户更快乐,大公司和更短的项目似乎会产生更好的产品。
2016-02-23 cs.SE
Personality Profiles of Software Engineers and Their Software Quality Preferences
软件工程(SE)中与人的方面相关的研究已经从不同的角度进行。这些观点包括研究软件生存周期不同阶段的人的因素,软件开发中团队绩效的影响,一个人格特质如何适合一个特定的任务,以及其他一些杂项问题。这项研究工作的目的是建立巴基斯坦的软件工程师使用迈尔斯-布里格斯类型指标(MBTI)仪器的个性概况。在这项调查中,我们收集了110名软件工程师的个性特征。此外,还收集了他们对软件质量属性的偏好。研究分析表明,最突出的人格类型是内向、敏感、思考和判断的组合。调查结果表明,大多数软件工程师认为可用性和功能性是最重要的软件质量属性。
2015-11-13 cs.SE
Digital Sovereignty as a Quality Attribute for Software Architectures
University of Southern Denmark(南丹麦大学);University of Technology Sydney(悉尼科技大学);Accenture(埃森哲)
本文分析数字主权作为云计算和欧盟政策框架下软件架构的质量属性,证明其可度量、可验证,并涉及权衡和基于场景的分析方法。
2026-07-01 cs.CY cs.SE
On verification of software components
利用第三方软件组件开发新的系统成为当今许多组织中有些不利的方法。这种不情愿主要是由于缺乏支持来验证软件组件的质量属性,以避免与系统要求的潜在不匹配。本文提出了一种方法来克服这个问题,通过提供一个工具支持,检查组件的兼容性,由开发人员提供的规范。因此,可以检查组件的兼容性,开发人员可以在将组件集成到系统之前验证组件是否符合其质量属性。
2012-10-14 cs.SE
Many-Objective Optimization of Non-Functional Attributes based on Refactoring of Software Models
该研究提出一种基于NSGA-II遗传算法的软件模型多目标重构优化方法,兼顾性能、可靠性等多目标,在两个案例中实现性能最高提升42%、可靠性最高提升32%,验证了性能反模式和架构距离指标的有效性。
2023-01-23 cs.SE
What Makes a Great Software Quality Assurance Engineer?
针对SQA工程师优秀特质研究不足的问题,本文通过25次访谈和363份问卷归纳五类25项属性,并确认好奇心、有效沟通与批判性思维是关键区分特征。
2024-01-24 cs.SE
A Methodology for Analyzing Uptake of Software Technologies Among Developers
动机:什么属性组合驱动采用特定软件技术的问题对开发人员至关重要。它决定了哪些技术得到社区的广泛支持,哪些技术可能被放弃,从而使开发人员的投资变得毫无价值。目标和背景:我们对开发人员采用软件技术进行建模,并提供与替代技术之间更好的可见性相关的特定技术属性的见解。方法:我们利用社会传染理论和统计建模来识别,定义和测试可能影响软件采用的经验措施。更具体地说,我们利用大量的开源版本控制存储库来构建一个特定的R语言源代码文件集的软件依赖链。我们制定逻辑回归模型,调查技术属性的组合,推动采用竞争的数据框架实现在R语言:整洁和data.table。我们量化了可能影响采用的关键项目属性以及做出选择的开发人员的特征。结果如下:我们发现,对提出的问题的快速响应,大量的整体部署,以及大量的高质量StackExchange问题与更高的采用率相关。决策者倾向于采用在技术依赖网络和作者协作网络中更接近他们的技术,同时满足他们的性能需求。今后的工作:我们希望我们的方法包括社会传染,捕获理性和非理性的偏好,并从大量的版本控制数据中阐明关键措施,为提高可见性,推动更明智的决策,以及生产更可持续和广泛采用的软件提供一条通用路径
2019-09-04 cs.SE
Identifying the Importance of Software Reuse in COCOMO81, COCOMOII
软件项目管理是对项目计划、项目监控和项目终止的补充。计划的基本目标是寻找未来,诊断为成功完成项目而基本完成的属性,使进度计划生动化,并为属性分配资源。软件成本估算在软件项目的资源分配和投标等决策中起着至关重要的作用。本文阐述了传统的软件成本估算方法的概述。将各公司对软件项目的成本、工作量估算结果进行汇总,并将其与现有的成本模型进行分离,计算出MRE(平均相对误差)。我们已经将历史数据管理到COCOMO81,COCOMOII模型,并确定了恒星的困境是,没有成本模型给出了软件项目的准确估计。
2009-12-11 cs.SE
Linking Quality Attributes and Constraints with Architectural Decisions
质量属性和约束是架构决策的主要驱动力。质量属性由体系结构决策改进或破坏,而限制直接包括或排除体系结构的部分(例如,逻辑组件或技术)。我们可以确定架构的决策对软件质量的影响,或者架构的哪些部分受到约束的影响,但困难的问题是我们是否尊重质量需求(对质量属性的需求)和所有架构决策的约束。目前,通常的做法是架构师使用自己的经验来设计满足质量要求和限制的架构,但最终,特别是对于关键决策,架构师必须处理质量属性之间的复杂权衡,并应对约束引起的可能的不兼容性。在本文中,我们提出了夸克,计算机辅助方法,以支持架构师在软件体系结构决策。
2012-06-22 cs.SE
Quality attributes of test cases and test suites -- importance & challenges from practitioners' perspectives
本研究通过工业调查,揭示实践者认为故障检测、可用性等质量属性最重要,并指出定义不足、缺乏度量等共性挑战,为研究与支持提供方向。
2025-07-08 cs.SE
Blockchain-oriented Software Engineering: Challenges and New Directions
区块链技术正在重塑金融、经济和货币,其破坏力可以与早期的互联网和网络相媲美。因此,所有围绕区块链技术的软件开发都在以惊人的速度增长。在本文中,我们认识到软件工程师需要为面向区块链的软件开发设计专门的工具和技术。从当前有关新专业角色定义、要求严格的测试活动和软件架构新工具的挑战中,我们向前迈出了一步,在面向区块链的软件存储库精选语料库的基础上提出了新的方向,这些数据是通过利用2016年穆迪区块链报告中的信息和加密货币的市值来检测的。确保有效的测试活动,加强大型团队的协作,以及促进智能合约的开发,都是未来面向区块链的软件开发的关键因素。
2017-02-16 cs.SE
Introducing Artificial Intelligence Agents to the Empirical Measurement of Design Properties for Aspect Oriented Software Development
面向方面的软件开发(AOSD)方法的支持者已经做了大量的工作,使用定量评估来显示其采用的积极影响。对方法的结构化评估需要一个定义明确的质量模型。本文提出了一种基于人工智能智能体的方面化质量评价模型。该模型已应用于现有的面向对象和面向方面的案例研究应用程序,大学自动化软件的等效版本。软件设计属性的具体指标已使用不同版本的人工智能智能体进行测量,并用于推断对质量的影响。基于最初的测量,它被发现,方面化的质量模型中定义的所有三个质量属性都有积极的改善。由于方面化的影响,演化和可重用性的属性在质量上有了显著的提高。
2020-10-17 cs.SE
On Assessing the Complexity of Software Architectures
本文提出了一些适合评估软件系统体系结构属性的新体系结构度量。我们的方法的主要特点是通过分析架构中的各种类型的架构依赖来评估软件架构的复杂性。
2001-05-05 cs.SE
Characterizing Bugs and Quality Attributes in Quantum Software: A Large-Scale Empirical Study
NIT Srinagar(印度国立技术学院斯利那加分校)
本研究通过大规模分析量子软件缺陷,揭示了全栈库和编译器的高缺陷率及自动化测试对减少缺陷的重要性。
2026-01-02 cs.SE
Human-In-The-Loop Software Development Agents: Challenges and Future Directions
本文针对LLM驱动的多智能体软件开发趋势,介绍Atlassian部署人在环路智能体处理Jira工作项的评估实践,指出单元测试成本高、LLM评估不稳定两大挑战,并提出改进相关评估框架的未来研究方向。
2025-04-25 cs.SE
Software Effort Estimation with Ridge Regression and Evolutionary Attribute Selection
University of Cyprus(塞浦路斯大学);Frederick University(弗雷德里克大学);Cyprus University of Technology(塞浦路斯理工大学)
针对软件成本估算中属性选择依赖经验且传统方法不准确的问题,本文提出结合岭回归与遗传算法的混合模型,自动选择成本驱动因素,并在高维数据集上验证了消除冗余属性可提高估算精度。
2010-12-28 cs.AI cs.LG cs.SE
Characterizing the Experience of Subjects in Software Engineering Studies
背景:软件工程中的实证研究通常以人类为中心,从新手到有经验的开发人员。这些人的经验是一个关键的背景因素,应适当的特点,支持设计的实证研究和解释他们的结果。然而,用于描述受试者经验的标准并不遵循标准,而且往往是有限的。目标:本研究的目的是建立一个最佳化的、综合性的方案,以表征受试者在软件工程学习中的经验。方法:在前人工作的基础上,我们定义了该方案的第一个版本,由三个经验属性组成,包括时间,项目数量和自我感知。在过去的几年中,我们应用了四个实证研究的表征方案,达到了三种不同技能的79个主题的表征。结果:我们发现,从我们的计划的属性是积极的,但适度相关。这一发现表明,这些属性在描述受试者的经验方面发挥了补充作用。此外,我们发现研究对象在总结其专业经验时倾向于列举其背景的技术多样性。结论:该计划提出了一个可行的替代品,在该领域的实证研究的特点。然而,我们打算与开发人员进行额外的调查,以发展它。
2021-10-06 cs.SE
Runtime Software Patching: Taxonomy, Survey and Future Directions
防毒墙软件补丁旨在最大限度地减少或消除服务停机时间,用户中断和潜在的数据丢失,同时部署补丁。由于现代软件系统的高度差异性和异构性,没有通用的解决方案可用于或建议在运行时部署和执行补丁。现有的运行时软件打补丁解决方案集中于特定情况、场景、程序设计语言和操作系统。本文旨在识别,调查和综合国家的最先进的运行时软件修补方法,并给出了目前尚未解决的挑战的概述。它进一步提供了对运行时补丁方法的多个方面的见解,例如补丁规模,一般策略和责任。这项研究确定了七个级别的粒度,两个关键的战略提供了一个概念模型的三个负责实体和四个功能的运行时修补解决方案。通过对现有文献的分析,本研究还揭示了阻碍在实践中更全面地采用运行时补丁的开放性问题。最后,它提出了几个关键的未来方向,需要进一步关注的研究人员和从业人员。
2023-02-22 cs.SE
Model tree based adaption strategy for software effort estimation by analogy
背景:自适应技术是基于类比的估计的一个关键任务。目前的自适应技术通常使用线性大小或线性相似性调整机制,这通常不适合具有复杂结构和许多分类属性的数据集。此外,使用非线性自适应技术,如神经网络和遗传算法,需要许多用户交互和参数优化配置它们(如网络模型,神经元数量,激活函数,训练函数,变异,选择,交叉,.等)。目的:针对上述问题,本文提出了一种新的自适应策略,利用基于模型树的属性距离,通过类比调整估计,得到新的估计。模型树在处理分类属性、减少用户交互和通过分类提高模型学习效率方面具有优势。方法:七个众所周知的数据集已被用于3倍交叉验证,以经验验证所提出的方法。所提出的方法已经研究了使用各种K类比从1到3。结果如下:实验结果表明,与基于类比估计的线性尺寸自适应、线性相似性自适应、“回归均值”和空值自适应相比,该方法具有更好的效果。结论:模型树可以形成一个有用的扩展估计类比,特别是对复杂的数据集,大量的分类属性。
2017-03-11 cs.SE
Understanding Undesirable Attributes of Requirements Engineers: Insights from Practitioners
Federal Institute of Ceará(塞阿拉联邦学院);State University of Ceará(塞阿拉州立大学);Pontifical Catholic University of Rio de Janeiro(里约热内卢天主教大学);University of Saskatchewan(萨斯喀彻温大学);Virginia Commonwealth University(弗吉尼亚联邦大学);Federal University of Bahia(巴伊亚联邦大学)
通过调查和访谈,识别出需求工程师的17种不良属性,分为沟通问题、缺乏领域知识、个性和缺乏技术知识四类,并构建概念图以帮助反思和改进。
2026-05-31 cs.SE
Theory-Software Translation: Research Challenges and Future Directions
理论软件翻译研讨会于2019年2月在新奥尔良举行,深入探讨了在软件中实例化理论的过程-例如,在代码中实现数学模型作为模拟的一部分-并使用软件的输出-例如模拟的行为-来推进知识。由于研究中的计算现在无处不在,研讨会提供了一个及时的机会,以反映研究软件工程的特殊挑战-开发和维护软件的科学发现的过程。除了所有软件开发项目共同面临的一般挑战外,研究软件还必须为复杂的理论结构表示、操作和提供数据。确保这一过程是强大的是必不可少的,以保持其所产生的科学的完整性,研讨会强调了一些领域,目前的研究方法软件工程将受益于证据基础,可用于通知最佳做法。研讨会汇集了专家研究软件工程师和学者,在为期两天的时间内讨论理论软件翻译的挑战。本报告概述了研讨会的活动,并综述了所记录的讨论情况。报告的主体对研讨会参与者确定的理论软件翻译的挑战进行了专题分析,将其总结为一系列研究领域,并为这项工作的未来方向提供了建议。
2019-10-22 cs.SE
SoK: Software Debloating Landscape and Future Directions
本文针对软件精简领域开展SoK研究,构建工作流概念与多层分类体系以梳理工具类别,并指出领域待解决问题,为相关研究提供基础参考。
2024-07-15 cs.SE
Engineering Blockchain Based Software Systems: Foundations, Survey, and Future Directions
本文从软件工程视角系统综述了基于区块链的软件(BBS)系统的研究现状,涵盖理论基础、过程、模型与角色,并探讨了关键开发活动、原则、挑战与技术,为从业者提供知识体系并指明未来研究方向。
2023-04-10 cs.SE
Quality Attributes on Quantum Computing Platforms
随着实用的量子计算平台(QCP)迅速成为现实,人们希望在软件应用中利用它们的真正潜力。因此,确定QCP对软件体系结构的影响变得非常重要。在本文中,我们提出了深入的检查国家的最先进的QCP,以确定所有这些特性的QCP是相关的软件架构的角度来看。缺乏本机量子操作系统、对量子算法的严格依赖、较低级别的编程抽象是可能影响量子软件应用程序架构的QCP特征的许多示例中的少数。本文的主要贡献包括识别:一)一般架构的QCP,二)编程模型,通常用于开发软件时,QCP,三)架构上的重要特点的QCP和四)这些特点对各种质量属性(QA)的影响。我们表明,除了性能和可扩展性,大多数其他的QA(例如,可维护性,可测试性,可靠性等)。受到QCP不同特性的不利影响。
2018-03-15 cs.ET cs.SE quant-ph
Software Engineering Practices for Scientific Software Development: A Systematic Mapping Study
背景资料:科学软件应用程序的开发远非微不足道,因为这些应用程序的必要复杂性不断增加,它们的规模不断增加,并且需要密集的维护和重用。目标:为此,科学软件开发人员(通常缺乏正式的计算机科学背景)需要使用适当的软件工程(SE)实践。本文介绍了一个系统的映射研究的结果,使用SE的科学应用开发和它们对软件质量的影响。方法:为了实现这一目标,我们进行了系统的映射研究的359篇论文。我们首先描述了一个目录中使用的科学软件开发的SE实践。然后,我们讨论了驱动这些实践应用的感兴趣的质量属性,以及将实践应用于质量的尝试性副作用。结果如下:主要研究结果表明,科学软件开发人员正在关注提高实现生产力的实践,如代码重用,使用第三方库,以及应用“好”的编程技术。此外,除了发现性能是许多这些应用程序的关键驱动力之外,科学软件开发人员还发现可维护性和生产力也很重要。结论:研究结果与现有文献进行了比较,解释下的软件工程棱镜,研究人员和从业人员提供的各种影响。该研究的主要发现之一,被认为是推动未来研究工作的重要因素,是缺乏在应用软件实践时需要做出权衡的证据,即,对其他质量属性的负面(间接)影响。
2020-10-19 cs.SE
Dataset Quality Assessment: An extension for analogy based effort estimation
类比估算(EBA)是软件工程领域中一种日益活跃的研究方法。该方法的基本假设是,属性值方面的相似项目在努力值方面也将相似。众所周知,软件数据集的质量对这种方法的可靠性和准确性有相当大的影响。因此,如果软件数据集不满足上述假设,那么它对于EBA方法不是很有用。本文提出了一种新的方法,基于肯德尔的行秩相关,使数据质量的评估,并提供了一个数据预处理阶段的EBA。该方法为数据质量评价过程提供了良好的统计基础和依据。与Analogy-X不同,我们的方法能够单独处理分类属性,而无需对数据集进行分区。实验结果表明,该方法可以形成一个有用的扩展EBA,因为它使:数据集质量评估,属性选择和识别异常观测。
2017-03-11 cs.SE
A Systematic Mapping Study on Requirements Engineering in Software Ecosystems
软件生态系统(SECO)和开放式创新过程被认为是软件行业的前进方向。正确理解需求对于这些IT系统和传统IT系统同样重要。本文提出了一个映射研究的问题,需求工程和质量方面的SECO和分析新兴的想法。我们的研究结果表明,在需求工程的各个阶段或子任务,大部分的SECO具体的研究已经完成的启发,分析和建模。另一方面,需求选择,优先级,验证和可追溯性吸引了一些已发表的研究。在各种质量属性中,SECO的研究主要集中在安全性、性能和可测试性方面。另一方面,可靠性,安全性,可维护性,透明度,可用性吸引了很少发表的研究。本文提供了一个审查的学术文献SECO相关的需求工程活动,建模方法和质量属性,位置的源出版物的分类问题,并确定了差距,很少有研究。
2017-12-31 cs.SE
Biased or Personalized? The Impact of Personal Information on AI-driven Development
University of Massachusetts Amherst(马萨诸塞大学阿默斯特分校)
研究人工智能驱动开发中个人信息的影响,刻画开发者属性影响生成工件的三个维度,通过实验和访谈发现开发者属性会显著影响生成软件,凸显了人工智能辅助编程中个性化与公平性的矛盾。
2026-07-09 cs.SE
Pattern Based Adaptive Architecture for Internet Banking
模式在软件体系结构中起着至关重要的作用,它是对常见问题的通用可重用解决方案。系统的软件体系结构是系统推理所需的一组结构,它包括软件元素、它们之间的关系以及两者的属性。模式可以在运行时实现;它们确定关键的资源约束和最佳实践。架构模式表达了软件系统的基本结构组织或模式。软件体系结构中的模式,提供了帮助架构师确定已被证明可以提供有效解决方案的体系结构或解决方案构建块的组合的承诺。在分析网上银行系统的可靠性、安全性、可用性、负载均衡等属性的基础上,利用模式这种可重用的组件,可以很好地帮助设计者构建负载均衡系统。在本文中,我们将提出基于模式的网上银行系统的自适应架构,因此上述属性可以通过使用模式来改善。
2013-12-09 cs.SE
ATRAF-driven IMRaD Methodology: Tradeoff and Risk Analysis of Software Architectures Across Abstraction Levels
本文提出ATRAF驱动的IMRaD方法论,将ATRAF框架的四阶段螺旋评估流程与学术论文IMRaD结构对齐,以提升软件架构权衡与风险分析研究的严谨性、透明性和可复现性。
2025-05-06 cs.SE
The Correlation among Software Complexity Metrics with Case Study
人们对软件质量的要求越来越高,因此不同规模的软件都在快速增长,以处理软件的质量问题。软件复杂性度量是利用软件的一些内部属性或特征来了解它们对软件质量的影响的度量之一。在本文中,我们涵盖了一些更有效的软件复杂性度量,如圈复杂性,代码行和Hallstead复杂性度量。本文介绍了它们对软件质量的影响。并对两者之间的相关性进行了探讨和分析。最后以一个真实数据集为例,揭示了它们与错误数的关系。
2014-08-20 cs.SE
Scientific Open-Source Software Is Less Likely to Become Abandoned Than One Might Think! Lessons from Curating a Catalog of Maintained Scientific Software
本研究利用大型语言模型策划超1.8万个科学软件项目,通过生存分析发现科学软件寿命长于非科学软件,基础设施层次、下游依赖等因素延长寿命,为科学软件维护提供见解。
2025-04-26 cs.CE cs.SE
Quality of Open Source Systems from Product Metrics Perspective
软件工程和信息系统实践最终寻求创建完美的产品。用来提高软件开发质量的工具之一是度量的使用。本文分析了从开源软件中检索到的指标的质量属性。缺陷密度被认为是软件产品质量的一个强有力的指标。在研究软件质量和缺陷倾向性时,很少有研究考虑缺陷的密度。本研究的分析表明,缺陷密度与不同的显影剂和不同的产品尺寸有关。因此,开源项目的缺陷密度较低,产品越大,缺陷密度越低。此外,这项研究表明,有不同的指标,相互关联,表明这些指标中的一些具有概念和实际相关性。另一种关系是测试bug的数量和度量之间的关系。结果表明,除类内聚方法之间的耦合度外,大多数属性与错误数呈正相关。
2015-11-10 cs.SE
Measuring the Fitness-for-Purpose of Requirements: An initial Model of Activities and Attributes
针对需求质量研究缺乏受影响活动及衡量方式系统梳理的问题,本文基于文献与实证三类数据源构建含24项活动和16个属性的初始模型,以衡量需求制品与过程的目的适用性。
2025-01-07 cs.SE
Two Approaches to Survival Analysis of Open Source Python Projects
最近的一项研究将频率生存分析方法应用于软件遗产图的一个子集,并确定OSS项目的哪些属性有助于其健康。这篇论文是那项研究的精确复制。此外,贝叶斯生存分析方法应用于同一数据集,并研究了一个额外的项目属性作为概念复制。这两种分析都集中在某些属性对开源软件项目生存的影响上,这些影响是通过开源软件项目的修订活动来衡量的。Kaplan-Meier估计、Cox比例风险模型和后验生存函数可视化等方法用于每个项目属性。结果表明,发布主要版本,在多个托管服务上拥有存储库,拥有大型开发人员团队,并经常进行修订的项目从长远来看生存的可能性更高。研究结果与最初的研究相似;然而,更深入的研究揭示了定量的不一致。
2022-03-15 cs.SE
Code Quality Evaluation Methodology Using The ISO/IEC 9126 Standard
这项工作提出了一种方法的源代码质量和静态行为评估的软件系统,基于标准ISO/IEC-9126。它使用从源代码中自动派生的元素,这些元素以质量特性排名的形式通过专家知识进行增强,允许软件工程师为源代码属性分配权重。它在所采用的度量和源代码属性的集合方面是灵活的,甚至在要评估的ISO/IEC-9126特征方面也是灵活的。我们采用的方法,两个案例研究,涉及五个开源和专有系统。结果表明,该方法可以捕捉软件质量的趋势和表达专家的看法,系统的定量和系统的方式对系统质量。
2010-07-29 cs.SE
A Case Study on Quality Attribute Measurement using MARF and GIPSY
本文着重于在不同软件度量的帮助下对模块化音频识别框架(MARF)和通用意图编程系统(GIPSY)进行比较分析。首先,我们通过查看它们的框架并在Eclipse环境中运行它们来理解MARF和GIPSY的一般原理、体系结构和工作方式。然后,我们研究了一些重要的指标,包括一些最先进的指标,并根据它们的有用性和它们对软件的不同质量属性的影响对它们进行排名。在Logiscope和McCabe IQ工具的帮助下查看和计算质量属性。这些工具对案例研究进行全面分析,并在因素层面、标准层面和指标层面生成质量报告。在下一步中,我们将在每个级别上识别最差的代码,提取最差的代码并提供改进质量的建议。我们在JDeodorant中实现并测试了一些被评为最有用的指标,并使用了一组测试用例。最后,我们使用MARFCAT对MARF和GIPSY进行模糊代码扫描,以找到薄弱和易受攻击的类的列表。
2015-04-30 cs.SE
A customizable approach to assess software quality through Multi-Criteria Decision Making
针对现有软件质量模型未结合场景与利益相关者视角、扩展性差的问题,本文提出一种基于MCDM的通用可扩展定制化质量评估机制,并给出用于MVC框架评估选择的PRETTEF实例模型。
2023-01-28 cs.SE
A Systematic Literature Review of Soft Computing Techniques for Software Maintainability Prediction: State-of-the-Art, Challenges and Future Directions
Vellore Institute of Technology(韦洛尔理工学院)
随着先进技术和方法的发明,软件正在迅速变化。快速、成功地升级软件以响应不断变化的业务需求的能力比以往任何时候都更加重要。对于软件产品的长期管理,度量软件可维护性是至关重要的。软计算技术在软件维护性预测中的应用,通过对软件维护性的准确预测,在软件维护过程中显示了巨大的潜力。为了更好地理解软计算技术对软件可维护性预测的作用,我们的目标是提供一个系统的文献综述软计算技术的软件可维护性预测。首先,我们提供了一个详细的概述软件的可维护性。在此之后,我们将探讨软件可维护性的基本原理和采用软计算方法预测软件可维护性的原因。随后,我们研究了软件可维护性预测过程中采用的软计算方法。此外,我们还讨论了使用软计算技术来预测软件可维护性的困难和潜在的解决方案。最后,我们总结了一些有前途的未来方向,以推动进一步的研究创新和发展,在这个有前途的领域的审查。
2022-09-21 cs.AI cs.SE
Defect Management Strategies in Software Development
软件是一个独特的实体,它对所有其他与软件相关或不相关的领域产生了强烈的影响。这些领域包括医疗、科学、商业、教育、国防、运输、电信等。国家的最先进的专业领域的活动需要开发高质量的软件。高质量的软件是指没有缺陷的产品,能够产生可预测的结果,并在时间和成本限制内交付。它应该是可控的,干扰最小。它还应该是可维护的,可靠的,可理解的和有效的。因此,由于当今商业世界的竞争日益激烈,技术进步,硬件复杂性和频繁变化的业务需求,需要采用系统化的方法进行高质量的软件开发。
2012-09-25 cs.SE
Making Software Development More Diverse and Inclusive: Key Themes, Challenges, and Future Directions
本研究基于23位专家会议,采用1-2-4-ALL方法识别SDDI的六大主题,提出促进软件开发者多样性与包容性的路线图,强调平衡益处与危害。
2025-02-28 cs.SE
A compendium and evaluation of taxonomy quality attributes
针对分类体系质量缺乏可操作比较标准的问题,本文综述324篇文献,提出七个互不重叠的质量属性及内外部度量,并在六个分类体系上验证其有用性。
2024-03-04 cs.SE
Some Initial Guidelines for Building Reusable Quantum Oracles
量子硬件的发展凸显了量子软件工程的进步,帮助开发人员创建具有高质量属性的量子软件。具体来说,可重用性传统上被认为是一个重要的质量属性,在成本和工作效率方面。提高量子软件的可重用性将有助于开发人员通过重用具有更好质量属性的简单组件来创建更复杂的解决方案,只要重用的组件也具有这些属性。这项工作的重点是预言机的可重用性,这是一种众所周知的量子算法模式,可用于执行其他算法用作输入的功能。特别是,在这项工作中,我们提出了几个准则,使可重复使用的量子预言机。这些准则包括三个不同层次的Oracle重用:启发Oracle的思想,创建Oracle的功能,以及Oracle本身。为了演示这些准则,通过重用更简单的oracle,构建了一系列整数oracle的两个不同实现。这些实现的质量进行评估的功能和量子线路的深度。然后,我们提供了一个文档的例子,按照建议的指导方针,这两个实现,以促进重用所提供的甲骨文。这项工作旨在成为量子软件可重用性的第一个讨论点。需要做更多的工作来建立量子软件可重用性的更具体的标准。
2023-03-27 cs.SE quant-ph
Generative AI in Software Testing: Current Trends and Future Directions
Ontario Tech University(安大略理工大学)
本文探讨生成式AI在软件测试中的应用,分析其提升测试效率、覆盖率和可靠性的潜力,以及当前面临的挑战与未来发展方向。
2026-03-02 cs.SE
Retrospective: Data Mining Static Code Attributes to Learn Defect Predictors
本文回顾了经典缺陷预测论文的基线贡献及其对软件工程研究的影响,反思其应被记住与遗忘之处。
2025-01-26 cs.SE
How Scientists Use Jupyter Notebooks: Goals, Quality Attributes, and Opportunities
通过观察20位科学家日常使用 Jupyter notebooks,研究其目标、质量属性、实现策略及AI工具融入方式,并提出改进计算笔记本与未来编程系统的设计建议。
2025-03-16 cs.HC cs.SE
Blockchain Testing: Challenges, Techniques, and Research Directions
随着区块链技术越来越多地被纳入企业系统,针对基于区块链的软件的特定测试解决方案正在获得巨大的关注。随着基于区块链的软件进入生产系统,遵循适当的工程实践,确保所需的测试水平,并评估开发系统的就绪性至关重要。现有的研究旨在通过提供合适的技术和工具来解决工程基于区块链的软件的测试相关问题和挑战。然而,与任何新兴学科一样,测试基于区块链的系统的最佳实践和工具尚未充分开发。在本文中,我们对基于区块链的应用程序(BC-Apps)的测试进行了全面的调查。首先,我们讨论了与BCApp测试相关的已识别挑战。其次,我们使用分层的方法来讨论BC技术领域的最先进的测试工作。特别是,我们提出了一个现有的测试工具和技术,提供测试解决方案,无论是在不同的组件在不同层的BC-App堆栈或整个堆栈的概述。第三,我们提供了一组未来的研究方向的基础上确定BC测试的挑战和差距,在文献综述现有的BC应用程序的测试解决方案。此外,我们反映了基于BC的软件开发过程的特殊性,这使得一些现有的工具或技术不足,并要求为BC应用程序定义标准化的测试程序和技术。我们研究的目的是强调基于BC的软件测试的重要性,并为规范的、可测试的和可验证的BC软件开发铺平道路。
2021-03-18 cs.SE