Timing Analysis of Embedded Software Updates
本文提出差分时序分析技术 RETA,通过代码切片和语句分类限定更新影响范围,集成于 aiT 并实现为 DELTA 工具,在保证 WCET 分析准确性的同时显著降低分析时间和内存消耗。
2023-07-07 cs.SE
Incremental Consistency Checking in Delta-oriented UML-Models for Automation Systems
自动化系统存在许多变体,并且可能随着时间的推移而发展,以便处理不同的环境上下文或满足不断变化的客户需求。这会导致设计时的复杂性增加以及繁琐的维护工作。我们已经提出了一种多视角建模方法来改进此类系统的开发。它通过使用具有活动、复合结构和状态图模型的知名UML模型在不同的抽象层次上运行。每个视角都通过delta建模进行了丰富,以管理可变性和演变。作为一个扩展,我们现在专注于开发一个有效的一致性检查方法,在几个层面上,以确保有效的自动化系统的变体。一致性检查必须为每个独立的透视图提供,在透视图之间以及在应用增量之后。
2016-04-01 cs.SE
Probabilistic Software Modeling
软件工程和软件的实现已经成为一项具有挑战性的任务,因为许多工具,框架和语言必须协调成一个功能块。这种复杂性增加了对测试和分析方法的需求,这些方法可以在软件增长和发展时帮助开发人员和工程师。公司用于测试和分析的预算资源是有限的,这突出了自动化对经济软件开发的重要性。我们提出了概率软件建模,软件建模的一个新的范例,建立在这样一个事实,即软件是一个易于监控的环境,统计模型可以建立。概率软件建模在不改变抽象层次的情况下为工程师提供了更多的理解。该方法依赖于面向对象编程的递归分解原理来构建概率模型的层次结构,该概率模型通过在软件系统的运行时收集的观察来拟合。这导致了一个模型网络,它反映了软件系统的静态结构,同时对其动态运行时行为进行建模。由此产生的模型可以用于测试用例生成,异常和离群值检测,概率程序模拟,或状态预测等应用。理想情况下,概率软件建模允许使用软件的整个统计建模和推理范围,从而实现软件的深入分析和生成过程。
2018-06-26 cs.SE
Software and System Modeling Based on a Unified Formal Semantics
建模和文档化是软件开发工程原则的两个基本要素。在过去的二十年中,已经提出了各种各样的描述和建模技术以及文档格式。然而,这些通常没有集成到一个连贯的方法中,模型和文档之间有明确的依赖关系。这阻碍了集中的软件开发以及提供强大的工具支持。在本文中,我们提出了一个统一的,正式的软件和系统建模的基础上的主要问题和大纲的解决方案。
2014-11-10 cs.SE
Software dependability modeling using an industry-standard architecture description language
在架构级别执行可靠性评估以及其他分析,既可以进行架构权衡,又可以预测架构决策对应用程序可靠性的影响。本文给出了使用AADL(体系结构分析与设计语言)建立软件系统体系结构可靠性模型的指导方针。它提出了可重用的容错应用程序的建模模式,并显示了如何提出的模式可以在现实生活中的应用程序的子系统的上下文中使用。
2008-09-24 cs.SE
Metrics for Software Process Simulation Modeling
背景:软件过程仿真(SPS)已经成为软件过程管理和改进的有效工具。然而,由于测量成本的负担和对领域知识的高需求,它在工业中的采用低于研究界的预期。从过程制定中提取具有真实数据的适当度量的困难是最大的挑战之一。目的:为软件过程(仿真)建模提供基于证据的过程度量支持。方法:一个系统的文献综述进行了扩展我们以前的审查系列,以得出一个全面的理解的过程建模的度量本体的元模型的度量在SPS。结果:我们确定了145个过程建模研究,共同涉及2130个指标,并使用编码技术进行分类。两个图表,说明指标之间使用的高频因果关系提出了两个层次的建模目的。我们重新审视了SPS数据准备阶段遇到的数据问题,并确定了相应的策略。结论:本研究的结果提供了一个基于证据的参考识别和SPS建模中的度量过程建模,并进一步有助于开发的知识体系的软件度量过程建模的背景下。此外,这项研究不仅限于过程模拟,但可以扩展到软件过程建模,一般。将仿真度量作为标准和参考,可以进一步激励和指导软件开发人员在实践中改进过程数据的收集、治理和应用。
2023-01-16 cs.SE
Low-Modeling of Software Systems
针对模型驱动工程中模型规约与管理日益复杂的问题,本文提出 low-modeling(低建模)概念,以增强现有技术并应对新一代软件系统的复杂性挑战。
2024-02-28 cs.SE
Software Development Processes in Ocean System Modeling
科学建模提供了现实世界系统的数学抽象,并构建软件作为这些数学抽象的实现。海洋科学是一门多学科学科,发展科学模型和模拟作为海洋系统模型,是一项重要的研究资产。在软件工程和信息系统研究中,建模也是一项必不可少的活动。特别地,用于业务过程管理和系统工程的业务过程建模是表示企业的过程的活动,使得当前过程可以被分析、改进和自动化。本文采用过程建模方法分析海洋科学软件开发过程,以提高海洋系统模型的工程化水平,更好地理解海洋科学中海洋系统模型的开发和维护。我们在半结构化访谈中采访了领域专家,通过主题分析对结果进行了分析,并通过业务流程建模符号BPMN对结果进行了建模。作为结果建模的过程描述了领域中软件开发的期望状态,这些状态通常尚未实现。这使得现有的基于仿真的系统工程的过程中,以改善这些过程模型的帮助。
2021-08-19 cs.SE
THE ADELE-TEMPO experience : an environment to support process modeling and enaction
以过程为中心的软件工程环境(PSEE)近年来吸引了大量的研究者。在这样的环境中,软件过程由PSEE明确描述和解释,允许软件活动自动化,辅助和强制执行。Lehman and Belady(1985)& Osterweil(1987)认为,这种能力是软件开发环境中提高软件产品质量和软件开发人员生产力的核心要素。我们在阿黛尔项目的框架内解决了这些问题。Adele内核,最初是一个配置管理系统,已经扩展到1)复杂产品模型的建模和支持:对象管理器2)软件过程的建模和支持:活动管理器和3)软件产品演化的建模和支持:配置管理器。对于数据和产品建模,ER/OO模型已经实现,包括SEE特定功能;在Adele内核(商业产品)之上,我们开发了一个Process Manager研究原型Tempo,这是一种基于两个主要概念的可执行形式主义:对象可能具有不同的描述(角色),这取决于使用它们的过程,并且过程通过显式连接进行同步和协调。ADL-Tempo是围绕软件产品、工作环境和软件过程的概念组织的。
2020-05-21 cs.SE
A System Modeling Approach to Enhance Functional and Software Development
本文提出了一种基于SysML的方法,以提高功能和软件开发过程中的工业环境。最近的技术变化,如电动汽车和重型工程机械自动化程度的提高,导致嵌入式软件的复杂性增加。因此,需要新的开发方法来解决灵活的功能开发,增强开发团队之间的沟通,并保持从设计概念到软件产品的可追溯性。所讨论的方法已经在开发新的传输系统(部分电气化)及其功能的背景下进行了实验。虽然建模方法是一个正在进行的工作,一些初步的成功,以及现有的差距指向未来的工作突出。
2019-06-20 cs.SE
QuanUML: Towards A Modeling Language for Model-Driven Quantum Software Development
本文提出QuanUML,一种扩展UML的量子软件建模语言,通过引入量子比特和量子门等构造支持量子及混合系统建模,并在长程纠缠和Shor算法上验证了其模型驱动开发的有效性。
2025-06-05 cs.SE
Modeling Software Development Methodologies: A Logic Based Approach
在过去的二十年里,软件开发行业的增长趋势使软件工程的不同方面对计算机科学研究社区更加有趣。软件开发生命周期是影响软件开发项目成败的重要因素之一。由于每种软件开发方法都相对地提供了自己的软件开发生命周期,因此将软件开发生命周期编码在工作流表示语言中可以帮助开发人员正确地管理他们的软件项目。此外,这种编码也可以在CASE工具中使用。在这份报告中,我们认为软件开发生命周期作为一个工作流程,可以表示为语义Web和基于规则的语言。这样的考虑让我们分析生命周期的属性。具体来说,我们采取了著名的面向代理的软件开发方法,并表明其相应的生命周期可以指定的事务逻辑容易和简洁。最后,事务逻辑中紧凑而清晰的生命周期表示可以在CASE工具中使用,以指导软件开发人员。
2016-08-03 cs.SE
Modeling and Selection of Interdependent Software Requirements using Fuzzy Graphs
软件需求选择就是要找到一组最优的需求,使软件的发布具有最高的价值,同时使成本保持在预算之内。然而,软件需求之间与价值相关的依赖关系可能会影响最优集的价值。此外,与价值相关的依赖性可能具有不同的强度。因此,在需求选择过程中,考虑与价值相关的依赖关系的存在和强度是很重要的。然而,现有的选择模型,要么假设软件需求是独立的,或者他们忽略了需求依赖关系的强度。本文提出了一个成本-价值优化模型,考虑价值相关的需求依赖的价值选择的需求(最优集)的影响。我们已经利用模糊图的代数结构建模价值相关的需求依赖关系和他们的优势。通过对一个实际软件项目的仿真研究,验证了该方法的有效性和实用性。
2020-03-03 cs.SE
Software Engineering Meets Systems Engineering: Conceptual Modeling Applied to Engineering Operations
模型对于许多科学领域都是至关重要的,包括软件工程、系统工程、企业建模和业务建模。本文着重于图解概念模型,而不是数学或计算模型,其中的概念模型是一个翻译的现实过程到一个抽象的机制,具有类似的结构和并行事件的外部过程。虽然存在各种建模方法,包括软件工程中的UML(统一建模语言)及其方言,系统工程中的SysML(系统建模语言),但在这些模型中出现了一些困难,包括与缺乏结构和行为的集成视图相关的模型多样性问题。本文概括了概念建模在组织中的应用。根据权威人士的说法,所谓的组织理论将组织描绘成类似机器的系统。作为一台机器,一个组织协调其各部分将输入转换为输出。因此,我们综合的概念,一个组织作为一台机器,并应用一种新的建模方法,称为思维机(TM)的实际工程操作。结果表明,TM方法作为高层次的系统建模的基础的可行性。
2021-10-26 cs.SE
Modeling Hierarchical Usage Context for Software Exceptions based on Interaction Data
在生产中捕获的用户与软件系统交互的痕迹通常用作用户体验测试的输入源。在本文中,我们提出了一种替代用途,引入了一种新的方法来建模用户交互痕迹丰富的另一种类型的数据收集在生产-软件故障报告组成的软件异常和堆栈跟踪。本文描述的模型旨在提高开发人员对特定软件异常周围环境的理解,并可以突出导致软件故障频率高的特定用户行为。由于组合数据源的复杂性和变化性,对交互跟踪和软件崩溃报告的组合进行建模以形成可解释的和有用的模型是具有挑战性的。因此,我们提出了一种概率无监督学习方法,适应嵌套层次狄利克雷过程,这是一种贝叶斯非参数主题模型,通常适用于自然语言数据。这个模型推断出一个主题树,每个主题描述一组通常同时出现的命令和异常。可以按层次结构解释主题树,以帮助对多种类型的异常和交互进行分类。我们将所提出的方法应用于从ABB RobotStudio软件应用程序收集的大规模数据集,并对其进行数值评估和RobotStudio开发人员的小调查。
2019-07-23 cs.SE
Roles in Software Development using Domain Specific Modeling Languages
领域特定建模语言(DSML)通过在DSML中建模需求并通过适当的生成器技术添加技术元素,成功地分离了软件系统的概念设计和技术设计。在本文中,我们描述了敏捷开发过程中的角色,使我们能够实现一个软件系统,使用特定领域的模型和源代码的组合。我们使用MontiCore框架描述了这样一个过程的设置,并通过描述一组具有不同个人技能的开发人员如何开发汽车HMI软件来展示其优势。
2014-09-22 cs.SE
The Case for Vibe Modeling: A Missing Step in AI-Based Trustworthy Software Development
University of Bayreuth(拜罗伊特大学);University of Regensburg(雷根斯堡大学)
本文提出在AI辅助软件开发中引入氛围建模作为轻量中间抽象,通过学生调查验证其在提升LLM输出理解、降低验证工作量及增强信任方面的潜力,为可信AI软件工程研究提供方向。
2026-07-31 cs.SE
Towards Fault Localization via Probabilistic Software Modeling
软件测试帮助开发人员识别bug。然而,意识到bug只是第一步。找到并纠正错误的程序组件对于高质量的软件来说同样困难和必要。错误定位自动地精确定位程序中现有的错误。这是一个难题,现有的方法还不够精确,无法在工业上广泛采用。我们建议通过概率软件建模(PSM)的故障定位。PSM分析程序的结构和行为,并综合概率模型(PM)的网络。每个PM用它的输入和输出对方法进行建模,并且能够评估运行时数据的可能性。我们使用这种可能性评估,以找到故障位置及其对相关代码元素的影响。结果表明,PSM是一个强大的框架,准确的故障定位。
2020-03-04 cs.SE
Large Language Models in Software Documentation and Modeling: A Literature Review and Findings
Comenius University Bratislava(布拉迪斯拉发康斯坦丁神学家大学)
本文综述了大语言模型在软件文档和建模中的应用,分析了相关任务、提示技术、评估方法及数据集。
2026-02-04 cs.SE
Toward Maximum Grip Process Modeling in Software Engineering
软件工程中的过程建模(PM)涉及到理解世界的特定方式。在这种情况下,哲学工作不仅在本质上是重要的;它也可以经得起一些更成熟的软件工程研究指标。面向对象的方法论将对象作为建模的中心概念。这篇文章来自于一系列的文章,这些文章集中在软件系统建模的分析阶段的背景下的思维概念。我们使用一个抽象的机器命名为Thinging Machine(TM)的机制,通过它的东西揭示自己。我们介绍了一个更深入的调查,一个大TM,标志着整体的实体建模系统。我们还提出了新的概念,如最大抓地力,这是指的重要性的粒度水平,其中最佳的可见性模型的意义是给定的。这项研究的结果表明,在PM领域的积极改善,可能会导致加强对面向对象的方法的理解。TM还提出了开发PM新方法的可能性。
2019-06-26 cs.SE
A Web-based modeling tool for the SEMAT Essence theory of Software Engineering
相对于更成熟的学科,软件工程缺乏一般的理论来建立它作为一门学科的基础。软件工程的本质理论(Essence)是由软件工程方法与理论(SEMAT)倡议提出的。本质目标是为软件工程实践及其广泛采用开发一个理论上的坚实基础。Essence还远未被学术界和工业界采用。SEMAT Accelerator(SematAcc)是一个用于软件工程的Web定位工具,它实现了SEMAT的Essence内核。SematAcc允许使用Essence,从而帮助理解它。该工具可以在受控实验和案例研究中教授,采用和研究Essence。
2013-07-31 cs.SE
Enhance accuracy in Software cost and schedule estimation by using "Uncertainty Analysis and Assessment" in the system modeling process
准确的软件成本和进度估计是软件项目成功的关键。由于其复杂性和不确定性,软件评估通常被称为“黑色艺术”,但它并不像人们想象的那样困难或令人困惑。事实上,一旦您了解了建模过程的不确定性强度和框架,生成准确的估计是很简单的。成功软件评估的奥秘:将学术信息和真实世界的经验提炼成软件专业人员的实用指南。而不是《双城之战》论文和僵化的建模技术,这将指导突出一组经过验证的程序,可理解的公式和技巧,个人和开发团队可以应用到他们的项目,以帮助实现估计熟练与选择适当的开发方法在软件生存周期的早期阶段,项目经理是低效的估计工作,进度,成本估算及其开发方法。这反过来又会使管理人员对软件项目进行有效的投标,并选择不正确的开发方法。这将直接影响生产力周期并增加不确定性。这成为项目失败的重要原因。因此,了解模型设计中不确定性的程度和来源,可以指导开发人员设计出准确的软件成本和进度估算,这对软件项目的成功至关重要。然而,一旦估计了所需的努力,几乎没有做任何工作来重新校准和减少初步估计的不确定性。
2012-01-13 cs.SE
Combinatorial Modeling and Test Case Generation for Industrial Control Software using ACTS
组合测试被认为是一种以较低成本创建测试用例的有效方法。然而,用于建模和组合测试生成的工业实用工具仍然稀缺。作为一个直接的影响,组合测试在工业上的应用有限,这使得人们对其实际用途提出了质疑。如果我们考虑将组合测试生成用于工业安全关键控制软件,例如在火车、飞机和发电厂中发现的软件,这种证据的缺乏就特别麻烦。为了研究组合测试的工业应用,我们评估了组合建模和测试生成的流行工具,在工业规模的IEC 61131-3工业控制软件上运行的可编程逻辑控制器(PLC)的适用性和测试效率。我们评估了IEC 61131-3工业软件组合建模的直接适用性,以及在生成时间和测试套件大小方面的效率。我们使用了瑞典庞巴迪运输公司提供的17个工业控制程序,并用于训练控制管理系统。我们的研究结果表明,并不是所有的算法和交互强度的组合可以在一个现实的截止时间内生成一个测试套件。的建模过程和效率评估的结果是有用的从业者考虑使用组合测试的工业控制软件,以及研究人员试图提高使用这种组合测试技术。
2018-06-11 cs.SE
Development of a Meta-language and its Qualifiable Implementation for the Use in Safety-critical Software
在工业环境中,使用特定领域的建模来开发复杂的(网络物理)系统正在获得越来越多的认可。领域特定的建模允许对复杂的系统和数据进行抽象,以实现更高效的系统设计、开发、验证和配置。然而,没有现有的(Meta)建模框架可以使用合理的努力,在认证的软件,到目前为止,无论是系统的开发,也不为系统功能的执行。对于在安全关键过程或系统中使用来自特定领域建模的(开发)工件,需要通过后续(手动)验证或使用(预)合格软件来确保其正确性。现有的元语言通常包含很难或不可能以可限定的方式实现的建模元素,导致大量的手动,随后的认证工作。因此,我们的目标是开发一个(Meta)建模框架,可用于认证的软件。这可以显著减少安全关键系统的开发工作,并充分发挥特定领域建模的优势。在这篇博士论文中考虑的框架组件包括:(1)一个基本的元语言,(2)一个可限定的运行时环境,(3)一个合适的持久性。基本的\mbox{(meta-)}建模语言主要基于UML标准,但通过多层建模概念(如深度实例化)进行了增强。支持可能的资格,元语言是使用高度限制,但正式可证明的程序设计语言Ada SPARK实现的。
2021-11-08 cs.SE
SmartDelta Methodology: Automated Quality Assurance and Optimization for Incremental System Engineering
本文介绍SmartDelta项目提出的SmartDelta方法论,一种领域无关的增量管理概念,通过六个阶段识别工程差距并发现新工具,同时展示七个工具实例。
2025-02-26 cs.SE
Towards Semantic Clone Detection via Probabilistic Software Modeling
语义克隆是具有相似行为但不同文本表示的程序组件。语义相似度检测是一个难点,语义克隆检测也是一个有待解决的问题。我们提出了语义克隆检测通过概率软件建模(PSM)作为一个强大的方法检测语义等价的方法。PSM检查程序的结构和运行时行为,并合成概率模型(PM)网络。网络中的每个PM代表程序中的一个方法,并且能够生成和评估运行时事件。我们利用这些功能来准确地找到语义克隆。实验结果表明,该方法可以在完全不存在句法相似性的情况下检测出语义克隆,具有较高的准确率和较低的出错率。
2020-01-21 cs.SE
Thinging as a Way of Modeling in Poiesis: Applications in Software Engineering
从软件设计的角度来看,清晰的设计定义可以提高项目的成功率和开发效率。即使重点是软件工程,在本文中,我们认为设计的概念,从更广泛的观点,创造和生产的文物现象的研究领域。在poiesis中,设计通过建模的媒介进行操作。根据几个来源,目前还没有系统的综合知识体系,从业者可以在设计基于计算机的建模语言时参考。建模语言(如UML)是基于实践的,很少有坚实的理论支撑-无论是数学的,本体论的还是伴随语言使用的。在本文中,我们建议采用最近增加的图形语言,思维机(简称TM),作为一种设计语言,在一般领域的Poiesis和我们将其应用于软件工程设计的思维机。我们展示了设计的中间步骤,导致产生一个TM模型的案例研究。案例研究是从一个源,其中一个完整的基于UML的设计。对比这两种方法产生的模型,指出TM作为设计领域的集成和统一建模语言的可行性。
2019-12-12 cs.SE
Guided Support for Collaborative Modeling, Enactment and Simulation of Software Development Processes
近年来,分布式软件开发的重要性在软件工程社区中得到了越来越多的关注。经济约束、越来越多的开发活动外包以及公司日益增长的空间分布带来了如何组织分布式开发的挑战。在这篇文章中,我们认为,一个共同的过程理解是成功的分布式开发所必需的。集成的过程规划、指导和实施被视为使技术能够达到独特的过程视图。我们勾勒出一个综合的软件过程建模环境SPEARMINT和XCHIPS系统基于Web的过程支持。因此,规划人员和开发人员通过电子过程指南(EPG)获得了协作规划和制定支持以及高级过程指南。我们描述了使用这种集成环境的学习系统的开发使用的案例研究。
2014-02-18 cs.SE
Existential Ontology and Thinging Modeling in Software Engineering
这项研究是以前的一项研究的续集,题为软件工程师的思考,这表明,与对象化相比,事物的概念在建模中有一些有益的方向。要解释海德格尔的物的概念的根源,就必须把物纳入概念建模。这就需要理解海德格尔的存在本体论,以确定任何与物的关系。本文是对存在本体论的一种探索,旨在进一步澄清物的概念。我们首先回顾Thinging Machine(TM)在Thinging for Software Engineers中介绍的,并提供了一个完整的例子,说明它在建模订购系统中的应用。接下来,我们将讨论世界中事物的存在(存在),以及海德格尔对时间的解释,时间是任何对存在的理解的一个可能的视界。我们强调,TM与海德格尔的存在概念及其对此在的详尽分析没有直接关系。然而,研究非此在的事物可能会有一些好处,可以为思维提供一个哲学基础,就像TM建模中所使用的那样。有趣的是,TM可以用来建模存在本体,从而提高对它们的理解水平。
2019-03-26 cs.SE
A Systematic Methodology for Developing Discrete Event Simulation Models of Software Development Processes
到目前为止,已经有几个开发软件过程模拟器的努力。然而,开发模拟器的方法似乎是临时的,没有系统的方法存在。由于支持软件开发的建模和仿真应该变得更加流行(有迹象表明它确实如此),因此需要将建模从工艺迁移到工程。本文提出了这样一个系统的方法,专注于离散的基于仿真的决策模型的开发,但可扩展到其他建模方法。
2014-03-14 cs.SE
CM-CASL: Comparison-based Performance Modeling of Software Systems via Collaborative Active and Semisupervised Learning
由于复杂的配置空间和昂贵的性能评估,大型软件系统的配置调优通常具有挑战性。大多数现有的方法遵循两个阶段的过程,首先学习基于回归的性能预测模型上可用的样本,然后使用学习的模型搜索具有令人满意的性能的配置。由于运行具有特定配置的大型软件系统所需的大量时间和资源,这种基于回归的模型通常会受到样本稀缺的影响。此外,以前的研究表明,即使是一个高度准确的基于回归的模型可能无法辨别两种配置之间的相对优点,而性能比较实际上是配置调整的一个基本策略。为了解决这些问题,本文提出了CM-CASL,基于比较的软件系统性能建模方法,通过协作主动和半监督学习。CM-CASL学习一个分类模型,比较两个给定配置的性能,并通过人类专家和分类器使用主动和半监督学习的集成进行协作标记过程来增强样本。实验结果表明,CM-CASL在分类精度和排序精度方面均优于两种最先进的性能建模方法,从而为后续的配置调优工作提供了更好的性能模型。
2023-03-28 cs.SE
Merging Object and Process Diagrams for Business Information Modeling
在为伯尔尼大学开发信息系统时,我们面临着两个主要问题:管理软件变更和调整业务信息模型。存在非常适合软件开发团队的软件技术,但是获得的模型对于业务用户来说通常过于复杂。我们将首先强调在设计业务信息模型时遇到的概念性问题。然后,我们将建议合并类图和业务流程建模,以实现必要的透明度。最后,我们将提出一个建模工具,我们开发的,使用试点案例研究,有助于显示一些双模型方法的优点。
2008-04-02 cs.SE
Modeling Cloud Architectures as Interactive Systems
云软件的开发和维护因复杂但关键的技术要求而变得复杂,这些技术要求彼此紧密耦合,并与软件的实际业务功能紧密耦合。因此,设计、实现、部署和维护活动的复杂性增加。我们提出了一种架构描述语言,通过将云软件建模为交互式系统来提高技术抽象水平。我们展示了它的模型如何对应于一个架构风格,特别是满足基于云的网络物理系统的要求。该结果为基于架构驱动的模型的云软件工程方法提供了基础。
2014-08-25 cs.SE
Thinging vs Objectfying in Software Engineering
在本文中,我们提出了使用的建模方法的概念的基础上的东西,重点是当前阶段的研究是在软件系统建模的分析阶段。面向对象的方法,它把对象作为一个中心概念,提供了机会,探索应用thinging对象的重新概念化。几个面向对象的例子是重铸在面向事物的建模方面。结果表明,一个积极的发展,导致几种可能的选择:(1)补充面向对象(OO)的范式与额外的符号,(2)促进进一步理解的OO范式的某些方面。开发一种新的基于思维的建模方法的可能性也存在。
2018-10-25 cs.SE
Dynamic Prediction of Delays in Software Projects using Delay Patterns and Bayesian Modeling
针对敏捷软件项目变化多、静态工作量估算模型无法适配执行中变化的问题,提出结合延迟模式与贝叶斯建模的动态延迟预测模型,经ING真实数据验证,预测准确率显著优于静态及现有最优方法。
2023-10-02 cs.SE
Hierarchical Variability Modeling for Software Architectures
层次分解的基于组件的系统开发通过支持工作的分配和组件的重用降低了设计复杂性。对于产品线开发,必须通过适当的方法来表示要在不同产品中部署的组件的可变性。在本文中,我们提出了层次化的可变性建模,它允许指定组件的可变性集成的组件层次结构和本地的组件。组件可以包含确定组件可能变化的变化点。相关的变量定义了如何在不同的组件配置中实现这种可变性。我们提出了一个元模型的层次可变性建模的概念思想形式化。为了实现所提出的方法与工具的支持,我们扩展了现有的建筑描述语言MontiArc与层次可变性建模。我们举例说明了所提出的方法,从汽车系统领域的一个例子。
2014-09-08 cs.SE
Modeling Library Dependencies and Updates in Large Software Repository Universes
第三方开源软件(OSS)的流行(重用)证明了托管存储库(如maven)对当今软件开发的影响。更新库至关重要,最近的研究强调了与老化的OSS库相关的漏洞。迁移到更新的库的决定可能是微不足道的(安全威胁),也可能是复杂的(评估适应更改所需的工作)。通过利用“智慧的软件库人群”,我们提出了一个简单而有效的方法来推荐“同意”库更新。我们的Software Universe Graph(SUG)对库依赖性进行建模,并从超级存储库中挖掘更新信息,以提供不同的度量和可视化,帮助做出更新决策。为了进行评估,我们首先从6,374个maven独特工件的188,951个节点构建了一个SUG。然后,我们将展示如何通过真实世界的例子来应用我们的指标和可视化。作为扩展,我们展示了SUG如何比较不同超级存储库之间的依赖关系。从100个GitHub应用程序的样本中,我们的方法发现,平均79%相似的重叠依赖组合存在于maven和github超级存储库世界之间。
2017-09-14 cs.SE
Modeling Events and Events of Events in Software Engineering
模型是隐藏系统非本质特征的部分现实的简化表示。它提供了一种降低复杂性的方法,以及可视化和通信,并为构建它提供了基础。一个新的模型,称为思维机(TM),最近被开发作为输入-过程-输出框架的扩展。本文的重点是事件的TM,提供了一个新的视角,捕捉系统的动态行为和一种手段,图形化建模事件。事件概念是一个重要的因素,它为规范提供了语义,并提供了一种自然的方式来指定系统组件的接口和可观察的行为。具体而言,五个通用TM事件过程进行了分析:创建,处理,接收,发布和传输。所有事件都可以映射(或简化)到这五个事件流程的事件
2020-01-31 cs.SE
Mind the Ethics! The Overlooked Ethical Dimensions of GenAI in Software Modeling Education
本文通过系统文献综述发现,在最初检索的1,386篇论文中仅3篇探讨软件建模教育中GenAI的伦理问题,凸显了伦理话语缺失并呼吁建立结构化伦理框架。
2025-09-17 cs.SE
Underpinning Theories of Software Engineering: Dynamism in Physical Sources of the Shannon Weaver Communication Model
本文的目的是有助于进一步理解的动力学(系统模型的动态行为)的数学和概念建模的系统。这项研究是在声称软件工程缺乏基础科学理论的背景下进行的,无论是对于它所生产的软件还是它所使用的过程。研究文献提出,信息论可以为软件工程提供这样的好处。我们探讨的动态表达能力的概念建模作为一个软件工程的工具,可以表示物理系统的香农韦弗通信模型(SWCM)。具体地,SWCM中的建模源是物理现象(可能发生在世界上的变化,例如,投掷硬币),从而产生可观察事件和未寻址信息的数据。该模型反映了将SWCM扩展应用于软件工程概念建模的可行性。
2020-10-02 cs.SE
Building Sustainable Software - The CSDMS Approach
CSDMS,社区表面动力学建模系统,是一个NSF资助的项目,其重点是帮助地球和海洋系统模型用户和开发人员的多样化社区使用和快速创建强大的软件。为此,CSDMS开发,整合,存档和传播地球系统模型和工具,以建立一套必要的工具,以模拟地球系统的国际(67个国家)社区的目标。建模人员使用CSDMS访问数百个开源表面动力学模型和工具,以及模型元数据。这样的模型存储库增加了模型的透明度,并通过呈现建模工作的当前状态来帮助消除重复。为了提高软件的可持续性、可组合性和互操作性,CSDMS促进了定义公共建模接口、模型之间的语义中介和模型元数据的标准。通过在线资源和研讨会,CSDMS促进了软件工程最佳实践,这对我们建模社区中的许多开发人员来说是陌生的。例如,版本控制、单元测试、持续集成、测试驱动开发和编写良好的干净代码都是CSDMS教育任务的主题。
2014-11-15 cs.SE
From Software Architecture Structure and Behavior Modeling to Implementations of Cyber-Physical Systems
信息物理系统(CPS)的软件开发是一项复杂的活动,因为这些系统本身就很复杂。CPS的工程化需要多种分布式软件模块的组合和交互。描述这两个,一个系统的架构和行为的综合模型,产生了许多优点,以应付这种复杂性:模型是平台独立的,可以分解为独立开发的专家各自领域,是高度可重用的,并可能受到正式的分析。在本文中,我们介绍了一个代码生成框架的MontiArcAutomaton建模语言。CPS被建模为具有嵌入式I/O的组件和连接器架构!自动机在开发过程中,这些模型可以使用形式化方法进行分析,以图形方式进行编辑,并部署到各种平台。为此,我们提出了四个基于MontiCore代码生成框架的代码生成器,它们实现了从MontiArcAutomaton模型到Mona(形式分析)、EMF Ecore(图形编辑)以及Java和Python(部署)的转换。基于这些原型,我们讨论了它们的共性和差异,以及语言和应用程序的具体挑战,侧重于代码生成器的发展。
2014-08-25 cs.SE
Towards Software Analytics: Modeling Maintenance Activities
雷曼定律告诉我们,随着时间的推移,软件系统将越来越不令用户满意,除非它不断地适应新的需求。了解软件维护可以潜在地减轻行业从业者目前经历的许多痛苦,并有助于减少不确定性、提高成本效益、可靠性等。研究界将软件维护分为3个主要活动:纠正:故障修复;完善:系统改进;适应:新功能引入。在这项工作中,我们试图模拟软件维护活动和设计一个提交分类方法能够产生一个高质量的分类模型。我们对我们的方法和现有技术进行了比较分析,基于11个流行的开源项目,我们手动分类了1151个提交,每个研究项目中有超过100个提交。我们设计的模型能够为测试数据集实现76%的准确度和63%的Kappa(在此上下文中被认为是“良好”),提高了20个百分点以上,在跨项目分类的背景下相对提高了约40%。然后,我们利用我们的提交分类方法来演示两个应用程序:(1)一个工具,旨在提供一个直观的可视化软件维护活动随着时间的推移,(2)深入分析维护活动和单元测试之间的关系。
2019-03-09 cs.SE
Requirements variability specification for data intensive software
目前,特征建模技术在软件需求规约中的应用,增加了对数据密集型软件产品线(DISPLs)需求建模的变化支持。它被认为是表达不同产品需求之间的共性和可变性的最简单和最有效的方法。最近的几项工作,在DISPL的要求,处理数据的变化,不同的模型,这是远离现实世界的概念。这导致了分析、设计、实现和维护这种可变性的困难。然而,这项工作提出了一个软件需求规格说明方法的基础上的概念更接近的性质,这是遗传学的启发。基于遗传学的方法学在DISPL的需求变异性描述中取得了重要的成果,特征模型中的特征和关系丰富了需求变异性管理,这在目前的相关研究中还没有得到考虑,基于遗传学的方法学在数据密集型软件需求变异性描述中有着广阔的应用前景。
2019-04-28 cs.SE
Towards a Quantum Software Modeling Language
我们为量子软件的建模语言制定了原则。我们提出了一个最小的扩展集,著名的统一建模语言(UML),使其能够有效地模拟量子软件。这些扩展是分开的,并且作为一个整体独立于UML。因此,它们可以用于扩展任何其他软件建模语言,或者作为一种全新语言的基础。我们认为,这些扩展是必要的,也足以建模,抽象,任何一块量子软件。最后,我们提供了一个小的例子,展示了扩展集的有效性。
2020-06-30 cs.SE quant-ph
Software Engineering Modeling Applied to English Verb Classification (and Poetry)
在需求规格说明中,软件工程师创建所设想系统的文本描述,并使用通用建模语言(UML)和系统建模语言(SysML)等工具开发概念模型。一个这样的工具,称为FM,最近已开发作为输入-过程-输出(IPO)模型的扩展。IPO已被广泛用于许多跨学科的应用,并被描述为所有描述工具中最基本和最重要的一个。本文是对IPO过程的一次尝试。描述过程的基本方法是用动词。这种语言的使用对系统建模有着重要的意义,因为动词表达了所有事物的各种动作和运动。很明显,建模需要检查动词。因此,本文将英语动词作为了解过程的桥梁,而不是作为语言学分析,而是为了揭示过程的语义,特别是形成FM状态基础的五个动词:创建,处理,接收,释放和转移。本文主要讨论动词的分类,特别是如何对动词的动作进行图形化建模。从语言学的角度来看,根据一些研究人员的说法,需要进一步探索动词类的概念,以用于现实世界的任务,如机器翻译,语言生成和文档分类。因此,这种非语言学的研究可能会对语言学有所裨益。
2017-10-26 cs.SE
Quartermaster: A Tool for Modeling and Simulating System Degradation
软件系统必须能够容忍它们所依赖的组件的降级,软件工程师使用一些模式和技术来确保他们的系统优雅地降级。尽管这些技术在实践中是可用的,但调优和配置很难做到正确,而且在复杂系统中探索对组件和技术的可能更改是昂贵的。为了填补这些空白,我们提出了Quartermaster来建模和仿真系统和容错技术。我们预计Quartermaster将有助于进一步研究优雅降级,并帮助软件工程师了解最适合他们用例的技术。
2021-03-05 cs.SE
The Sustainability Assessment Framework Toolkit: A Decade of Modeling Experience
本文介绍了可持续性评估框架(SAF)工具包,该工具包基于与工业伙伴十余年的合作经验开发,旨在支持软件架构师和设计决策者将可持续性作为软件质量属性进行建模与测量,并总结了经验教训及未来扩展计划。
2024-10-19 cs.SE
The iEnvironment Platform: Developing an Open Science Software Platform for Integrated Environmental Monitoring and Modeling of Surface Water
本文介绍了iEnvironment的发展,一个开放的科学软件平台,支持监测和建模方面的地表水。该平台支持科学和工程研究,特别是在创建,共享,分析和维护大数据和开放数据的背景下。在这个大数据时代,iEnvironment促进了计算机科学家和软件开发人员支持的科学和研究学科之间的开放数据资源和研究合作。
2018-12-25 cs.CY cs.SE
Code Generator Composition for Model-Driven Engineering of Robotics Component & Connector Systems
用于机器人应用的工程软件需要多领域和特定于应用的解决方案。模型驱动工程和建模语言集成为开发专门的、可重用的机器人软件架构模型提供了方法。代码生成器将这些独立于平台的模型转换为特定于机器人平台的可执行代码。多领域应用的生成式软件工程不仅需要集成建模语言,还需要集成验证机制和代码生成器。在本文中,我们勾勒出一个概念模型的代码生成器组成,并显示了一个实例,这个模型中的MontiArc自动机框架。MontiArcAutomaton允许使用不同的组件行为建模语言将软件架构建模为组件和连接器模型。代码生成器集成的有效手段是基于模型的机器人软件工程中applicationspecific语言的事后集成的必要条件。
2015-05-05 cs.SE
A Case Study on Model-Based Development of Robotic Systems using MontiArc with Embedded Automata
服务机器人的软件开发本质上是复杂的。即使是单个机器人也需要多个传感器、执行器和软件模块的组合。系统通常由领域专家组开发,很少有软件工程专家。因此,最终的软件系统是在单一平台上解决单一问题的单片程序。我们声称,以模块化的方式对机器人的结构和行为进行建模,可以获得更好的可重用软件。我们报告的研究与结构和行为建模语言MontiArcAutomaton的机器人软件的建模。本研究评估的好处和困难,基于模型的机器人软件开发使用MontiArc-Automaton。我们的研究结果是基于一项调查,与参与者的讨论,以及他们发展行为的关键数字。我们提出的项目,我们的研究,经验教训,以及未来的工作的基础上获得的见解
2014-08-25 cs.SE
Modeling Languages: metrics and assessing tools
任何传统的工程领域都有严格评估其产品质量的指标。工程师知道,产量必须满足要求,必须符合生产和市场规律,必须具有竞争力。软件工程这一新领域的专业人员几年前开始定义度量标准来评估他们的产品:单个程序和软件系统。这一关切促使不仅需要评估结果,而且需要评估其发展过程和所使用的工具。在这种情况下,评估程序设计语言的质量是一个合理的目标;以类似的方式,关注模型和建模方法是有意义的,因为越来越多的人从建模阶段开始软件开发过程。在本文中,我们介绍和激励模型的质量评估在软件开发周期。在对这个主题进行了一般性的讨论之后,我们将注意力集中在最流行的建模语言-UML -表示度量。通过案例研究,我们提出并探讨了两种工具。最后,我们确定了工具方面仍然缺乏的东西。
2012-06-20 cs.SE
Elicitation and Modeling Non-Functional Requirements - A POS Case Study
正确的需求管理对于在有限的时间和成本内成功开发软件至关重要。非功能性需求(NFR)是比较不同软件系统的关键标准之一。在大多数软件开发中,NFR都被指定为软件的附加需求。NFR,如性能,可靠性,可维护性,安全性,准确性等,必须在软件开发的早期阶段作为功能需求(FR)加以考虑。然而,识别NFR并不是一件容易的事情。虽然有发达的技术来引出功能需求,但缺乏NFR的引出机制,并且关于NFR的引出技术没有适当的共识。在需求分析中,NFR的获取被认为是一项具有挑战性的工作。本文提出了一种基于UML用例的查询方法来识别和分类系统的NFR。所提出的方法是通过使用销售点(POS)的案例研究说明
2014-03-08 cs.SE
Energy Flow Graph: Modeling Software Energy Consumption
Dalhousie University(达尔豪斯大学)
本文提出能量流图模型,用于分析软件执行路径的能耗差异,通过静态分析和级联模型实现能耗优化,展示在不同领域中的应用效果。
2026-03-17 cs.SE