UML 2.0 - Overview and Perspectives in SoC Design
设计生产力的差距需要更有效的设计方法。软件系统也面临着同样的挑战,并且似乎已经通过引入更抽象的设计方法来掌握它。UML已经成为软件系统建模的标准,从而成为新的设计方法的基础。虽然UML被定义为通用建模语言,但它在硬件和软硬件协同设计中的应用非常有限。为了在这些领域成功地应用UML,理解它的功能并将其映射到一个新的领域是至关重要的。
2007-10-25 cs.SE
Socio-Technical Well-Being of Quantum Software Communities: An Overview on Community Smells
University of Salerno(萨莱诺大学)
本文研究量子开源社区的社会技术福祉,分析社区异味问题及其对产品质量和可持续性的影响。
2026-02-19 cs.SE
Key Safety Design Overview in AI-driven Autonomous Vehicles
Mercedes-Benz Research and Development North America(梅赛德斯-奔驰北美研发中心);University of Washington(华盛顿大学)
本文针对搭载AI的SAE 3级、4级自动驾驶汽车的安全需求,探讨软硬件安全架构与系统化方法,提出缓解策略等技术保障软件安全可靠,明确AI在数据全生命周期中的作用。
2024-12-12 cs.AI cs.SE
Selection of Architecture Styles using Analytic Network Process for the Optimization of Software Architecture
随着软件系统规模和复杂性的不断扩大,系统设计对软件生产至关重要。因此,软件架构在软件开发中的作用非常重要。它作为软件开发和软件评估的评估和实施计划。因此,选择正确的体系结构是软件工程领域的一个关键问题。此外,软件体系结构选择是一个多准则决策问题,其中必须考虑不同的目标和目的。本文利用ANP推理方法,为软件架构师提供更精确、更合适的架构风格选择决策支持,以最佳方式利用风格属性优化软件架构设计。
2010-05-24 cs.SE
Collaborative Design and Planning of Software Architecture Changes via Software City Visualization
本文提出一种基于软件城市可视化的协同方法,支持开发人员共同设计和规划软件架构变更,以补充传统图表和源代码讨论方式。
2024-08-15 cs.SE
Applying empirical software engineering to software architecture: challenges and lessons learned
在过去的15年中,软件体系结构已经成为管理大型软件密集型系统的开发和维护的重要软件工程领域。软件架构社区已经开发了许多方法、技术和工具来支持架构过程(分析、设计和评审)。从历史上看,软件架构的大多数进步都是由人才和行业经验推动的,但现在越来越需要系统地收集有关工具和方法的优势或其他方面的经验证据,而不仅仅是依靠宣传轶事或修辞。本文的目的是促进和促进软件体系结构的经验范式的应用。为此,我们描述了在评估软件架构研究时所遇到的挑战和经验教训,这些研究使用了受控实验、复制、专家意见、系统的文献综述、观察性研究和调查。我们的研究将支持一个知识体系的出现,包括更广泛接受的和良好的形式的软件架构理论。
2017-01-21 cs.SE
Transforming Platform-Independent to Platform-Specific Component and Connector Software Architecture Models
将组件和连接器架构描述语言与组件行为建模语言相结合,可以独立于平台对软件架构的大部分进行建模。非平凡系统通常包含具有程序设计语言行为描述的组件,以与API接口。这些组件将完整的软件体系结构绑定到特定的平台,从而妨碍了重用。以前在多平台软件架构重用方面的工作要么需要特定于平台的手工制作,要么需要明确的平台模型。我们提出了一个自动化的方法来转换平台无关的,逻辑的软件架构到架构与平台特定的组件。这种方法将抽象组件引入到平台无关的体系结构中,并在代码生成之前使用特定于目标平台的组件来细化SE。因此,一个单一的逻辑软件架构模型可以重用多个目标平台,这增加了架构的成熟度,并减少了维护工作的多个类似的软件架构。
2015-11-17 cs.SE
Impact of requirements volatility on software architecture: How do software teams keep up with ever-changing requirements?
需求波动性是软件开发中的一个主要问题,它会导致更高的缺陷密度、项目延迟和成本超支等问题。软件体系结构指导着软件产品的总体愿景,是受需求波动影响最大的领域之一。由于关键的体系结构决策是根据手头的需求做出的,因此需求的变化可能导致体系结构的重大变化。随着敏捷软件开发的广泛采用,软件架构被设计为适应未来可能的变化。然而,必须谨慎管理这些变化,因为不必要和过度的变化可能带来负面影响。进行了探索性的案例研究,研究需求波动性对软件体系结构的影响。十五个半结构化的,主题访谈进行了欧洲软件公司。研究发现,沟通不畅,信息失真,外部依赖性的主要因素,导致需求波动和不充分的架构文档,无法跟踪设计的理由,并增加复杂性的主要影响的需求波动对软件架构。从软件团队的需求波动性的意识,因素有助于它,以及可能的方法来减轻其影响的见解将被用来提高在软件架构过程中的需求波动性的管理。
2019-04-17 cs.SE
Software Architecture Decision-Making Practices and Challenges: An Industrial Case Study
软件体系结构决策对于软件系统的成功至关重要,因为软件体系结构设置了系统的结构,确定了系统的质量,并在整个系统生存周期中具有深远的影响。软件开发环境的复杂性和问题的重要性促使研究界开发了一些技术、工具和过程来帮助软件架构师做出更好的决策。尽管作出了这些努力,但在实践中采用这种系统性办法似乎相当有限。此外,实践者也面临着新的挑战,因为不同的软件开发方法建议不同的方法进行架构设计。在本文中,我们研究了目前的软件架构决策的做法,在行业中使用的专业软件架构师在三个不同的公司在欧洲进行的案例研究。因此,我们确定了软件团队遵循的不同软件架构决策实践,以及遵循这些实践的原因,与之相关的挑战,以及从软件架构师的角度来看可能的改进。在此基础上,我们认识到,改进软件架构知识管理可以解决大多数已识别的挑战,并将导致更好的软件架构决策。
2016-10-28 cs.SE
Tackling Software Architecture Erosion: Joint Architecture and Implementation Repairing by a Knowledge-based Approach
建筑侵蚀是现代建筑面临的一个重大挑战,它导致这些系统的质量性能恶化。今天,没有全面的方法来恢复体系结构的一致性,在侵蚀的软件系统存在和体系结构的一致性基本上是通过修复的实现水平。在本文中,我们提出了一种新的方法,使联合架构和实现修复,以解决软件架构侵蚀。通过对违规原因和适当的修复措施的整体观点,结合学习机制,我们建立了一个项目特定的知识库,随着时间的推移,提高了架构和实施的准确性和效率。
2021-04-28 cs.SE
On Assessing the Complexity of Software Architectures
本文提出了一些适合评估软件系统体系结构属性的新体系结构度量。我们的方法的主要特点是通过分析架构中的各种类型的架构依赖来评估软件架构的复杂性。
2001-05-05 cs.SE
Optimal Software Architecture From Initial Requirements: An End-to-End Approach
软件架构师通过架构优化过程将系统需求转化为合适的软件架构。然而,架构师应该如何决定优先考虑哪些质量改进,例如,安全性还是可靠性?在软件产品线中,多个产品的小改进是否应该优先于单个产品的大改进?现有的架构优化方法处理过程中的各个步骤,但没有一个系统地指导架构师从初始需求生成最佳架构。在这项工作中,我们提出了一个端到端的方法来生成一个最佳的软件体系结构,为一个单一的软件产品和一个最佳的家庭的体系结构的产品。我们报告了一个案例研究,应用我们的方法来优化五个工业级产品在现实生活中的产品线架构,其中359个可能的组合,10个不同的质量工作的优先级。
2020-12-31 cs.SE
Rational Unified Process
在这篇德国研讨会论文中,这篇论文是2011年在杜伊斯堡大学为应用计算机科学学士讨论会撰写的,我们展示了Rational统一过程(RUP)的简要概述。因此,对软件开发感兴趣的学生或一般感兴趣的人获得了对RUP的第一印象。本文包括对底层过程结构、过程的阶段、其工作流的调查和概述,并描述了RUP开发人员总是假设的软件开发的“最佳实践”。
2016-09-22 cs.SE
An Architecture Process Maturity Model of Software Product Line Engineering
软件体系结构由于其在创建高质量软件中的重要作用而成为软件工程界的一个关键研究领域。开发产品线而不是单一产品的趋势使软件产品线成为行业中可行的选择。软件产品线体系结构被认为是产品线中的关键组成部分之一,因为所有的产品都共享这个共同的体系结构。软件产品线的日益普及需要一种过程成熟度评估方法。因此,本文提出了一个软件产品线工程的体系结构过程成熟度模型,以评估当前成熟的产品线体系结构开发过程中的组织。评估问卷和评级方法构成了这一模式的框架。调查问卷的目的是收集有关软件产品线架构开发过程的信息。因此,在一般情况下,这项工作有助于建立一个全面的和统一的战略,软件产品线工程的过程成熟度评估。此外,我们进行了两个案例研究,并报告了评估结果,这表明了两个组织的体系结构开发过程的成熟度
2015-07-24 cs.SE
An Empirical Study on Collaborative Architecture Decision Making in Software Teams
架构决策被认为是软件开发中最具挑战性的认知任务之一。本研究的目的是探索软件团队中架构决策的实践状态,包括架构师的角色和相关的挑战。在欧洲的一家大型软件公司进行了一项探索性的案例研究,并采访了15位软件架构师作为数据汇集的主要方法。结果表明,大多数软件团队的架构决策协作。特别是,协商式决策风格是首选,因为它有助于在考虑团队成员意见的同时有效地做出决策。据观察,大多数软件架构师与软件团队保持着密切的关系。还确定了几个组织,流程和人类相关的挑战及其对架构决策的影响。
2017-07-01 cs.SE
Using Dependence Analysis to Support Software Architecture Understanding
软件体系结构作为软件系统的一个重要设计层次,正受到越来越多的关注。随着软件体系结构设计资源(以体系结构描述的形式)的积累,开发支持体系结构理解、测试、再工程、维护和重用的技术和工具将成为一个重要的问题。本文介绍了一种新的依赖分析技术--体系结构依赖分析,以支持支持软件体系结构的开发。与传统的依赖性分析不同,架构依赖性分析被设计为对软件系统的架构描述进行操作,而不是对传统程序的源代码进行操作。架构依赖性分析提供了软件系统的高层架构的依赖性知识,而不是传统程序的低层实现细节。
2001-05-05 cs.SE
Multi-Objective Reconstruction Of Software Architecture
设计侵蚀是软件工程学科中一个持续存在的问题。软件设计往往会随着时间的推移而恶化,因此在处理遗留系统时需要支持软件架构师的工具和技术。本文提出了一种基于搜索的软件工程(SBSE)的方法,旨在恢复高层次的软件系统的体系结构设计的结构低层次的文物到高层次的架构文物配置的评估。特别是,本文描述了性能评估的一些元启发式搜索算法应用于高维度的建筑重建问题的目标。这些问题已被选为典型的挑战所面临的软件架构师处理遗留系统和结果通知正在开发的软件工具,支持不同的重建架构之间的权衡分析的代表。
2021-04-28 cs.SE
The Implications of Network-Centric Software Systems on Software Architecture: A Critical Evaluation
本文的目的是评估新兴的以网络为中心的软件系统对软件体系结构领域的影响。我们首先开发一个洞察力有关的术语“网络为中心的”,提出它的起源和它的影响范围内的软件架构。在此基础上,我们提出了一个网络为中心的框架和它的显着特点的定义。然后,我们列举了软件架构领域面临的挑战,软件开发从以平台为中心的网络为中心的模型。为了面对这些挑战,我们提出了一个正式的方法体现在一个新的建筑风格,支持克服这些挑战,在建筑水平。最后,我们提出了一个说明性的例子来证明网络中心的概念的有用性,总结我们的贡献,并将我们的方法与未来需要在这方面做的工作联系起来。
2007-02-10 cs.SE
Software Architecture for Quantum Computing Systems -- A Systematic Review
量子计算系统依赖于量子力学的原理,比经典计算系统更有效地执行大量具有计算挑战性的任务。软件密集型系统的架构可以使架构师能够利用以架构为中心的过程、实践、描述语言等,在更高的抽象层次上对量子计算软件(简称量子软件)进行建模、开发和进化。我们进行了系统的文献综述(SLR),以调查(i)架构过程,(ii)建模符号,(iii)架构设计模式,(iv)工具支持,以及(iv)量子软件架构的挑战性因素。SLR的结果表明,量子软件代表了一种新的软件密集型系统;然而,可以定制现有的过程和符号来导出量子软件的架构活动和开发建模语言。映射到量子门(Qugates)的量子比特(Qubits)可以表示为实现量子软件的架构组件和连接器。工具链可以包含可重用的知识和人类角色(例如,量子域工程师、量子代码开发人员)来自动化和定制架构过程。该SLR的结果可以帮助研究人员和从业人员开发新的假设进行测试,导出参考架构,并利用以架构为中心的原则和实践来设计新兴的和下一代的量子软件。
2023-03-22 cs.SE
Software Engineering with Process Algebra: Modelling Client / Server Architectures
在以前的工作中,我们描述了如何在软件工程中使用的进程代数为基础的语言PSF,使用工具总线,协调架构也基于进程代数,作为实现模型。我们还通过在CASE设置中介绍我们在此过程中使用的工具,更正式地描述了此软件开发过程,从而形成了PSF-ToolBus软件工程环境。在这篇文章中,我们总结了这项工作,并描述了一个类似的软件开发过程,使用客户端/服务器模型的软件系统的实施,并提出了这在CASE设置以及。
2009-08-18 cs.SE
Software Architecture in Practice: Challenges and Opportunities
本文通过访谈三大洲21个组织的32名从业者,梳理软件需求、设计、构造测试和维护阶段的架构活动与挑战,发现问题集中于管理、文档、工具和流程,并收集改进建议。
2023-08-22 cs.SE
Hardware Software Co-design for Automotive CPS using Architecture Analysis and Design Language
现代信息物理系统(CPS)在软件和物理组件之间具有紧密的相互依赖性。汽车嵌入式系统是典型的CPS,因为物理芯片、传感器和执行器是物理组件,而嵌入其中的软件是网络组件。现阶段的嵌入式系统在软件和硬件的架构设计上都是高度复杂的。在工业实践中,硬件平台上的高级控制算法开发和低级代码实现是分开开发的,共享信息有限。然而,软件代码和硬件架构变得密切相关的复杂性增加。硬件和软件之间的相关要求和依赖性是工业实践中出现的问题。我们在本文中展示了一种方法,链接基于模型的系统设计与实时仿真和分析的架构模型。这允许硬件软件协同设计,从而提前选择硬件架构。
2016-03-16 cs.SE
Software Architecture for Fiji National University Campus Information Systems
软件体系结构定义了系统的概述,该系统由各种组件及其软件之间的关系组成。在大型软件解决方案的开发过程中,体系结构设计是一个非常重要的环节,它对实现商业目标、提高软件解决方案的质量和可重用性起着非常积极的作用。通常很难从几个可用的候选类型中为您的系统选择最佳的软件体系结构。在本文中,我们看看在几个架构类型,并比较它们的基础上,我们的系统的关键要求,并选择最合适的架构,在斐济国立大学校园信息系统的实施。最后,我们提供了建议的体系结构的细节,并概述了未来的计划,我们的系统的实施。
2011-05-05 cs.SE
Neurosymbolic Architectural Reasoning: Towards Formal Analysis through Neural Software Architecture Inference
针对形式化架构模型构建成本高导致架构形式化分析难普及的问题,提出神经架构推断方法以支撑神经符号架构推理,并梳理了六个待解决的研究问题与研究方向。
2025-03-20 cs.SE
A general XML-based distributed software architecture for accessing and sharing ressources
本文提出了一种通用的基于xml的分布式软件体系结构,目的是在一个开放的客户/服务器环境中访问和共享资源。本文的组织如下:首先,我们介绍了“通用分布式软件体系结构”的思想。其次,我们描述了使用这种架构的一般框架。第三,我们描述了信息交换的过程中,我们介绍了一些技术问题,在建议的架构的实施。最后,我们提出了一些项目,目前正在使用,或应该使用,建议的架构。
2009-09-11 cs.SE
Generative AI for Software Metadata: Overview of the Information Retrieval in Software Engineering Track at FIRE 2023
University of Leeds(利兹大学);Sheffield University(谢菲尔德大学);Jadavpur University(贾达普大学);Indian Statistical Institute(印度统计研究所)
本文概述2023年FIRE会议IRSE赛道,该赛道围绕基于人工与大模型标签的代码注释自动评估二分类任务,17支团队提交56项实验,经F1-Score等评估发现大模型生成标签会增加模型偏差但可减少过拟合。
2023-10-27 cs.AI cs.IR cs.SE
Software (Re-)Engineering with PSF II: from architecture to implementation
本文介绍了PSF在软件工程和再工程领域的应用研究。我们建立了一个新的实现的PSF工具包的模拟器从一个简单的模拟器的体系结构的PSF规格开始,并扩展它的功能,以获得一个完整的模拟器的体系结构。我们对体系结构的规范应用精炼和约束技术,以获得足够低的规范来构建实现。
2007-12-19 cs.SE
Sustainability in Software Architecture: A Systematic Mapping Study
可持续性在一般的软件工程中,特别是在软件架构中,是一个越来越多的研究主题。已经有一些二级研究解决软件工程的可持续性,但没有这样的研究明确侧重于软件架构。这项工作旨在通过对可持续性和软件架构研究之间的交叉点进行系统的映射研究来填补这一空白,其目的是(i)反映当前的技术水平,以及(ii)确定进一步研究的需求。我们的研究结果表明,总体而言,现有的作品不成比例地集中在可持续发展的具体方面,特别是最技术和“内向”的。这是以牺牲解决可持续性等多方面问题所需的整体视角为代价的。此外,更多的反思导向的研究工作,并更好地覆盖在建筑生存周期的活动需要进一步成熟的领域。基于我们的研究结果,我们提出了一个可持续性感知的软件架构的研究议程。
2022-04-25 cs.SE
Applying Slicing Technique to Software Architectures
软件体系结构作为软件系统的一个重要设计层次,正受到越来越多的关注。随着软件体系结构设计资源(以体系结构规范的形式)的积累,支持体系结构理解、测试、再工程、维护和重用的技术和工具的开发将成为一个重要的问题。本文介绍了一种新的切片形式,称为架构切片,以帮助架构的理解和重用。与传统切片不同,架构切片被设计为对软件系统的架构规范进行操作,而不是对程序的源代码进行操作。架构切片提供了关于软件系统的高层结构的知识,而不是程序的低层实现细节。为了计算架构切片,我们提出了架构信息流图,它可以用来表示软件架构中的信息流。基于图,我们给出了一个两阶段算法来计算建筑切片。
2001-05-05 cs.SE
Comparison of Static Analysis Architecture Recovery Tools for Microservice Applications
本研究针对微服务架构监管难、缺乏工具有效性实证综述的问题,计划通过多源文献梳理静态分析架构恢复工具,在通用数据集上实测并比较其有效性,为CI/CD集成提供参考。
2024-03-11 cs.SE
Analysis of Software Binaries for Reengineering-Driven Product Line ArchitectureâAn Industrial Case Study
本文描述了一种从一组相似(但不相关)的二进制形式的软件产品中恢复软件体系结构的方法。一个意图是将重构驱动到软件产品线中,并将架构恢复与运行时间二进制分析和现有的聚类方法相结合。使用我们的运行时二进制分析,我们创建的图表,捕捉不同的软件部分之间的依赖关系。这些被聚集到更小的组件图中,将具有高交互性的软件部分分组到更大的实体中。组件图作为进一步软件产品线工作的基础。在本文中,我们集中在分析部分的方法和图聚类。我们将图聚类方法应用到自动化/机器人配置软件工具的背景下的实际应用中。
2015-04-14 cs.SE
Software Architecture of Code Analysis Frameworks Matters: The Frama-C Example
实现大型软件,作为旨在用于工业环境的软件分析器,需要一个精心设计的软件架构,以简化其生命周期中的日常开发和维护过程。如果分析器不仅仅是一个单一的工具,而是一个开放的可扩展的协作框架,外部开发人员可以在其中开发相互协作的插件,这样一个设计良好的架构甚至变得更加重要。在这份经验报告中,我们解释了开发和维护开放的可扩展协作分析框架的困难,通过Frama-C的例子,一个平台,致力于分析用C编写的代码。我们还介绍了新的即将到来的软件架构的框架-C和它的目的是如何解决这些问题。
2015-08-17 cs.SE
An architecture for non-invasive software measurement
分析与软件开发相关的数据有助于提高软件开发过程和产品的质量、控制和可预测性。然而,收集这些数据是一项复杂的任务。一个非侵入性的软件度量的收集是解决这个问题的最有前途的方法之一。在本文中,我们提出了一种方法,它由四个部分组成:收集数据,存储所有收集到的数据,统一存储的数据和分析数据,以提供有关软件产品或过程的见解给用户。我们采用的方法来开发一个架构的非侵入性软件测量系统,并解释其优点和局限性。
2017-02-23 cs.SE
A Query Language for Software Architecture Information (Extended version)
本文提出架构信息查询语言AIQL,使利益相关者能够从数字架构孪生中获取最新且定制的架构信息,并通过四个应用场景和用户研究验证其功能、可扩展性与易用性。
2023-07-04 cs.SE
Evaluation of Software Architecture Quality Attribute for an Internet Banking System
在软件开发中,设计阶段比其他所有阶段都重要。软件体系结构必须同时满足功能性和非功能性的质量要求。必须执行架构评估,以便开发人员确信他们选择的架构将降低成本和工作量,并增强各种质量属性,如可用性,可重用性,性能,可修改性和可扩展性。系统的成功与否取决于对系统的基本方法体系结构的评估。候选体系结构的总体排名是通过为场景和场景交互分配权重来确定的。在本文中,SAAM方法被用来评估这两个架构从各种可用的方法和技术,以实现各种质量属性的权重度量。
2013-12-09 cs.SE
Architectural Blueprints: The 4+1 View Model of Software Architecture
本文提出了一个模型,用于描述软件密集型系统的体系结构,基于多个并发视图的使用。这种多视图的使用允许单独解决架构的各个利益相关者的关注点:最终用户,开发人员,系统工程师,项目经理等,并分别处理功能和非功能需求。我们描述了这五个视图中的每一个,并给出了一个表示法。这些视图是使用以架构为中心的、基于XML的、迭代的开发过程设计的。
2020-06-08 cs.SE
Open Tracing Tools: Overview and Critical Comparison
本文通过系统性多语言文献综述比较30个开放追踪工具,分析其特性、流行度及优缺点,旨在帮助从业者理解和选择合适工具。
2023-06-23 cs.SE
Software Architecture Meets LLMs: A Systematic Literature Review
本文通过系统性文献综述,分析了18篇研究,探讨大语言模型在软件架构任务中的应用效果、自动化程度、所用模型及评估方式,发现其常优于基线但部分领域仍待探索。
2025-05-22 cs.SE
On the Role of Software Architecture in DevOps Transformation: An Industrial Case Study
开发与运营(DevOps)是一种特殊类型的持续软件工程,已经成为一种流行的软件系统工程范式。软件架构对于DevOps的成功至关重要。然而,关于行业中如何构建软件系统以启用和支持DevOps的基于证据的知识很少。由于架构决策及其原理和含义在架构过程中非常重要,因此我们进行了一项行业案例研究,该研究根据经验确定并合成了两个软件开发团队认为对DevOps转型至关重要的关键架构决策。我们的研究还表明,除了所选择的架构风格外,DevOps最适合模块化架构。此外,我们发现,如果将运营专家添加到团队中以执行需要高级专业知识的运营任务,则所研究团队的性能可以在DevOps中得到改善。最后,如果团队想要更快地发布软件更改,那么测试投资是不可避免的。
2020-03-13 cs.SE
Towards a Generic Software Architecture for IoT Systems
本文针对物联网系统复杂性带来的软件开发挑战,提出一种质量属性驱动的通用软件架构,融合边缘计算、微服务和事件驱动设计模式,将物联网视为需闭环控制的自治系统以实现稳健运行。
2024-11-16 cs.SE
An overview of the use of alternative funding and contracting approaches relevant for agile software development: A systematic review of real-life experiences
Simula Metropolitan Centre for Digital Engineering (SimulaMet)(Simula数字工程大都市中心(SimulaMet))
本文通过系统性综述38项实证研究,梳理敏捷项目中的四种替代资金与四种合同方法,分析其动机、收益、挑战及情境化渐进采用路径。
2025-10-21 cs.SE
Software Architectures for Robotics Systems: A Systematic Mapping Study
软件体系结构相关的问题是机器人系统的重要。二十多年来,以架构为中心的机器人系统软件开发和演化一直吸引着研究人员的关注。这项工作的目标是系统地识别,分类和整体映射现有的解决方案,研究进展和趋势,影响架构驱动的建模,开发和机器人软件的演变。我们进行了一项系统映射研究,以确定和分析基于56篇同行评审论文的相关文献。我们从选定的论文中提取和综合数据,对现有的研究进行分类,并系统地映射解决方案,框架,符号和评估方法,以突出软件架构在机器人系统中的作用。我们已经确定了八个不同的研究主题,支持架构解决方案,以实现机器人软件的操作,进化和开发特定活动。在这一领域的研究已经从面向对象的组件为基础,现在服务驱动的机器人代表不同的体系结构代。自2005年以来,报告的解决方案利用模型驱动,面向服务和逆向工程技术。一个新兴的趋势是云机器人技术,它利用服务驱动架构的基础来支持机器人互联网。该SMS的结果促进了知识转移,使研究人员和从业人员受益,重点是利用软件架构来建模,开发和发展机器人系统。
2017-01-19 cs.SE
Big Questions on Software Architecture: Report of the ICSE 2026 BoF on Software Architecture
University of Southern Denmark(南丹麦大学);Vrije Universiteit Amsterdam(阿姆斯特丹自由大学);University of L’Aquila(拉奎拉大学)
本文报告了 ICSE 2026 软件架构 BoF 首场会议的成果,旨在区分 SA 研究的重大科学问题与技术趋势,后续将补充 ICSA 会议的相关结果。
2026-09-07 cs.SE
SArF Map: Visualizing Software Architecture from Feature and Layer Viewpoints
为了便于理解的软件系统的架构,我们开发了SARF地图技术,可视化软件架构的功能和层的观点,使用城市隐喻。SArF地图可视化隐式软件功能使用我们以前的研究,SArF依赖性为基础的软件聚类算法。由于功能是软件的高级抽象单元,因此生成的映射可以直接用于高级决策,例如重用,也可以用于开发人员和非开发人员利益相关者之间的通信。在SArF地图中,每个要素都被可视化为一个城市街区,要素中的类被布置为反映其软件层的建筑物。特征之间的相关性表示为街道。依赖关系的链接被清晰地可视化。通过开源和工业案例研究,我们表明,目标系统的架构可以很容易地概述,其包装设计的质量可以快速评估。
2013-06-05 cs.SE
A Taxonomy of Modeling Approaches for Systems-of-Systems Dynamic Architectures: Overview and Prospects
系统的系统(SoS)是独立的组成系统(CS)为实现特定任务而协作的结果。CS在设计时并不完全已知,并且也可能在运行时离开或加入SoS,这使得SoS架构具有内在的动态性,形成新的架构配置并影响整体系统质量属性(即性能,安全性和可靠性)。因此,在早期阶段对体系结构的随机变化对体系结构性能的影响进行抽象建模和评估,以分析和选择合适的体系结构设计是至关重要的。体系结构描述语言(ADL)已被提出并用于处理体系结构的动态。然而,我们仍然设想在今后几年中需要弥补的差距和应对的挑战。本文提出了一个广泛的讨论国家的最先进的符号建模和分析体系结构的动态。本文的主要贡献是三个方面:(一)提供了文献综述的结果,现有的体系结构建模方法的支持,为体系结构和分析其语义扩展,以支持规范的体系结构动态体系结构,和(ii)相应的分类建模体系结构作为文献综述的结果。此外,我们也讨论了未来的方向和未来几年需要克服的挑战。
2019-05-23 cs.SE
Towards Leveraging LLMs to Generate Abstract Penetration Test Cases from Software Architecture
Karlsruhe Institute of Technology (KIT)(卡尔斯鲁厄理工学院)
本文提出利用大语言模型生成抽象渗透测试用例,以支持软件架构层面的安全评估,实验显示生成的用例在实用性和正确性上表现良好。
2026-03-24 cs.SE
Knowledge-Based Multi-Agent Framework for Automated Software Architecture Design
本文提出基于知识的多智能体架构设计(MAAD)框架,利用LLM智能体模拟人类角色,整合系统设计、文献和专家知识,以自动化软件架构设计,推动应用级系统开发的全自动化。
2025-03-26 cs.SE
A survey of service oriented architecture systems testing
面向服务的体系结构(SOA)是最新的软件体系结构之一。这种架构是在业务需求的方向上创建的,消除了软件和业务之间的差距。软件测试是软件开发活动中不断增加的成本。SOA具有与其他软件体系结构不同的规范和功能比例。首先,本文回顾了SOA测试的挑战和针对这些挑战的现有解决方案。然后报告了SOA系统测试的最新研究概况,包括功能测试和非功能测试。这些测试针对不同级别的功能测试,包括单元测试、集成测试和回归测试。
2012-12-13 cs.SE
Towards Living Software Architecture Diagrams
提出一种从多种软件工件中自动恢复架构并结合手动调整的方法与工具,生成可手动修改且在重新生成时能保留更改的软件架构图。
2024-07-25 cs.SE
Benchmarking and Evaluating VLMs for Software Architecture Diagram Understanding
King’s College London(伦敦国王学院);British Telecom(英国电信)
本文提出SADU基准,评估VLMs在理解软件架构图作为结构化软件工程制品上的能力,揭示当前模型在图表推理和视觉关系定位方面的不足。
2026-04-05 cs.SE
Assessing Support for Industry Standards in Reference Medical Software Architectures
开发医疗器械软件的行业标准规定了合格器械必须满足的要求。已经提出了许多参考软件架构来开发这样的软件。ISO/IEC 25010:2011系列标准提供了一个全面的软件产品质量模型,包括医疗器械中高度期望的特性。此外,像4+1视图这样的框架提供了一个强大的框架来开发任何软件(包括医疗器械)的软件架构或高级设计。然而,医疗器械软件的工业标准和参考架构与ISO/IEC 25010:2011和4+1视图之间的一致性尚未得到很好的理解。本文旨在探讨ISO/IEC 25010:2011和4+1视图如何得到当前标准(即ISO 13485:2016、ISO 14971:2012、IEC 62304:2006和IEC 62366:2015)以及当前医疗器械软件参考架构的支持。我们将医疗器械标准的要求分类为ISO/IEC 25010:2011的质量和4+1视图的架构视图。遵循系统性文献综述(SLR)方法,对当前参考软件体系结构进行了评审,并映射了它们对上一步骤中识别的ISO/IEC 25010:2011质量的支持。我们的研究结果表明,ISO/IEC 25010:2011质量,如功能适用性,可移植性,可维护性,可用性,安全性,可靠性和兼容性在医疗器械标准中得到高度重视。此外,我们表明,目前的参考架构只部分支持这些品质。本文可以帮助医疗设备开发人员确定开发符合标准的软件的重点领域。一项涉及开发中医疗设备的更…
2021-07-17 cs.SE
On a Factorial Knowledge Architecture for Data Science-powered Software Engineering
鉴于科学中的数据密集型和协作趋势,软件工程社区也越来越关注从数据存储库中获得有价值和有用的见解。然而,将数据科学应用于软件工程(例如,如果缺乏合适的知识体系结构(KA),挖掘软件存储库)可能是盲目的和无意义的。通过观察软件工程实践通常通过一组因素(例如,编程器容量、不同的环境条件等)在此基础上,提出了一种基于因素的软件工程知识共享层次模型,以最大化软件资源库的价值,并对未来的软件数据驱动研究有所启发。特别是,它是有组织的因素和它们的关系,有助于指导软件工程知识挖掘,而挖掘的知识反过来将通过相关的因素和它们的相互作用索引/管理。本文阐述了我们关于阶乘KA的思想,并简要地说明了一个KA组件,即软件产品工程的早期版本KA。一旦充分的范围,这个拟议的KA将补充众所周知的SWEBOK的因素为中心的知识管理和潜在的软件工程知识的覆盖面/含义。
2021-03-02 cs.SE
Software dependability modeling using an industry-standard architecture description language
在架构级别执行可靠性评估以及其他分析,既可以进行架构权衡,又可以预测架构决策对应用程序可靠性的影响。本文给出了使用AADL(体系结构分析与设计语言)建立软件系统体系结构可靠性模型的指导方针。它提出了可重用的容错应用程序的建模模式,并显示了如何提出的模式可以在现实生活中的应用程序的子系统的上下文中使用。
2008-09-24 cs.SE
Revisiting Abstractions for Software Architecture and Tools to Support Them
本文回顾了1995年关于软件架构抽象的论文,将其置于软件开发抽象能力增强的历史背景中,反思其影响,并探讨该抽象识别策略在当前架构思想与挑战中的适用性。
2025-03-06 cs.SE