Traditionally, software APIs (application programming interfaces) have been viewed from a technical perspective, as a means to separate implementation from functional calls, and as a way to define a contract of software functionality. The technical benefits of APIs have been reported in numerous studies. Several reports from industry offer useful practical design considerations for APIs, including advice on collecting usage data, monetization strategies, and at what point to open an API to external parties. Although this advice can be useful, the focus is still often on the API, only without c…
2019-11-01 cs.SE
Understanding Software Developers' Approach towards Implementing Data Minimization
数据最小化(DM)是一种隐私实践,要求最小化软件系统中用户数据的使用。然而,连续的隐私事件,损害用户数据表明,DM的要求没有充分实现的软件系统。因此,重要的是,我们了解软件开发人员所面临的问题,当他们试图在软件系统中实现DM。在这项研究中,我们调查了24个软件开发人员如何实现DM在软件系统设计时,他们被要求。我们的研究结果表明,开发人员发现很难实现DM时,他们不知道他们可以在系统的设计阶段收集的数据的潜力。此外,开发人员在他们的软件设计中如何实现DM方面并不一致。
2018-08-04 cs.CR cs.CY cs.SE
Strategic Technical Debt: A Real Options Approach to Early-Stage Software Experimentation
Tecnológico de Monterrey(蒙特雷科技大学)
本文将早期软件实验中刻意产生的技术债务视为看涨期权,明确策略性与有毒债务的边界,构建序贯模型得出关键结论,并开展两项预注册实证检验。
2026-08-18 cs.SE
Designing and Implementing a Comprehensive Research Software Engineer Career Ladder: A Case Study from Princeton University
Princeton University(普林斯顿大学)
本研究针对普林斯顿大学RSEs需求激增的问题,设计并实施了涵盖助理至主任级别的全面职业阶梯,通过明确的指导原则和能力框架提升招聘效率与晋升路径清晰度。
2026-02-22 cs.SE
Commitment Nets in Software Process Improvement
一些研究已经揭示了一个事实,即近三分之二的软件过程改进(SPI)的努力都失败了,或者至少没有达到预期。文献和实践表明,在所有组织层面上对SPI的承诺对于任何SPI努力的成功至关重要。本文介绍了一个研究SPI-related承诺的存在、发展及其相互作用的研究模型。这项研究表明,软件组织通过战略,运营和个人承诺网。这些网络由参与者、驱动因素、关注点、行动、承诺和结果组成。承诺网模型应用于四个工业SPI倡议的研究。本文报告了其中两例病例的结果。研究结果表明,SPI是通过承诺网络的形成和重组来驱动的。战略,业务和个人承诺网的内容进行了阐述和讨论的影响。
2019-03-22 cs.SE
Challenges and Opportunities: Implementing Diversity and Inclusion in Software Engineering University Level Education in Finland
本研究通过调查芬兰软件工程大学教师,分析D&I在教育中的实施现状,提出识别态度、方法、挑战与教学策略的框架,并强调大学在培养未来专业人才促进D&I方面的持续责任。
2024-10-05 cs.CY cs.SE
A Deployment Process for Strategic Measurement Systems
已证明,将软件相关活动与组织的更高级别目标明确联系起来对于组织的成功至关重要。GQM+Strategies基于面向目标的战略度量系统,提供了明确连接目标和战略的机制。在一个组织中部署这样的战略衡量系统是非常具有挑战性的。经验表明,要取得可持续的成功,就需要有一个明确的部署战略。特别是,适当的部署过程以及相应的工具支持可以促进部署。本文介绍了系统的GQM+Strategies部署过程,并概述了GQM+Strategies建模和相关工具支持。此外,它还提供了工业应用的概述,并描述了使用GQM+策略的成功因素和好处。
2013-12-04 cs.SE
Estimation of Characteristics of a Software Team for Implementing Effective Inspection Process through Inspection Performance Metric
任何软件行业的持续存在都取决于其开发几乎零缺陷产品的能力,而这一点可以通过有效的缺陷管理来实现。检测已被证明是一种有前途的缺陷管理技术。引入诸如检查深度(DI,过程度量)和检查性能度量(IPM,人员度量)之类的度量使人们能够对检查技术进行适当的测量。本文阐述了一种数学方法来估计IPM值,而不依赖于车间缺陷计数在每一个时间。通过应用多元线性回归模型,评估了一组团队的特征系数。这些系数是从基于产品和基于服务的IT行业的团队中抽样的经验项目中计算出来的。三个验证项目的样本表明,从缺陷计数(IPMdc)获得的IPM值与使用数学模型(IPMtc)使用团队系数获得的IPM值之间非常匹配。现场观测的IPM值和我们的模型产生的IPM值具有很强的匹配性,通过团队系数支持IPM的预测能力。在确定了企业在项目中应达到的IPM值后,可以调整检验影响参数,以实现IPM的预期质量水平。团队系数的评估解决了几个与缺陷相关的问题,这些问题与管理层、利益相关者、外包代理商和客户有关。此外,系数向量还可以进一步辅助PSP和TSP的策略
2011-07-16 cs.SE
Implementing GenAI-Supported Learning in Software Engineering and Computer Science Education using Bloom's Taxonomy
Queen’s University Belfast(贝尔法斯特女王大学);Azerbaijan Technical University(阿塞拜疆技术大学);Qarabağ University(卡拉巴赫大学)
本研究设计布鲁姆分类法对齐的生成式AI框架,通过多课程实验发现:学生认为生成式AI对高阶认知活动最有价值,明确指导能促进反思性使用,为负责任使用生成式AI提供了可扩展的教学框架。
2026-06-29 cs.SE
Implementing and Executing Static Analysis Using LLVM and CodeChecker
本教程通过LLVM和CodeChecker,以C++中冗余指针消除和std::string悬空指针检测两个问题为例,逐步讲解基于抽象语法树和符号执行的静态分析检查器实现方法。
2024-08-10 cs.SE
Designing and Implementing Robust Test Automation Frameworks using Cucumber BDD and Java
本文提出基于Cucumber BDD和Java的健壮测试自动化框架,通过模块化架构和自然语言语法提升沟通与可维护性,实证表明能减少手动测试并增强缺陷检测与软件可靠性。
2025-05-22 cs.SE
Implementing Spiking Neural Networks on Neuromorphic Architectures: A Review
最近,工业界和学术界都提出了几种不同的神经形态系统来执行使用脉冲神经网络(SNN)设计的机器学习应用。随着设计和技术方面的复杂性不断增加,对这样的系统进行编程以接纳和执行机器学习应用正变得越来越具有挑战性。此外,神经形态系统需要保证实时性能,消耗更低的能量,并提供对逻辑和存储器故障的容忍度。因此,显然需要能够在当前和新兴的神经形态系统上实现机器学习应用并同时解决性能、能量和可靠性的系统软件框架。在这里,我们提供了一个全面的概述,提出了这样的框架,基于平台的设计和软硬件协同设计。我们强调的挑战和机遇,未来在系统软件技术领域的类脑计算。
2022-02-17 cs.NE cs.SE
Towards Implementing an Enterprise Groupware-Integrated Human Resources Information System
人力资源管理软件目前拥有广泛的受众。然而,还没有提出真正的集成解决方案来改进相关系统。在概念建模的理论基础上,探讨了为评价决策提供额外数据汇集的方法。比较了当前最先进的人力资源管理软件中的技术。设计和实现方面的Web有线真正集成的安全和可扩展的事件驱动的企业系统进行了说明。基准结果。讨论了外地观点。
2006-07-27 cs.CY cs.SE
Crowdsourced Behavior-Driven Development: Implementing Microservices through Microtasks
软件工程众包方法有效性的关键是工作流设计,描述如何将复杂的工作组织成小的,相对独立的微任务。在本文中,我们介绍了一种行为驱动开发(BDD)工作流,用于通过自包含的微任务完成编程工作,该工作流作为一个称为Crowd微服务的预配置环境实现。在我们的方法中,代表软件团队的客户端将微服务描述为一组具有路径、请求和响应的端点。然后,群组实现端点,识别它们测试、实现和调试的各个端点行为,创建新函数并根据需要与持久性API交互。为了评估我们的方法,我们进行了一项可行性研究,其中一小群人致力于实现小型ToDo微服务。人群创建了一个只有四个缺陷的实现,完成了350个微任务,实现了13个功能。我们讨论了这些研究结果的影响,将众包编程的贡献到传统的软件项目。
2020-09-02 cs.HC cs.SE cs.SI
Implementing AI Bill of Materials (AI BOM) with SPDX 3.0: A Comprehensive Guide to Creating AI and Dataset Bill of Materials
本文提出了一种扩展SBOM的AI-BOM方法,用于记录AI项目中算法、数据收集方法及合规信息,以提高透明度和安全性。
2025-04-23 cs.AI cs.CR cs.SE
The AI Attribution Paradox: Transparency as Social Strategy in Open-Source Software Development
研究探讨了AI在开源软件开发中的归因策略,揭示开发者如何平衡透明度与社区反应,发现归因策略影响社区接受度和规范演变。
2025-11-30 cs.HC cs.SE
Toolsuite for Implementing Multiagent Systems Based on Communication Protocols
Lancaster University, UK(兰卡斯特大学,英国);North Carolina State University(北卡罗来纳州立大学)
本文介绍了一套支持交互式编程(IOP)的多智能体系统软件工具,包含协议属性验证工具和简化智能体实现的中间件。
2025-07-14 cs.AI cs.MA cs.PL
Dealing with Data Challenges when Delivering Data-Intensive Software Solutions
数据密集型解决方案开发需求的预期增长推动了软件、数据和领域专家在多学科数据密集型软件团队(MDST)中进行有效协作的需求。我们通过采访MDST中的24位从业者进行了一项社会技术基础理论研究,以更好地了解这些团队在提供数据密集型软件解决方案时面临的挑战。访谈提供了不同类型角色的观点,包括领域,数据和软件专家,并涵盖了从团队成员,团队经理到执行领导的不同组织级别。我们发现,这些团队的主要关注点是处理与数据相关的挑战。在本文中,我们提出了处理数据挑战的理论,解释了MDST面临的挑战,包括获取数据,对齐数据,理解数据,解决数据质量问题;这些挑战发生的背景和条件、导致挑战的原因以及相关后果,如必须开展补救活动,无法实现预期成果,对交付的解决方案缺乏信任。我们还确定了应对挑战的应急措施或策略,包括实施数据治理等高层次战略方法,实施数据质量可视化和监控工具等新工具和技术,以及通过专注于人员动态、沟通技能发展和交叉技能来建立更强大的团队。我们的研究结果对从业者和研究人员有直接的影响,可以更好地了解数据挑战的情况以及如何应对这些挑战。
2023-03-24 cs.SE
Towards the integration of formal specification in the Áncora methodology
有一些非正式的方法论,如RUP,OpenUP,敏捷方法论,如SCRUP,XP和技术,如UML提出的那些,它们允许软件开发。软件行业一直在努力开发高质量的软件,因为工程需求并不重要,导致需求规格不佳,软件质量差。为了产生的贡献,规范的要求,本文介绍了一种方法的建议,实施正式的方法的结果的过程中的需求分析的方法Áncora。
2011-11-04 cs.SE
Automated and manual testing as part of the research software development process of RCE
研究软件通常由个人研究人员或小型团队在研究工作的同时开发。越多的人和研究项目依赖于有问题的软件,软件更新正确实现新功能并且不引入回归就越重要。因此,研究软件的开发人员必须在实现新功能和彻底测试任何代码更改之间平衡他们有限的资源。我们提出的过程中,我们使用的开发分布式集成框架RCE在DLR。这些过程旨在在自动化和手动测试之间取得平衡,减少测试开销,同时尽早解决问题。我们还简要描述了这些测试过程如何与周围的开发和发布过程集成。
2022-04-12 cs.SE
Software Architecture of Code Analysis Frameworks Matters: The Frama-C Example
实现大型软件,作为旨在用于工业环境的软件分析器,需要一个精心设计的软件架构,以简化其生命周期中的日常开发和维护过程。如果分析器不仅仅是一个单一的工具,而是一个开放的可扩展的协作框架,外部开发人员可以在其中开发相互协作的插件,这样一个设计良好的架构甚至变得更加重要。在这份经验报告中,我们解释了开发和维护开放的可扩展协作分析框架的困难,通过Frama-C的例子,一个平台,致力于分析用C编写的代码。我们还介绍了新的即将到来的软件架构的框架-C和它的目的是如何解决这些问题。
2015-08-17 cs.SE
Software Metrics in Boa Large-Scale Software Mining Infrastructure: Challenges and Solutions
在本文中,我们描述了我们的经验,实现一些经典的软件工程度量使用Boa -一个大规模的软件存储库挖掘平台-及其专用语言。我们的目标是利用Boa的基础设施,提出新的软件度量,并通过软件度量来表征开源项目,提供基于大量开源项目的软件度量的参考值。提出的软件度量,众所周知,并提出在本文中,可以用来建立大规模的软件缺陷预测模型。此外,我们提出了我们在开发指标时遇到的障碍,我们的分析可以用于在未来的版本中改进Boa。所实现的度量也可以用作更复杂的开源项目探索的基础,并作为如何使用Boa实现软件度量的指南,因为度量的源代码可以免费获得,以支持可重复的研究。
2017-03-18 cs.SE
An Analytical Approach for Project Managers in Effective Defect Management in Software Process
在任何软件行业中,缺陷估计和预测都是软件项目成功的主要调节因素。项目经理在有效预测和评估资源能力方面的成熟度和能力是产生高质量软件的战略驱动力之一。目前,还没有通过实证分析开发的评估技术来评估项目经理对有效缺陷管理的资源分配的决策能力。本文提出了一个基于产品的软件组织中进行的实证研究。通过对几个项目的深入调查,揭示了项目经理决策能力对实现上述目标的影响。本文使项目管理人员进一步认识到预测定位在资源分配中的重要性,以开发高质量的无缺陷软件产品。它还提高了公司的成熟度和在竞争环境中的持久性。
2012-03-29 cs.SE
Towards a Theory of Software Development Expertise
软件开发包括各种任务,如实现新功能,分析需求和修复错误。成为这些任务的专家需要一定的技能,知识和经验。一些研究调查了软件开发专业知识的各个方面,但缺少的是一个全面的理论。我们提出了第一个概念理论的软件开发的专业知识,是基于数据的混合方法的调查与335软件开发人员和文献的专业知识和专家的表现。我们的理论目前专注于编程,但已经为研究人员,开发人员和雇主提供了有价值的见解。该理论描述了软件开发专业知识的重要属性,以及哪些因素促进或阻碍其形成,包括开发人员的绩效如何随着时间的推移而下降。此外,我们的定量结果表明,开发人员的专业知识自我评估是上下文相关的,经验不一定与专业知识。
2018-11-04 cs.SE
An Infrastructure Software Perspective Toward Computation Offloading between Executable Specifications and Foundation Models
本文提出一种基础设施软件框架,根据基础模型与可执行规范各自优势进行策略性计算卸载,并分析任务分解、资源分配、自适应优化及语义鸿沟、可靠性、可扩展性等关键挑战,以构建高效可靠的混合软件系统。
2025-01-06 cs.SE
Continuous Software Engineering in the Wild
软件正在成为大多数产品和组织功能的关键组件。持续改进软件的能力决定了组织对市场机会的反应能力。持续的软件工程承诺比基于sprint或计划驱动的开发有许多优点。然而,在现有组织中实现连续的软件工程管道是具有挑战性的。在这份受邀的立场文件中,我们讨论了采用挑战,并主张采用更系统的方法来推动持续工程的采用。我们的讨论是基于正在进行的工作,与几个工业合作伙伴,以及在国家的实践和国家的最先进的经验报告。我们的结论是,采用持续的软件工程主要需要分析的组织,它的目标和限制。一个尺寸不适合所有目的,这意味着持续工程背后的许多原则与大多数组织相关,但实现的水平和好处可能仍然不同。软件持续流动的主要障碍来自次优的组织结构和缺乏一致性。一旦这些被删除,组织可以实现自动化,以进一步改善软件交付。
2022-03-24 cs.SE
Editorial: Special Issue on Collaborative Aspects of Open Data in Software EngineeringJohan
对于软件工程师来说,高质量的数据在设计和实施当今的软件时变得越来越重要,例如,作为机器学习算法和基于可视化和分析的功能的输入。开放数据-即,根据许可证共享数据,使用户有权研究、处理和向任何人分发数据,并用于任何目的-提供了一种满足这一需求的机制。数据可能来自多个来源,无论是众包、政府机构共享还是商业实体之间共享,无疑是当今公共部门、商业和工业的所有业务和收入模式所固有的。在这篇关于软件工程中开放数据协作方面的特刊的客座社论中,我们探讨了软件工程中开放数据的协作方面。我们强调这些方面如何使组织受益,可能存在哪些挑战以及如何根据当前实践解决这些问题,并介绍本特刊中包含的四篇论文。
2022-07-31 cs.SE
Practitioners Perspective on Motivators of Agile in Global Software Development
本文通过调查139名欧洲从业者并使用Smart-PLS分析,实证识别了在全球软件开发中成功实施敏捷方法的关键激励因素。
2025-03-10 cs.SE
Implementing SCRUM to develop a connected robot
敏捷方法正受到业界越来越多的关注,这些方法现在被广泛接受并部署在软件工程中。然而,在系统工程中引入敏捷性仍然存在一些问题。本文的目的是显示一个敏捷管理实施的教育项目,包括开发一个连接的移动机器人,并评估采用敏捷方法的问题和好处。在最著名的敏捷管理方法中,SCRUM被选中领导这项实验。本文首先介绍了该项目,以及学生传统上如何管理它,然后介绍了如何使用Sunday。它评估了在这个项目中引入敏捷性的困难和利益,并得出结论,认为该公司有能力设计,测试和逐步整合系统,从而更快地提供一个业务原型。
2018-07-03 cs.SE
Successful Management of Cloud Based Global Software Development Projects: A Multivocal Study
软件行业正在不断探索更好的方法来开发应用程序。实现这一目标的一个新现象是基于云的全球软件开发(CGSD),它指的是组织采用云计算服务来支持全球软件开发项目。CGSD方法影响项目管理方式的战略和业务方面。目的:本研究的目的是确定有助于CGSD项目管理的成功因素。研究方法:我们进行了多焦点文献综述(MLR),以确定CGSD项目管理的最新技术和实践的成功因素。我们确定了有助于CGSD项目管理的32个成功因素。结果如下:MLR的研究结果表明,上市时间,持续发展,财务重组,可扩展性此外,研究结果表明,有一个正式的文献和行业的灰色文献报道的成功因素之间的正相关。结论:本研究的结果可以帮助实践者制定有效的CGSD项目管理所需的策略。
2022-08-18 cs.SE
Cross-Functional AI Task Forces (X-FAITs) for AI Transformation of Software Organizations
该研究提出 X-FAIT 跨职能任务组框架,通过力场分析、高管赞助、跨职能整合与风险评估,帮助软件组织打通 AI 战略与执行。
2025-05-15 cs.SE
Pricing-driven Development and Operation of SaaS : Challenges and Opportunities
本文以PetClinic为案例,研究SaaS模型中定价策略与软件开发的关系,探讨定价驱动开发与运营方法的影响,为平衡业务决策与技术实现、促进云服务效能提供战略洞察。
2024-03-20 cs.SE
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
Omnisolver: an extensible interface to Ising spin glass solvers
本文提出名为Omnisolver的新框架,通过提供动态命令行接口和输入/输出系统,大幅降低实现二元二次模型求解算法的难度,惠及量子退火与离散优化领域的研究人员及团队。
2024-04-28 cs.SE quant-ph
Software Verification for Weak Memory via Program Transformation
尽管多处理器实现弱内存模型,验证方法往往假设顺序一致性(SC),因此可能会错过错误,由于弱内存。我们提出了一个健全的改造方案进行验证,使SC工具进行验证w.r.t.记忆力差我们提出了各种各样的模型(从x86/TSO到Power/ARM)和各种各样的验证工具的实验,量化了转换的额外成本,并强调了我们可以大幅降低它的情况。
2012-07-30 cs.LO cs.SE
Robust Software Development for University-Built Satellites
卫星和其他复杂系统现在变得越来越依赖软件。甚至纳米卫星的复杂性也可以与发射到火星的科学仪器相媲美。现在可以购买COTS组件和子系统来支持有效载荷的开发。相反,软件必须适应新的有效载荷,因此,为卫星选择的硬件结构。目前还没有一种严格而强大的方法来设计立方体卫星或小型卫星的软件。在本文中,我们将简要回顾一些现有的系统,并提出我们的方法,它基于行为-交互-优先级(BIP)框架。我们将描述我们在瑞士CubETH CubeSat项目中实施战斗软件模拟和测试的经验。最后,我们将总结经验教训和未来利用BIP的硬件测试和仿真。
2020-10-04 cs.DC cs.SE
Chatbot Based Solution for Supporting Software Incident Management Process
本文提出并讨论了实现聊天机器人的一系列步骤,以支持软件事件管理过程中的决策活动。每个步骤都独立于用于构建聊天机器人的平台,并详细介绍了各自的活动。建议的步骤可以以连续和适应性强的方式进行,有利于聊天机器人的持续培训,并允许对在软件事件管理过程中工作的专家的意图进行越来越有凝聚力的解释。根据ITIL框架,软件事件解决过程中,被认为是实验。最后给出了聊天机器人的构建步骤、基于DialogFlow平台的解决方案以及实验结果。
2022-01-15 cs.AI cs.SE
The OpenHands Software Agent SDK: A Composable and Extensible Foundation for Production Agents
MLSys 2026
本文提出OpenHands SDK,提供灵活的代理实现接口、安全可靠执行及用户交互接口,整合了本地到远程执行、多LLM路由和安全分析,验证了其在生产部署中的有效性。
2026-04-22 cs.AI cs.SE
Exploring the Use of ChatGPT by Computer Science Students in Software Development: Applications, Ethical Considerations, and Insights for Engineering Education
本研究通过半结构化访谈定性调研英国高校计算机专业学生在软件开发中使用ChatGPT的策略与伦理认知,揭示学生学习模式的转变、使用行为特征与现存问题,为工程教育中规范AI工具使用提供启示。
2025-11-17 cs.HC cs.SE
Strategic Decision Framework for Enterprise LLM Adoption
本文提出一个六步决策框架,帮助企业安全高效地采用LLM,平衡技术能力与业务目标。
2025-11-23 cs.AI cs.SE
Security Is More Than a Library Call: How Security Features Live in Code
Ruhr University Bochum(鲁尔大学波鸿分校);Chalmers | University of Gothenburg(查尔姆斯理工大学|哥德堡大学)
本研究通过挖掘9个大型开源Java系统,发现安全特性在代码中远非简单库调用,而是规模大、分散且相互缠绕,需大量集成代码。
2026-10-06 cs.CR cs.SE