Using Modularity Metrics to assist Move Method Refactoring of Large System
对于大型软件系统,重构活动可能是一项具有挑战性的任务,因为为了控制组件的复杂性,必须考虑整个体系结构以及每个组件的许多细节。因此,产品度量通常用于量化与软件系统模块化相关的几个参数。本文设计了一种自动建议重构大型软件系统的机会的方法。我们表明,通过评估所有组件的指标,移动方法重构可以建议以这样一种方式来提高几个组件的模块化,而不会阻碍任何其他。然而,当在单个CPU上执行时,包括数千个类或更多的大型软件系统的计算度量可能是耗时的任务。为此,我们提出了一种解决方案,通过诉诸GPU计算度量,从而大大缩短计算时间。由于我们的方法,在系统发展的同时,可以不断收集关于系统的几个属性的精确知识,从而帮助开发人员快速评估减少模块化问题的几个解决方案。
2013-08-19 cs.DC cs.SE
Linear Software Models: Key Ideas
线性软件模型(Linear Software Models)是一个系统性的努力,它以标准数学(即线性代数)为基础,巧妙地制定了软件系统的理论。它出现在一系列论文中,涉及该理论的各个方面。但其中一个缺乏一个单一的来源,其关键思想。本文简明扼要地提炼了基本思想和线性软件模型中获得的结果。首先,我们主张,在开始软件工程的理论和实践之前,必须对软件理论有深刻的理解--这也是我们努力的目的。模块化矩阵是软件理论的中心代数结构:它是定量模块化标准的来源;它显示出高内聚性,即高稀疏性;标准模块化矩阵被定义为正方形和块对角,使软件设计实验室中的任何软件系统的设计比较成为可能。它引发了等待解决的新的开放性问题的形成。
2015-10-15 cs.SE
Supporting Modularity in Simulink Models
基于模型的开发(MBD)广泛用于嵌入式控件开发,Matlab Simulink是工业中最常用的建模环境之一。与所有软件一样,Simulink模型在其生命周期中会不断演变,必须加以维护。模块化是促进复杂软件构造的基本软件工程原则,并且在文本语言(例如C)中使用。然而,由于Simulink是一种图形化建模语言,目前还不清楚如何在Simulink开发中利用模块化,也不清楚当前的Simulink建模结构是否支持模块化。通过引入Simulink模块的概念,提出了一种在Simulink中实现模块化的有效方法。该方法的有效性是使用著名的模块化指标,包括耦合和内聚,圈复杂度,信息隐藏能力。定义了一个语法接口,以表示跨模块边界的所有数据流。还提出了四个建模准则,以鼓励最佳做法。此外,一个自定义的工具,支持Simulink模块的建模描述。最后,这项工作是证明和评估一个真实世界的例子,从核领域。
2020-07-20 cs.SE
Introducing Aspect-Oriented Programming in Improving the Modularity of Middleware for Internet of Things
物联网(IoT)已成为智慧城市及其应用发展的流行语。在这种情况下,支持软件的开发构成了物联网基础设施的核心部分。中间件位于物联网设备之间,并在它们之间进行交互,以在自动化架构的组件之间交换数据。中间件服务包括握手,数据传输和安全性,其核心功能集。它还包括跨领域的功能服务,如身份验证、日志记录和缓存。能够运行这些中间件服务的软件需要仔细选择良好的软件建模技术。面向对象编程(AOP)是一种软件开发方法,可用于独立封装物联网基础设施中间件服务的核心和横切功能。在本文中,已尝试使用模拟环境,独立建模的两个正交功能的中间件的重点,以提高其模块化。此外,定量测量的核心设计属性的凝聚力已经做了推断在物联网中间件封装的模块的可重用性的改善。基于测量,它被发现,在中间件软件的功能的模块化和可重用性已提高在ANOJ版本相比,其等效的Java版本。
2020-09-23 cs.SE
Hierarchical Complexity: Measures of High Level Modularity
软件是人类最复杂的工作之一;大型系统可能有数千万行源代码。然而,复杂性很少在最低级别的代码之上测量,有时是源代码文件或低级别的模块。在本文中,一个层次的方法进行了探讨,以找到一组指标,可以衡量更高层次的组织。然后,这些指标被用于一些流行的免费软件包(总计超过2500万行代码),以检查它们的效率和一致性。
2011-05-11 cs.SE
Evidence-Based Comparison of Modularity Support Between Java and Object Teams
背景资料:面向对象编程(AOP)是一种新兴的编程范式,其重点是提高模块化,强调横切关注点的模块化。目的:本文的目标是评估在何种程度上的AOP语言-ObjectTeams/Java(OT/J)-提高了软件系统的模块化。这种改进已经声称,但据我们所知,本文是第一次尝试提出定量证据it. Method:我们比较功能等效的实现的四个设计模式,在Java和OT/J开发,使用软件度量。结果:我们的比较结果支持文献中提出的模块化改进要求。对于使用的七个度量中的六个,模式的OT/J版本获得了明显更好的结果。局限性:这项工作使用了一组最初为面向对象(OO)系统定义的指标。这可能是度量有偏见的情况,因为它们是在面向对象编程(OO programming,OOP)的上下文中创建的,在AOP出现之前。我们认为这种比较是一个垫脚石,最终,我们计划用范式独立的指标来评估模块化的改进,这将消除偏见。本文中使用的样本中的每个单独的例子都很小。在将来,我们计划使用更大的系统来复制这个实验,在这些系统中AOP的好处可能更加明显。结论:这项工作的贡献与证据,以填补空白的定量结果,支持所谓的好处,软件模块化带来的AOP语言,即OT/J。
2011-09-09 cs.SE
Evolution of a Modular Software Network
“进化就像一个修补匠”(弗朗索瓦·雅各布,《科学》,1977年)。软件系统提供了一个独特的机会来理解生物过程使用网络理论的概念。Debian GNU/Linux操作系统允许我们以一种新颖的方式探索复杂网络的演变。在其增长过程中检测到的模块化设计是基于现有代码的重用,以最大限度地减少编程期间的成本。随着时间的推移,系统模块化程度的增加并没有抵消模块内软件包之间不兼容性的增加。这种负面影响远非设计的失败。一个随机的软件包安装过程表明,模块化程度越高,在本地计算机上正常工作的软件包的比例就越大。来自不同模块的包之间的冲突的相对数量的减少避免了一个包的功能故障在整个系统中传播。一些潜在的类比与进化和生态过程确定相互作用的物种的生态网络的结构进行了讨论。
2011-11-22 cs.OS cs.SE
Teaching cloud computing: a software engineering perspective
这篇简短的论文从软件工程而非业务角度讨论了云计算教学的问题。它讨论了云软件工程高级课程可能涉及的主题。
2012-09-05 cs.DC cs.SE
X-ray view on a Class using Conceptual Analysis in Java Environment
模块化是软件工程中最重要的原则之一,也是每一个实用软件的必要条件。由于软件的设计空间通常是相当大的,因此提供自动化的方法来帮助软件模块化是有价值的,软件模块化的自动化技术是面向对象的概念分析(OOCA)。类的X光视图是面向对象概念分析的一个方面。我们将在Java环境中使用这个概念。
2011-10-15 cs.SE
The Future of Software Engineering Conferences: A New Zealand Perspective
University of Auckland(奥克兰大学);University of Otago(奥塔哥大学);University of Canterbury(坎特伯雷大学);Massey University(梅西大学)
本文从新西兰视角探讨软件工程会议的未来,提出降低参与门槛的策略以促进全球公平参与。
2026-03-10 cs.SE
The Impact of Project Management in Virtual Environment: A Software Industry Perspective
组织内的项目虚拟团队可以通过获得适当的人力资源、协调、沟通和定期的性能评估来实现项目绩效的优化。根据文献,许多信息和通信技术工具将合作管理虚拟团队,但在软件行业,大多数项目仍然会导致失败。本研究旨在找出影响虚拟专案人力资源管理的主要因素。
2017-06-06 cs.CY cs.SE
Peer Code Review in Research Software Development: The Research Software Engineer Perspective
University of Alabama(阿拉巴马大学);University of Tennessee(田纳西大学)
本研究从研究软件工程师视角探讨同行代码审查的实践、挑战及改进,旨在揭示其在提升研究软件质量中的关键作用。
2025-11-13 cs.SE
Towards Quantifying Requirements Technical Debt for Software Requirements concerning Veracity: A Perspective and Research Roadmap
本文提出将需求技术债务(RTD)的量化视角应用于软件需求真实性,通过提出“真实性债务”概念和研究路线图,支持对涉及真相、信任与可证明性的需求进行债务管理。
2024-06-29 cs.SE
AI Policies: Help or Hindrance? A Software Developer's Perspective
Monash University(莫纳什大学);Singapore Management University(新加坡管理大学)
本研究通过19次开发者访谈,探讨AI政策对软件开发者的帮助与阻碍,并提出以开发者为中心的政策引入方法,以支持管理决策。
2026-09-16 cs.AI cs.SE
Search-based Software Testing Driven by Domain Knowledge: Reflections and New Perspectives
McMaster University(麦克马斯特大学);University of Bergamo(贝加莫大学)
本文反思了基于领域知识的搜索驱动软件测试的最新实验结果,提出未来研究的新方向。
2025-12-10 cs.SE
Fairness Across Fields: Comparing Software Engineering and Human Sciences Perspectives
University of Calgary(卡尔加里大学)
本文比较软件工程与人文科学对公平性的概念化,发现前者侧重形式和统计方法,后者强调结构性不平等与权力关系,为技术伦理发展提供跨学科见解。
2026-03-29 cs.SE
How Software Engineering Research Overlooks Local Industry: A Smaller Economy Perspective
Warsaw University of Technology(华沙理工大学);Wroclaw University of Science and Technology(弗罗茨瓦夫科技大学)
本文从较小经济体视角出发,指出软件工程研究与产业间存在显著差距,并提出改进研究与产业合作的建议。
2026-01-28 cs.SE
Responsible AI in the Software Industry: A Practitioner-Centered Perspective
本研究以软件从业者为中心,通过25人半结构化访谈,调研负责任AI原则在软件工程中的实践现状与挑战,发现公平性等原则受关注较多,透明度、问责制受关注不足,需更完善的框架推动其全面落地。
2024-12-10 cs.SE
Robust Machine Learning in Critical Care -- Software Engineering and Medical Perspectives
在临床实践中使用机器学习对这些系统的可解释性、可靠性、可复制性和鲁棒性提出了严格的要求。因此,开发用于监测危重患者的可靠软件需要医生和软件工程师之间的密切合作。然而,这两个不同的学科需要找到自己的研究视角,以有助于医学和软件工程领域。在本文中,我们解决的问题是如何建立一个合作的地方,软件工程和医学满足设计强大的机器学习系统用于病人护理。我们描述了我们如何设计的软件系统,用于监测颈动脉内膜切除术下的患者,特别是集中在研究团队的知识建设的过程。我们的研究结果显示了在建立这样的合作时应该考虑什么,它是如何随着时间的推移而发展的,以及基于它可以构建什么样的系统。我们得出结论,主要的挑战是找到一个好的研究团队,其中不同的能力致力于一个共同的目标。
2021-03-15 cs.SE
Machine Learning Model Development from a Software Engineering Perspective: A Systematic Literature Review
University of Waterloo(滑铁卢大学)
数据科学家经常开发机器学习模型来解决行业和学术界的各种问题,但在模型开发方面也面临着一些挑战。关于机器学习开发的问题涉及这样一个事实,即这些专业人员没有意识到他们通常执行临时实践,这些实践可以通过采用软件工程开发手册中提出的活动来改进。当然,由于机器学习系统与传统的软件系统不同,它们各自的开发过程中的一些差异是可以预期的。在这种情况下,本文是从软件工程的角度来研究ML模型开发过程中出现的挑战和实践,重点是了解软件开发人员如何从应用或调整传统的软件工程过程中受益于机器学习工作流。
2021-02-15 cs.AI cs.LG cs.SE
An Infrastructure Software Perspective Toward Computation Offloading between Executable Specifications and Foundation Models
本文提出一种基础设施软件框架,根据基础模型与可执行规范各自优势进行策略性计算卸载,并分析任务分解、资源分配、自适应优化及语义鸿沟、可靠性、可扩展性等关键挑战,以构建高效可靠的混合软件系统。
2025-01-06 cs.SE
Secure Software Engineering in the Financial Services: A Practitioners' Perspective
安全软件工程是现代软件开发中的一项基本活动。然而,虽然安全研究领域已经取得了相当快的进展,但在实践中,安全专家和软件开发团队之间仍然存在巨大的知识差距。毕竟,我们不能指望开发人员和其他软件从业人员成为安全专家。了解软件开发团队如何将安全性纳入他们的流程以及他们面临的挑战是缩小这一差距的一步。在本文中,我们研究了金融服务公司如何确保其软件系统的安全性。为此,我们进行了一项定性研究的基础上,半结构化的采访,16个软件从业人员从11个不同的金融公司在三大洲。我们的研究结果揭示了从业人员在软件开发过程的不同阶段所采取的安全考虑因素,软件团队使用不同的安全实践来确保其软件系统的安全性,从业人员认为在现有的实践安全工具中重要的改进,不同的知识共享和学习实践,开发人员用来了解更多关于软件安全,以及软件从业人员目前面临的挑战,当谈到保护他们的系统。
2021-04-08 cs.SE
Agile Practices for Quantum Software Development: Practitioners Perspectives
量子软件系统是新兴的软件工程(SE)流派,其利用量子比特(Qubit)和量子门(Qgates)的原理来解决当今经典计算机不能在合理时间内有效地完成的复杂计算问题。根据其支持者的说法,敏捷软件开发实践有可能解决量子软件开发中特有的许多问题。然而,缺乏证据证实敏捷实践是否适合并可以被软件团队采用,因为它们是在量子软件开发的背景下。为了解决这一问题,我们进行了一项实证研究,以调查使用敏捷实践开发量子软件的需求和挑战。虽然我们对10个国家的26名从业者进行了半结构化访谈,强调了敏捷实践在这一领域的适用性,但访谈结果也揭示了阻碍这些实践有效整合的新挑战。我们的研究结果为敏捷实践的进一步情境化和无缝集成与开发下一代量子软件提供了跳板。
2022-10-18 cs.SE
Future of Software Engineering Research: The SIGSOFT Perspective
University of Sannio(桑尼奥大学);University of Auckland(奥克兰大学);University of Toronto(多伦多大学);Carnegie Mellon University(卡内基梅隆大学);Singapore Management University(新加坡管理大学);Microsoft, Inc.(微软公司);University of California, Irvine(加州大学尔湾分校)
SIGSOFT通过提高会议透明度、尝试混合海报展示和扩大宣传,以确保软件工程社区的包容性和可访问性。
2026-01-27 cs.SE
Transition from Analysis to Software Design: A Review and New Perspective
分析和设计阶段是软件开发生命周期中最关键的部分。重用这些早期阶段的工件对于提高生产率和软件质量是非常有益的。在本文中,我们分析了关于从问题空间自动转换工件的文献(即,需求分析模型)转化为解决方案空间中的工件(即,架构、设计和实现代码)。我们的目标是评估当前的最先进的自动重用以前开发的软件设计的能力,在合成一个新的设计,为给定的要求。我们调查了各种相关的领域,如模型驱动的开发和模型转换技术。我们的分析表明,这一主题尚未得到令人满意的讨论。因此,我们提出了一个框架,包括三个阶段,以解决目前的方法中发现的局限性。
2014-01-21 cs.SE
A Perspective on the Role of Human Behaviors in Software Development: Voice and Silence
本研究拟通过问卷调查与结构方程模型,实证检验工作中发声与沉默理论在软件开发团队中的适用性。
2023-04-25 cs.SE
Standards of Validity and the Validity of Standards in Behavioral Software Engineering Research: The Perspective of Psychological Test Theory
背景软件工程研究中有一些出版物旨在指导研究人员评估其研究的有效性威胁。尽管如此,许多研究人员未能解决许多方面的有效性是必不可少的定量研究人为因素。目标.本文的目标是引发思维方式的转变,在什么类型的研究是最有价值的行为软件工程领域,也提供了更多的细节,什么是结构效度。法该方法是基于心理测试理论,并借鉴了心理学中使用的方法与结构效度。结果在本文中,我提出了一种不同的方法来有效性威胁比什么是常见的行为软件工程研究。结论.虽然本文的重点是行为软件工程,我相信其他类型的软件工程研究也可能受益于越来越多的关注结构效度。
2018-09-06 cs.SE
The IoT energy challenge: A software perspective
物联网(IoT)开启了嵌入式应用的全新世界。这些应用中的大多数都是基于深度嵌入式系统,这些系统必须在有限或不可靠的能源上运行,例如电池或能量采集器。满足这些应用的能源需求是一项艰巨的挑战,这威胁着物联网的未来发展。软件拥有对硬件的最终控制权。因此,它在优化系统能耗方面的作用非常重要。目前,程序员没有关于他们的软件如何影响系统能耗的反馈。这种反馈可以通过能量透明来实现,这是一个使程序的能量消耗可见的概念,从硬件到软件。本文讨论了软件开发中对能源透明度的需求,并强调了如何实现这种透明度以帮助应对物联网能源挑战。
2017-06-27 cs.SE
A Conceptual Framework to Analyze Enterprise Business Solutions from a Software Architecture Perspective
当软件供应商向客户展示产品时,软件系统的体系结构方面并不总是明确地暴露给客户。因此,如果新出现的业务需求需要修改其组织内的某些核心业务流程,则客户可能会面临重大风险。因此,他们可能需要替换现有系统或重新构建旧系统,以符合新的架构标准。本文介绍了一个建议的框架,帮助组织建立一个全面的看法,他们的系统架构之前,处理供应商。因此,每个组织都可以有一个参考模型,便于与软件供应商进行谈判和沟通。本文应用所提出的框架,在沙特阿拉伯地区的一个组织,以验证其适用性,并生成一个架构设计,为他们的软件系统。
2012-10-14 cs.SE
Contemporary Software Modernization: Perspectives and Challenges to Deal with Legacy Systems
本文针对遗留系统现代化方法缺乏灵活性、与当代开发脱节及从业者易受误导等问题,呼吁建立明确的软件现代化领域,并提出包含10项挑战的研究议程。
2024-07-04 cs.SE
Software Development Industry In East Africa: Knowledge Management Perspective And Value Proposition
互联网使用的增加极大地促进了东非软件开发实践的增长。本文研究了形式知识管理的存在性软件行业的(知识管理)举措,如创建虚拟社区(实践社区和利益社区);专家本地化和在这些社区建立知识分类;知识转让和分享进程;孵化和导师制;协作软件开发及其在创建创业举措和为知识经济提供基石方面的作用。我们提出了一个混合的框架,用于在KM倡议侧重于软件开发在东非。
2015-04-08 cs.CY cs.SE
The Perspective of Software Professionals on Algorithmic Racism
Cape Breton University(布雷顿角大学);CESAR School(CESAR学院);CESAR
本研究通过调查73名软件专业人员,探讨了他们对算法种族主义的理解,发现从业者虽熟知其影响但缺乏解决共识,并提出结合技术与社会策略(如结构性种族主义培训)是应对该问题的最佳途径。
2023-06-27 cs.AI cs.CY cs.SE
The Role of Generative AI in Strengthening Secure Software Coding Practices: A Systematic Perspective
本文系统研究生成式AI在增强安全编码实践中的作用,通过文献综述与实证分析探讨AI代码生成工具如何缓解安全风险并提升开发效率,为其在安全开发工作流中的集成提供洞见。
2025-04-28 cs.SE
A Mosaic of Perspectives: Understanding Ownership in Software Engineering
本文通过梳理软件工程与心理学文献,论证全面理解所有权对改进软件团队工作的潜力,并提出初步研究立场。
2025-06-02 cs.SE
Developers' Perspectives on Software Licensing: Current Practices, Challenges, and Tools
William & Mary(威廉玛丽学院);University of Sannio(萨尼奥大学);University of Victoria(维多利亚大学)
本研究探讨开发者在软件许可合规中的实践、挑战及工具,通过调查和访谈揭示当前行业现状并提出改进建议。
2026-01-23 cs.SE
Please do not go: understanding turnover of software engineers from different perspectives
本文通过混合方法研究,结合对软件工程师和CEO的半结构化访谈及验证性调查,识别出软件工程师流失的19种原因和18种有效留任策略,为工业界和学术界提供启示。
2024-06-29 cs.SE
Software Security during Modern Code Review: The Developer's Perspective
为了避免软件漏洞,组织正在将安全性转移到软件开发的早期阶段,例如在代码评审时。在本文中,我们旨在了解开发人员在代码审查期间评估软件安全性的观点,他们遇到的挑战以及公司和项目提供的支持。为此,我们进行了两步调查:我们采访了10名专业开发人员,并调查了182名从业人员在代码审查期间的软件安全评估。结果是开发人员在代码审查期间如何看待软件安全性以及一组已识别的挑战的概述。我们的研究表明,大多数开发人员在代码审查期间不会立即报告安全问题。只有在被问及软件安全性之后,开发人员才会在审查期间始终考虑它并承认其重要性。大多数公司不提供安全培训,但希望开发人员在审查期间仍然确保安全性。因此,开发人员报告说,缺乏培训和安全知识是他们在检查安全问题时面临的主要挑战。此外,他们还面临着第三方库的挑战,以及识别可能具有安全影响的代码部分之间的交互。此外,由于开发人员对他们开发的应用程序的安全动态的假设,在审查期间可能会忽视安全性。数据和材料:https://doi.org/10.5281/zenodo.6875435
2022-08-08 cs.SE
Practitioners Perspective on Motivators of Agile in Global Software Development
本文通过调查139名欧洲从业者并使用Smart-PLS分析,实证识别了在全球软件开发中成功实施敏捷方法的关键激励因素。
2025-03-10 cs.SE
Software Security Rules, SDLC Perspective
软件已经成为日常生活中不可或缺的一部分。每天,数以百万计的人通过互联网,自动取款机,移动电话进行交易,他们发送电子邮件和电子问候,并使用字处理和电子表格为各种目的。人们在使用软件时要记住,软件是可靠的,可以信任的,他们执行的操作是安全的。现在,如果这些软件有可利用的安全漏洞,那么他们如何能够安全使用。安全性为软件带来了人们信任的价值。安全软件提供的价值至关重要,因为许多关键功能完全依赖于软件。这就是为什么安全是一个严肃的话题,应该在整个SDLC期间从一开始就给予适当的关注。为了在软件中正确实现安全性,本文提出了21条安全规则以及验证结果。研究发现,通过按照给定的实现机制应用这些规则,可以消除软件中的大多数漏洞,并可以构建更安全的软件。
2009-11-03 cs.CR cs.SE
Accessibility in Software Practice: A Practitioner's Perspective
能够在日常生活中访问软件对每个人都至关重要,因此可访问性是软件开发的根本挑战。然而,鉴于许多用户报告的无障碍问题数量,例如,在应用程序审查中,尚不清楚无障碍环境是否已广泛纳入当前的软件项目,以及软件项目如何解决无障碍环境问题。在本文中,我们报告了一项研究的关键挑战和好处,将可访问性纳入软件开发和设计。我们采用定性和定量相结合的方法,从来自五大洲26个国家的15次访谈和365名调查受访者中收集数据,以了解从业者如何看待实践中的无障碍开发和设计。我们从从业者的角度和不同的软件开发阶段得到了44个关于可访问性的陈述,分为八个主题。我们的统计分析揭示了群体之间的巨大差距,例如,实践者有直接与间接无障碍相关的工作经验,当他们审查总结报表。这些差距可能会阻碍无障碍开发和设计的质量,我们使用我们的研究结果建立一套指导方针,以帮助从业者意识到无障碍的挑战和好处因素。我们还提出了一些补救措施,以解决差距,并突出未来的主要研究方向。
2021-03-16 cs.SE
Diversifying Software Architecture for Sustainability: A Value-based Perspective
尽管软件多样性的概念已经被软件架构师们采用了很多年,但是利用多样性来实现可持续性的到来却被忽视了。我们认为,期权思维是一种有效的决策工具,以评估建筑战略和长期价值之间的权衡不确定性。我们的方法扩展了成本效益分析方法CBAM。与CBAM不同,我们的重点是使用实物期权定价理论来评估多样化可以嵌入架构中的期权及其相应的价值。直观的假设是,这些选项的价值可以为建筑师提供与某些感兴趣的场景相关的这些决策的长期性能的见解,并将其用作推理可持续性的基础。该方法旨在回答以下问题:(1)架构决策的多样化是否有益,何时它们可以帮助维持软件,(2)何时,何地以及在多大程度上。所提出的模型进行说明和评估使用的案例研究,从文献中被称为GridStix。
2016-01-21 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
Development of Automated Software Design Document Review Methods Using Large Language Models
本研究利用大型语言模型自动化软件设计文档审查,整理11个审查视角,开发新技术处理表格数据,并通过GPT实验验证能有效识别文档间不一致。
2025-09-12 cs.SE
A Systematic Literature Review on Federated Machine Learning: From A Software Engineering Perspective
CSIRO(澳大利亚联邦科学与工业研究组织);University of New South Wales(新南威尔士大学)
联邦学习是一种新兴的机器学习范例,其中客户端在本地训练模型并基于本地模型更新来制定全局模型。为了识别联邦学习的最新技术并探索如何开发联邦学习系统,我们从软件工程的角度进行了系统的文献综述,基于231项主要研究。我们的数据综合涵盖了联邦学习系统开发的生命周期,包括背景理解、需求分析、架构设计、实现和评估。我们强调并总结了结果中的发现,并确定了未来的趋势,以鼓励研究人员推进他们目前的工作。
2021-05-28 cs.DC cs.LG cs.SE
Motivating the Contributions: An Open Innovation Perspective on What to Share as Open Source Software
开源软件(OSS)生态系统重塑了软件密集型公司开发产品和为客户提供价值的方式。然而,公司在内部开发什么和作为开放源码软件共享什么方面仍然需要战略产品规划方面的支持。现有的模型准确地捕捉软件业务中的商品化,但缺乏操作支持,以决定在贡献什么和何时贡献方面采用什么贡献策略。本研究提出了一个贡献接受过程(CAP)模型,企业可以采用贡献战略,符合产品战略和规划。在索尼移动执行的一个受设计科学影响的案例研究中,CAP模型是与公司的从业人员密切合作迭代开发的。CAP模型有助于根据业务影响和控制复杂性对工件进行分类,以便公司可以估计和计划是否应该贡献工件。此外,信息元模型的建议,有助于操作CAP模型在组织。CAP模式提供了一个关于开放源码软件生态系统中的公司应该分享什么的业务开放式倡议视角,帮助它们通过创建贡献战略来激励贡献。其目标是帮助最大限度地提高投资回报率,并在开放源码软件生态系统中保持必要的影响力。
2022-07-30 cs.SE
Walking the Tightrope of LLMs for Software Development: A Practitioners' Perspective
Faculty of Information Technology, Monash University(墨尔本大学信息科技学院);School of Computing and Information Systems, Singapore Management University(新加坡管理大学计算机与信息系统学院)
本文从软件开发者视角出发,研究LLMs对软件开发的影响及管理方法,通过22次访谈和STGT4DA分析方法,揭示了LLMs在个体、团队、组织和社会层面的利弊,并提出了缓解挑战的可行建议。
2026-05-21 cs.AI cs.SE
Quantum Software Engineering Challenges from Developers' Perspective: Mapping Research Challenges to the Proposed Workflow Model
针对量子软件开发进展缓慢、软件工程实践与量子编程特性不匹配的问题,本文通过将现有软件工程研究映射到量子计算工作流,明确了量子计算领域软件工程的研究方向。
2023-08-02 cs.SE quant-ph
Digitalization of Swedish Government Agencies - A Perspective Through the Lens of a Software Development Census
软件工程是社会数字化的核心。不知情的决定可能会产生重大后果,2017年瑞典政府危机就是明证,起因是瑞典交通局的一项外包交易造成的数据泄露。瑞典的许多政府机构(GovAgs)正在迅速进行数字化转型,因此概述软件开发在公共部门的这一部分中的广泛性和成熟性非常重要。我们提出了一个软件开发普查瑞典GovAgs,辅以文件分析和调查。我们发现,39.2%的GovAgs在内部开发软件,其中一些与大公司的开发人员数量相匹配。我们的研究结果表明,发展在很大程度上类似于私营部门的同行,并建立了最佳实践的实施。尽管如此,我们还是确定了在战略采购、开放性、跨GovAgs的协作和质量要求方面的改进潜力。瑞典政府已经宣布明年成立一个新的数字化机构,我们希望软件工程社区能够以明确的声音贡献其专业知识。
2018-02-11 cs.SE
Extracting Overlapping Microservices from Monolithic Code via Deep Semantic Embeddings and Graph Neural Network-Based Soft Clustering
提出Mo2oM框架,将微服务提取建模为软聚类问题,结合深度语义嵌入与方法调用图的结构依赖,利用图神经网络生成重叠微服务,在多个基准上显著提升模块化、降低通信开销并平衡服务规模。
2025-08-10 cs.AI cs.CV cs.SE
Uncovering Non-native Speakers' Experiences in Global Software Development Teams -- A Bourdieusian Perspective
基于对27名中国开发者的访谈,运用布迪厄资本—场域—惯习框架分析全球软件开发团队中非英语母语者的经历,揭示四类资本及其导致系统性不利地位的机制。
2025-01-11 cs.SE
Software Engineering for Internet of Things: The Practitioner's Perspective
基于物联网的系统(简称IoT系统)在不同的工业领域越来越受欢迎,并且它们的发展正在迅速增加,以向最终用户和公民提供增值服务。到目前为止,很少有研究揭示物联网系统所需的核心开发过程生命周期,因此软件工程师发现自己对这种新的系统开发类型没有准备,也不熟悉。为了弥补这一差距,我们进行了一项定量和定性相结合的研究,从现有的物联网文献中得出了一个概念性的过程框架,确定了27项关键任务,可纳入物联网系统的开发过程。该框架随后通过对来自6大洲35个国家的127名物联网系统从业者开发人员的调查进行了验证,他们具有15种不同的行业背景。我们的研究提供了对最重要的开发过程任务的理解,并告知软件工程从业者和研究人员与下一代物联网系统开发相关的挑战和建议。
2021-05-05 cs.SE
What's in a GitHub Repository? -- A Software Documentation Perspective
开发人员在GitHub上使用和贡献存储库。存储库中的文档是一个重要的资源,可以帮助开发人员理解、维护和为项目做出贡献。目前,存储库中的文档是多样化的,存在于各种文件中,其中大部分存在于自述文件中。然而,存储库中的其他软件工件,如问题报告和拉取请求,也可以对文档有所贡献,而无需显式指定文档。因此,在本文中,我们提出了一个分类的文档来源,通过分析不同的软件工件,开发人员的采访和卡片排序的方法。我们检查了950个公共GitHub存储库中的多个工件,这些工件是用四种不同的程序设计语言编写的,C++,C#,Python和Java,并分析了可以从这些工件中提取的文档的类型和数量。为此,我们观察到,约25.93%的信息提取的所有来源中提出的分类包含错误相关的文档,并拉请求贡献了约18.21%的提取信息。
2021-03-01 cs.SE
The Role of GitHub Copilot on Software Development: A Perspective on Productivity, Security, Best Practices and Future Directions
Virginia Tech(弗吉尼亚理工大学);BML Munjal University(BML Munjal大学);Indiana Tech(印第安纳理工大学)
本文通过文献调查综合分析了 GitHub Copilot 对软件开发生产力和安全性的影响,指出其在加速编码的同时存在安全与知识产权风险,并提出负责任采用 AI 的最佳实践与未来方向。
2025-05-02 cs.AI cs.SE
Does Documentation Matter? An Empirical Study of Practitioners' Perspective on Open-Source Software Adoption
本研究通过访谈与调研探究OSS文档在行业采用中的作用,构建主题模型自动提取文档信息,提出结合TF-IDF与ChatGPT的DocMentor方法增强文档信息,经从业者调研验证可提升理解效果。
2024-03-06 cs.SE