Implementing Effective Changes in Software Projects to Optimize Runtimes and Minimize Defects
本研究探索软件项目中学习和实施有效变更的策略,通过混合方法分析变更前后数据,识别关键技术并提供建议,显著优化运行时间、减少缺陷,为软件工程持续改进提供框架。
2025-02-25 cs.SE
Recovering Software Architecture Intent from Historical Work Items using Generative AI: A Mixed-Methods Industry Case Study
Technical University of Munich(慕尼黑工业大学)
本研究以两个行业项目为对象,提出基于LLM的五步半自动工作流,结合混合方法验证,可从历史敏捷工作项中恢复C4架构图,生成的架构基线准确有用,能揭示架构差异与漂移,且具备实际可行性。
2026-08-31 cs.SE
Architectural Blueprints: The 4+1 View Model of Software Architecture
本文提出了一个模型,用于描述软件密集型系统的体系结构,基于多个并发视图的使用。这种多视图的使用允许单独解决架构的各个利益相关者的关注点:最终用户,开发人员,系统工程师,项目经理等,并分别处理功能和非功能需求。我们描述了这五个视图中的每一个,并给出了一个表示法。这些视图是使用以架构为中心的、基于XML的、迭代的开发过程设计的。
2020-06-08 cs.SE
On the evolution and impact of Architectural Smells -- An industrial case study
架构气味(AS)对软件系统的可维护性和可演化性有着长期的影响。大多数的研究工作都是通过挖掘开源Java系统的软件存储库来研究这个主题的,这使得很难将它们推广并应用到工业环境和其他程序设计语言中。为了解决这一研究空白,我们进行了嵌入式多案例研究,与一个大型行业合作伙伴合作,研究如何在工业嵌入式系统AS演变。我们在9个C/C++项目中检测和跟踪AS,每个项目的开发时间超过两年,每个项目的发布版本超过30个,仅最后一个版本就有超过2000万行代码。除了这些定量结果,我们还采访了12名开发人员和建筑师,他们在这些项目中工作,收集了超过六个小时的定性数据,这些数据是关于AS分析的有用性以及他们在维护和发展受AS影响的人工制品时遇到的问题。我们的定量研究结果显示了个体气味实例如何随着时间的推移而演变,它们通常在系统中存活多久,它们如何与其他气味类型的实例重叠,以及最后当它们重叠时,气味类型的引入顺序是什么。相反,我们的定性研究结果,提供了洞察力的影响,AS的长期可维护性和系统的可演化性,从我们的采访中的几个摘录的支持。实践者还提到AS分析的哪些部分实际上提供了可操作的见解,他们可以使用这些见解来计划重构活动。
2022-03-16 cs.SE
Implementing SCRUM to develop a connected robot
敏捷方法正受到业界越来越多的关注,这些方法现在被广泛接受并部署在软件工程中。然而,在系统工程中引入敏捷性仍然存在一些问题。本文的目的是显示一个敏捷管理实施的教育项目,包括开发一个连接的移动机器人,并评估采用敏捷方法的问题和好处。在最著名的敏捷管理方法中,SCRUM被选中领导这项实验。本文首先介绍了该项目,以及学生传统上如何管理它,然后介绍了如何使用Sunday。它评估了在这个项目中引入敏捷性的困难和利益,并得出结论,认为该公司有能力设计,测试和逐步整合系统,从而更快地提供一个业务原型。
2018-07-03 cs.SE
Using Social Choice Theory to Finalize Architectural Decisions
无偏见和客观的架构设计决策对于软件开发项目的成功至关重要。利益相关者的投入在达成这样的设计决策中发挥着重要作用。然而,涉众可能会以有偏见的方式行事,以确保他们的需求和关注点在软件中以特定的方式得到解决。大多数现有的架构决策方法都没有充分考虑到涉众的这种有偏见的行为。我们将软件体系结构设计看作是社会选择理论中的集体决策问题,并将机制设计的核心思想引入到我们的领域。我们的贡献是双重的:i)使用社会选择理论的不可能性结果,我们表明,一个理性的利益相关者可以游戏,她的优势,几乎每一个已知的软件架构决策方法。ii)我们还表明,如果架构师愿意承担额外的成本,给予适当的激励利益相关者,那么建筑决策可以保护战略(偏见)操纵。为了实现这一目标,我们介绍了Vickrey-Clarke-Groves(VCG)机制,从社会选择理论的软件体系结构域。我们说明我们的贡献,通过比较和使用的例子,从著名的CBAM方法的建筑决策。
2019-05-27 cs.SE
Context Before Code: An Experience Report on Vibe Coding in Practice
Faculty of Information Technology and Communication Sciences, Tampere University(坦佩雷大学信息与通信科学学院)
本文报告了一个全栈团队在实践中应用Vibe编码构建多项目代理学习平台和学术检索增强生成系统,并探讨了生成代码在隔离约束和架构设计上的不足。
2026-03-10 cs.SE
CFG2VEC: Hierarchical Graph Neural Network for Cross-Architectural Software Reverse Engineering
关键任务嵌入式软件对我们社会的基础设施至关重要,但随着技术的进步,可能会出现新的安全漏洞。当出现安全问题时,逆向工程师(RE)使用软件逆向工程(SRE)工具来分析易受攻击的二进制文件。然而,现有工具的支持有限,RE经历了一个耗时、昂贵且容易出错的过程,需要经验和专业知识来理解软件和漏洞的行为。为了改进这些工具,我们提出了$\textit{cfg2vec}$,层次图神经网络(GNN)为基础的方法。为了表示二进制,我们提出了一种新的图的图形(GoG)表示,结合控制流和函数调用图的信息。我们的$\textit{cfg2vec}$学习如何表示从各种CPU架构编译的每个二进制函数,利用分层GNN和基于siamese网络的监督学习架构。我们评估了$\textit{cfg2vec}$从剥离的二进制文件中预测函数名的能力。我们的结果表明,$\textit{cfg2vec}$优于国家的最先进的$24.54\%$在预测函数名称,甚至可以实现$51.84\%$更好地给予更多的训练数据。此外,对于所有CPU架构,$\textit{cfg2vec}$的性能始终优于最新技术水平,而基线需要多次训练才能实现类似的性能。更重要的是,我们的结果表明,我们的$\textit{cfg2vec}$可以处理从看不见的CPU架构构建的二进制文件,从而表明我们的方法可以概括学习到的知识。最后,我们通过将其实现为解决DARPA保…
2023-01-06 cs.SE
Software Architecture Metrics: a literature review
在软件工程中,早期发现体系结构问题是关键。它有助于降低性能差的风险,并降低修复这些问题的成本。图3给出了项目的快速概述,帮助设计人员检测其架构中的缺陷或退化。尽管研究在25年前就公布了架构指标,但它们尚未被行业和开源社区所接受。在这项研究中,我们的目标是进行审查现有的度量集中在软件架构的质量评估,早期的设计流程和整个项目的生命周期。我们也给他们的使用准则,并研究他们在不同的情况下的相关性。
2019-01-25 cs.SE
Toward an Architectural Blueprint to Observe Sustainability in and by Software Systems
Vrije Universiteit Amsterdam(阿姆斯特丹自由大学)
本文提出一种架构蓝图和部署代码,用于在软件系统中添加可观察性,特别包括测量软件能耗,以帮助定义必要组件并示例展示可观察性添加。
2026-04-10 cs.SE
Embedding Software Intent: Lightweight Java Module Recovery
Department of Informatics, University of California, Irvine(信息学院,加州大学伊文斯顿分校)
本文提出ClassLAR方法,通过类和语言模型恢复Java模块,提升架构恢复效率和准确性。
2025-12-17 cs.AI cs.SE
Professional Insights into Benefits and Limitations of Implementing MLOps Principles
本文通过与6名开发者进行焦点小组研究,评估了在线监督学习中实施MLOps原则的收益与局限,指出其投资回报取决于项目规模与部署需求,为平衡实施成本与项目收益提供了专业见解。
2024-03-19 cs.SE
A curated Dataset of Microservices-Based Systems
基于微服务的架构基于一组模块化、独立和容错的服务。近年来,软件工程社区提出了一些研究,调查基于微服务的架构中潜在的、经常性的、有效的架构模式,因为它们对于维护和扩展基于微服务的系统非常重要。事实上,这种系统的组织结构应该反映在所谓的微服务架构模式中,最适合项目和开发团队的需求。然而,缺乏共享开源项目微服务模式和实践的公共存储库,这可能有利于教学目的和未来的研究调查。本文试图通过共享数据集来填补这一空白,第一次策划基于微服务的项目列表。具体来说,该数据集由20个开源项目组成,所有项目都使用特定的微服务架构模式。此外,该数据集还报告了有关上述项目的服务间调用或依赖关系的信息。为了进行分析,我们使用了两种不同的工具(1)SLOCcount和(2)MicroDepGraph来获取微服务数据集的不同参数。微服务数据集和分析工具都可以在线公开获得。我们相信,这个数据集将被研究界广泛使用,以了解更多关于微服务架构和依赖模式的信息,使研究人员能够比较常见项目的结果。
2019-09-07 cs.SE
A Text Mining and Classification Approach for Analyzing Architecture Decision Records
ISISTAN Research Institute, CONICET-UNCPBA(ISISTAN研究所,CONICET-UNCPBA);Johannes Kepler University(约翰内斯·开普勒大学)
本文提出一种结合主题建模、LLM分类和模板检查的自动化文本挖掘方法,用于大规模分析约550个开源仓库中的架构决策记录,发现其常记录存在性、技术和流程决策,而备选方案等记录不足,为架构师改进实践提供参考。
2026-09-09 cs.SE
Learning From Each Other: How Are Architectural Mistakes Communicated in Industry?
本文通过访谈十名德国软件架构师的扎根理论研究,考察架构错误的定义、处理与沟通方式,发现其主要局限于项目团队,并提出促进跨团队学习与错误预防的策略。
2023-07-10 cs.SE
Do Developers Adopt Green Architectural Tactics for ML-Enabled Systems? A Mining Software Repository Study
本文通过挖掘168个GitHub开源ML项目,利用LLM挖掘机制识别绿色架构策略的采用情况,为ML系统可持续实践提供实证见解并推动未来自动化。
2025-01-02 cs.SE
Software Design Document, Testing, Deployment and Configuration Management, and User Manual of the UUIS -- a Team 4 COMP5541-W10 Project Approach
本文件描述了统一大学库存系统-门户网站的技术设计。本文档的主要目的是描述如何实现业务需求的技术远景。本文档提供了系统的架构概述,以描述系统的不同方面。本文档还可作为开发人员的基本参考点。
2010-05-02 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
Architecture Smells vs. Concurrency Bugs: an Exploratory Study and Negative Results
本研究探索架构异味与并发缺陷的关联,通过分析5个大型软件系统的125个版本,发现某些异味可能预示特定并发问题,但两者总体不相关,需结合项目特征具体分析。
2023-03-31 cs.SE
Beyond Models: Reflections on Engineering AI-enabled Systems in a Project-Based Course
Department of Mathematics and Computer Science, University of Bremen(不莱梅大学数学与计算机科学系);School of Computing Technologies, RMIT University(皇家墨尔本理工学院计算技术学院)
本文反思了一门研究生项目式课程的设计与实施,该课程通过开发电影推荐系统,培养学生对AI使能系统的架构设计、部署和监控能力,并基于混合方法研究揭示了学生在早期架构决策、ML集成、需求演进和数据管理方面的持续困难。
2026-06-16 cs.AI cs.SE
Software Design Document, Testing, Deployment and Configuration Management of the IUfA's UUIS -- a Team 3 COMP5541-W10 Project Approach
本文件的目的是提供有关的技术规格,设计的大学统一库存系统-门户网站,的UIfA。开发团队使用反馈瀑布方法在面向对象的范例下构建系统。遵循的架构模型是模型-视图-控制器,在数据库和模型之间混合了映射器层。在系统开发中使用的一些模式是观察者模式,命令模式和映射器模式。
2010-05-05 cs.SE
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
ModARO: A Modular Approach to Architecture Reconstruction of Distributed Microservice Codebases
Adelaide University(阿德莱德大学);Swordfish Computing(剑鱼计算);Singapore Management University(新加坡管理大学);Monash University(蒙纳士大学)
ModARO通过模块化方法实现微服务架构重建,支持跨项目复用,提升架构分析的灵活性和实用性。
2026-02-09 cs.SE
ARCEAK: An Automated Rule Checking Framework Enhanced with Architectural Knowledge
Shanghai Jiao Tong University(上海交通大学);Beijing University of Civil Engineering and Architecture(北京建筑大学);East China Architectural Design & Research Institute(华东建筑设计研究院)
本研究提出ARCEAK框架,将自动化规则检查分解为规则信息提取与验证代码生成两项任务,利用生成式预训练Transformer简化法规文本解释并自动生成检查代码,提升了建筑设计的合规性检查效率。
2024-12-10 cs.AI cs.SE
Architectural Anti-Patterns in Student-Developed Microservice Architectures: An Exploratory Study
University of Naples Federico II(那不勒斯费德里科二世大学)
本研究通过分析学生开发的微服务架构,发现常见反模式并提出教学建议,旨在提升微服务教学与行业实践的契合度。
2026-02-11 cs.SE
Tailoring Architecture Centric Design Method with Rapid Prototyping
许多工程过程存在于工业、教科书和国际标准中。然而,在实践中,很少有任何一个过程是一贯和字面上遵循。据观察,各行业的流程都根据项目的要求进行了更改。许多工程过程通常缺乏两个特性:1)在项目的初级阶段快速开发原型的正式能力,2)将需求转换为架构设计,何时以及如何评估设计,以及如何在整个系统生命周期中使用丢弃的原型。在产品概念处于前沿或未被充分理解的项目中,原型对于引出需求、生成客户反馈以及识别、检查或减轻风险非常有用。除了产品要做的工作之外,可用性、性能和可修改性等系统属性与功能一样重要。架构师必须用他们选择的方法来解决这些问题,以促进这些系统属性,同时为利益相关者提供所需的功能。架构设计和原型是构建嵌入所需系统属性的正确产品的关键方法之一。一旦产品被制造出来,几乎不可能用所需的属性来改造系统。本文采用快速原型法定制以架构为中心的开发方法,以实现上述目标,并减少ACDM各阶段的迭代次数。
2017-06-06 cs.SE
Automate migration to microservices architecture using Machine Learning techniques
微服务架构风格具有许多优点,例如可扩展性,可重用性和易于维护性。因此,微服务已成为开发新应用程序时的流行架构选择。获得这些好处需要重新设计单片应用程序,并将其迁移到基于微服务的架构。这个过程本身就很复杂,成本也很高,因此自动化这项任务至关重要。该项目提出了一种方法,通过该方法可以从给定的单片应用程序中识别潜在的微服务,同时将此问题视为集群主题。我们的方法将源应用程序的源代码作为输入,以便应用不同的方法将一个盒子应用程序设计到不同的微服务中。在本报告中,我们详细介绍了这些技术,同时完成了结果的讨论和比较。
2023-01-16 cs.SE
The (C)omprehensive (A)rchitecture (P)attern (I)ntegration method: Navigating the sea of technology
针对软件项目技术选择与架构设计难题,提出基于诊断决策树的CAPI方法,通过推荐架构模式降低决策复杂度,经行业用户研究验证其有效性与实用性。
2025-08-22 cs.SE
Centrality Change Proneness: an Early Indicator of Microservice Architectural Degradation
本研究提出新指标中心性变化倾向,通过分析含42个服务的开源微服务项目的7个版本,发现其与软件度量指标无关联,可作为微服务架构退化的早期指标。
2025-06-12 cs.DM cs.NA cs.SE
MVVM Revisited: Exploring Design Variants of the Model-View-ViewModel Pattern
本文通过多声部文献综述,系统梳理了MVVM模式的设计变体与权衡,识别出76个额外设计构造、16个额外优点和15个缺点,为企业应用开发提供实用指导。
2025-04-25 cs.HC cs.SE
A First Implementation of a Design Thinking Workshop During a Mobile App Development Project Course
由于他们的特点,千禧一代更喜欢边做边学和社会学习,例如基于项目的学习。然而,软件开发项目不仅需要技术技能,还需要创造力;设计思维可以达到这样的目的。我们按照d.school的设计思维方法举办了一个研讨会,帮助学生为移动应用程序开发项目课程产生想法。在实施研讨会的细节之上,我们报告了我们的观察结果,吸取的经验教训,并为进一步实施提供了建议。
2018-03-28 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
A Reference Architecture for Quantum Computing as a Service
本文提出量子计算即服务(QCaaS)参考架构,采用量子-经典分离微服务模式实现,并依据22名从业者反馈进行评估。
2023-06-03 cs.SE quant-ph
Beyond the Code: A Multi-Modal Assessment Strategy for Fostering Professional Competencies via Introductory Programming Projects
Technical University of Munich(慕尼黑工业大学)
本文通过项目式学习框架开发2D迷宫跑游戏,提出四维评估模型提升编程基础和沟通能力,为现代软件工程教育提供可扩展的课程改革方案。
2026-03-19 cs.CY cs.SE
Evolution analysis of software quality metrics in an open-source java project: A case study on TestNG
本研究使用Understand工具提取并分析了开源Java框架TestNG连续五个版本的11个面向对象质量度量,揭示了其结构演化趋势,表明其通过持续重构已变得更稳定易维护,为类似项目提供了代码质量维护建议。
2025-05-28 cs.CE cs.SE
Knowledge Lever Risk Management for Software Engineering: A Stochastic Framework for Mitigating Knowledge Loss
Department of Systems and Computer Engineering(系统与计算机工程系);Carleton University(卡尔顿大学)
本文提出知识杠杆风险管理框架,通过将无形知识资产转化为风险缓解机制,结合四个阶段架构和随机模型,提升软件开发项目中的知识资本和项目成功率。
2026-04-25 cs.AI cs.SE
What Were You Thinking? An LLM-Driven Large-Scale Study of Refactoring Motivations in Open-Source Projects
University of Oulu(奥卢大学);University of Salerno(萨勒诺大学);University of Milano-Bicocca(米兰-布雷塞大学)
本研究利用大型语言模型分析开源项目版本控制数据,识别开发者重构动机,发现LLM与人类判断80%一致但与文献动机仅47%一致,其价值在于提供局部解释,可与软件度量结合形成混合方法以系统化重构优先级。
2025-09-09 cs.AI cs.PL cs.SE
GPU Kernel Scientist: An LLM-Driven Framework for Iterative Kernel Optimization
LLM-Driven Framework for Iterative Kernel Optimization(LLM驱动的迭代核优化框架)
本文提出LLM驱动的GPU内核科学家框架,通过多阶段进化式迭代自动优化GPU内核,并在AMD MI300上验证其有效性。
2025-08-22 cs.AI cs.LG cs.PF