Establishing Role-based Access Control in Viewpoint-oriented Variability Management
多年来,过程角色被用于构建单个系统开发中的复杂工程过程。通常,每个角色都有特定的职责,特定的信息需求源自这些职责。在可变性软件工程中,特定于角色的信息需求影响可变性信息。为了控制对可变性信息的访问,我们建议使用显式访问控制模型的概念。我们集成了访问控制模型和可变性建模语言的概念层面上。此外,我们扩展的变异性建模语言正式定义的操作。基于此扩展,我们提出了一个访问控制模型和可变性建模语言的形式化集成。我们的解决方案允许显式定义访问控制的可变性信息的正式基础上。
2017-03-08 cs.SE
First-Class Variability Modeling in Matlab/Simulink
现代汽车有很多不同的款式。因此,必须在开发过程的所有阶段处理可变性,特别是在使用Matlab/Simulink进行基于模型的软件密集型功能开发期间。目前,可变性通常被编码在功能模型中,导致所谓的150%模型很容易变得非常复杂,并且不能扩展到更大的产品线。为了解决这些问题,我们提出了一种基于delta建模概念的Matlab/Simulink模块化可变性建模方法[8,9,24]。功能变体由封装一组修改的delta来描述。可以将一系列增量应用于核心产品,以获得所需的变体。我们提出了一个原型实现,这是集成到Matlab/Simulink,并提供三角洲模型的图形编辑。
2014-08-25 cs.SE
Modeling Language Variability
定义建模语言变体的系统方法对于使语言适应领域或项目特定需求非常有用。变体可以通过调整语言的语法或语义来获得。在本文中,我们采取了一种形式化的方法来定义建模语言的可变性,并展示了这如何有助于推理语言变体,模型,以及它们的语义形式。我们引入语义语言细化的概念,这意味着一个语义变体是由另一个隐含的。开放建模语言提供的所有变化点,产生了该语言的内部语义的概念。不依赖于特定变体的选择的建模语言的属性被称为关于变体点的不变语言属性。因此,这些属性遵循模型或语言的内部语义。
2014-09-22 cs.SE
Modeling Variability in Template-based Code Generators for Product Line Engineering
从抽象模型生成软件是模型驱动工程的主要活动。可适应和可扩展的代码生成器对于满足不断变化的技术和用户需求非常重要。然而,它们不太成熟,因为可变性通常被设计为单片系统的配置选项。因此,代码生成通常与一组固定的功能相关联,在不同的上下文中几乎不能重用,并且没有配置变体的方法。在本文中,我们提出了一种开发基于模板的代码生成器产品线的方法。这种方法应用了面向特性编程的概念,使可变性变得明确和可管理。此外,它依赖于代码生成器模板中的显式可变区域(VR)、VR的细化以及模板和细化到可重用层中的聚合。混凝土产品是通过选择一个或多个层来定义的。如有必要,会自动选择因VR细化而需要的其他层。
2016-06-09 cs.SE
Requirements variability specification for data intensive software
目前,特征建模技术在软件需求规约中的应用,增加了对数据密集型软件产品线(DISPLs)需求建模的变化支持。它被认为是表达不同产品需求之间的共性和可变性的最简单和最有效的方法。最近的几项工作,在DISPL的要求,处理数据的变化,不同的模型,这是远离现实世界的概念。这导致了分析、设计、实现和维护这种可变性的困难。然而,这项工作提出了一个软件需求规格说明方法的基础上的概念更接近的性质,这是遗传学的启发。基于遗传学的方法学在DISPL的需求变异性描述中取得了重要的成果,特征模型中的特征和关系丰富了需求变异性管理,这在目前的相关研究中还没有得到考虑,基于遗传学的方法学在数据密集型软件需求变异性描述中有着广阔的应用前景。
2019-04-28 cs.SE
Evaluation of Variability Concepts for Simulink in the Automotive Domain
在Matlab/Simulink中对可变性进行建模变得越来越重要。我们采用了Matlab/Simulink中已经包含的两个可变性建模概念和我们自己的概念,并对它们进行了评估,以找出哪一个最适合在汽车领域建模可变性。我们与大众汽车公司的开发人员进行了一项对照实验,以确定开发人员更喜欢哪种概念,以及他们的偏好是否与可衡量的性能因素相一致。我们发现,所有现有的概念都是可行的方法,Delta方法既是首选概念,也是客观上最有效的方法,这使得Delta-Simulink成为汽车领域模型可变性的良好解决方案。
2015-09-08 cs.SE
variability.dev: Towards an Online Toolbox for Feature Modeling
针对现有在线特征模型编辑器功能不足、缺乏维护或需离线安装的问题,研究团队推出基于FeatureIDE库开发的在线特征建模工具箱variability.dev预览版,包含协作编辑器和在线配置器,满足建模人员的各类操作与协作需求。
2025-06-11 cs.SE
Delta Modeling for Software Architectures
架构建模是现代软件开发的一个组成部分。特别是,不同的系统受益于精确的架构模型,因为类似的组件通常可以在不同的系统变体之间重用。然而,在不同的系统开发的所有阶段,系统的可变性,必须考虑和适当的手段建模。Delta建模是一种独立于语言的系统可变性建模方法。一组不同的系统由一个核心系统和一组指定对核心系统的修改的增量表示。在本文中,我们给出了第一个草图,如何应用三角洲建模MontiArc,现有的架构描述语言,以获得一个集成的建模语言的架构变化。所开发的语言MontiArc允许对可变软件架构进行模块化建模,并支持主动式和提取式产品线开发。
2014-09-08 cs.SE
Variability Modeling for Customizable SaaS Applications
当前大多数软件即服务(SaaS)应用程序都是作为可定制的面向服务的应用程序开发的,通过一个应用程序实例为大量租户(用户)提供服务。当前SaaS应用程序的快速发展增加了研究可定制SaaS应用程序的软件产品线的共性和可变性的需求。在运行期间,需要可定制性来满足不同租户的需求。在开发过程中,需要定义和实现SaaS应用程序族中的通用性和可变性,以便以较低的成本、较短的时间和较高的质量开发可重用、灵活和可定制的SaaS应用程序。本文采用正交可变性模型(OVM)将可变性建模在一个分离的模型中,生成简单易懂的定制模型。此外,还扩展了面向服务的体系结构建模语言(SoaML),以定义和实现SaaS应用程序开发过程中的通用性和可变性。
2014-09-07 cs.DC cs.SE
Applying AOSE Concepts to Model Crosscutting Variability in Variant-Rich Processes
软件过程模型需要是丰富的变体,在这个意义上,它们应该是系统地可定制的特定项目目标和项目环境。由于现代过程建模语言中缺少可变性机制,因此目前对富可变过程(VRP)进行建模非常困难。来自其他领域的可变性机制,如程序设计语言,可能适合于可变性的表示,并可以适应于软件过程的建模。软件产品线工程(SPLE)的机制和面向方面的软件工程(AOSE)的概念在建模可变性时显示出特别的前景。本文提出了一种方法,集成可变性的概念,从SPLE和AOSE在设计的VRP方法的系统支持裁剪软件过程。这种方法也已经在SPEM中实现,从而产生了vSPEM符号。它已被用于一个试点应用程序,这表明我们的方法的基础上AOSE可以使过程剪裁更容易和更有成效。
2013-12-02 cs.SE
Evolving Delta-oriented Software Product Line Architectures
多样性在现代软件系统中很普遍。同时存在几种系统变体,以适应不断变化的用户需求。此外,软件系统随着时间的推移而发展,以适应其应用环境中的意外变化。在现代软件开发中,软件体系结构建模是通过体系结构分解来处理系统复杂性的重要手段。这就需要一种能够表示空间和时间可变性的体系结构描述语言。在本文中,我们提出了三角洲建模的软件体系结构作为一个统一的建模形式主义的建筑在空间和时间上的变化。为了避免产品线模型在系统演化下的退化,我们提出了重构技术来维护和提高可变性模型的质量。使用一个正在运行的例子,从汽车领域,我们评估我们的方法进行了案例研究,比较三角洲建模与注释性的可变性建模。
2014-09-08 cs.SE
Local Features: Enhancing Variability Modeling in Software Product Lines
本文提出局部特性概念,通过多模型形式化建立其与系统元素的关系,使应用工程师能在配置时决定特性的具体应用位置,从而在应用工程阶段实现更高的定制化水平。
2024-03-23 cs.SE
Variability Modeling of Products, Processes, and Resources in Cyber-Physical Production Systems Engineering
针对CPPS工程中生产步骤与资源配置依赖隐性知识、难以复现且低效的问题,提出eIPSE方法及工具链,自动派生产品、过程和资源可变性模型并生成控制代码,真实用例与用户研究验证了其实用性。
2024-02-15 cs.SE
Clafer: Lightweight Modeling of Structure, Behaviour, and Variability
嵌入式软件在规模和复杂性上快速增长,导致复杂体系结构和复杂控制的紧密混合。因此,软件规格说明需要对系统的结构和行为进行建模。不幸的是,现有的语言没有很好地集成这些方面,通常优先考虑其中之一。通常为每个方面开发一种单独的语言。在本文中,我们贡献Clafer:一个小语言,试图解决这一挑战。它结合了丰富的结构建模与最先进的行为形式主义。我们不知道有任何其他建模语言可以无缝地结合系统和软件建模的这些方面。我们展示了如何Clafer,在一个单一的统一的语法和语义,允许捕捉功能模型(可变性),组件模型,离散控制模型(自动机)和可变性涵盖所有这些方面。该语言是建立在一阶逻辑之上的,其基本实体上的量词(用于建模结构)与线性时态逻辑(用于建模行为)相结合。在这个语义基础之上,我们建立了一个简单但富有表现力的语法,精心挑选的语法扩展,涵盖层次建模,关联,自动机,场景,和德怀尔的属性模式丰富。我们使用功率窗口案例研究评估Clafer,并将其与其他与其范围(SysML,AADL,Temporal OCL和Live Sequence Charts)基本重叠的符号进行比较,讨论使用单一符号的好处和危险。
2018-07-23 cs.PL cs.SE
On the Challenges of Transforming UVL to IVML
本文探讨 UVL 与 IVML 可变性模型互转中的语义保持与信息丢失挑战,并基于 TRAVART 提出一种尽可能减少信息损失的 UVL 到 IVML 单向转换。
2024-03-04 cs.SE
Higher-Order Process Modeling: Product-Lining, Variability Modeling and Beyond
我们提出了一个图形化的和动态的框架,用于绑定和执行业务流程模型。它被定制为集成1)图形化建模的ad hoc流程,2)在(互联网)网络中发现的第三方服务,以及3)解决特定情况任务的(动态)合成流程链,不仅在设计时进行合成,而且在运行时进行合成。我们的方法的关键是引入类型安全的堆栈二阶执行上下文,允许更高阶的流程建模。受我们底层严格的面向服务的抽象概念的影响,这种方法也适合于技术知识很少的应用程序专家使用:用户可以在流程执行期间选择,修改,构造并传递(组件)流程,就像它们是数据一样。我们说明了我们的框架沿着一个具体的,现实的(业务)流程建模方案的影响和本质:斯普林格的基于浏览器的在线会议服务(OCS)的发展。我们的新框架的最先进的功能,允许一个结合在线合成与合成过程集成到运行的应用程序。这种能力导致了一种特别灵活的实现自适应的方法,以及一种特别简洁和强大的方法,不仅在设计时,而且在运行时实现可变性。
2013-09-20 cs.PL cs.SE
Pimp My LLM: Leveraging Variability Modeling to Tune Inference Hyperparameters
Univ. Lille, CNRS, Inria, Centrale Lille, UMR 9189 CRIStAL, F-59000, Lille(里尔大学、国家科学研究中心、法国国家信息与自动化技术研究所、中央理工学院、UMR 9189 CRIStAL、法国里尔)
本文通过变异性建模系统分析大语言模型推理配置,揭示超参数间的权衡关系,并支持基于有限测量预测推理行为,推动软件工程与机器学习的结合。
2026-04-28 cs.LG cs.SE
Systems Variability Modeling: A Textual Model Mixing Class and Feature Concepts
在软件产品线设计领域,系统复用和成本是非常重要的.开发人员的目标是增加系统重用,并减少为每个软件配置从头开始构建组件的成本和工作量。这可以通过开发软件产品线(SPL)来实现。为了处理SPL工程过程,开发了几种方法和几种技术。其中一种方法被称为分离方法。它需要分离系统组件的共性和可变性,以允许基于用户定义的功能进行配置选择。基于文本符号的方法已经被用于其正式的语法和语义来表示系统的功能和实现。但是这些方法在混合特性(概念级)和类(物理级)方面仍然很弱,这些特性和类保证了软件版本的平滑和自动配置生成。缺乏支持混合过程的方法是一个真正的弱点。在本文中,我们通过引入一些元功能,根据其功能分类,提高SPL重用。作为第一个结果,混合类和特征概念是支持在一个简单的方式使用类接口和固有的功能,从特征模型平滑移动到类模型。作为第二个结果,混合过程是由文本设计和实现方法支持的,通过将它们的概念组合在一种语言中来混合类和特征模型。支持的配置生成过程简单、一致且完整。
2013-11-13 cs.SE
Critical Systems Development Using Modeling Languages. (CSDUML-04): Current Developments and Future Challenges (Report on the Third International Workshop)
我们给一个简短的报告的贡献,并在第三届国际研讨会上的关键系统开发使用建模语言(CSDUML'04)的一些讨论和结论。
2014-09-22 cs.SE
Capturing and Exploiting Design Pattern Variability in Mobile Application Generation
Universidad de San Jorge(圣乔治大学);ITIS Software, Universidad de Málaga(马拉加大学 ITIS 软件)
研究如何解决移动应用开发中自动代码生成忽视设计原则和架构质量的问题,核心方法是用UVL建模设计模式可变性并结合Jinja模板实现Swift代码生成,利用SPL工程原则,促进了可维护等移动应用的生产。
2026-07-17 cs.SE
Integrating the Common Variability Language with Multilanguage Annotations for Web Engineering
Web应用程序开发涉及管理以不同语言实现的高度多样性的文件和资源,如代码,页面或样式表。为了处理Web应用程序定制配置的自动生成,工业界通常采用基于注释的方法,尽管大多数研究鼓励使用基于组合的方法来实现软件产品线。最近的工作试图将这两种方法结合起来,以获得互补的好处。然而,技术公司不愿意采用新的开发范式,如面向功能的编程或面向方面的编程。此外,将这些编程模型应用于Web应用程序是极其困难的,甚至是不可能的,主要是因为它们的多语言特性,因为它们的开发涉及多种类型的源代码(Java,Groovy,JavaScript),模板(HTML,Markdown,XML),样式表文件(CSS及其变体,如SCSS)和其他文件(JSON,YML,shell脚本)。我们建议使用通用可变性语言作为一种基于组合的方法,并集成注释来管理Web应用程序的软件产品线的细粒度可变性。在本文中,我们(一)表明,现有的组合和基于注释的方法,包括一些著名的组合,是不适合建模和实现的Web应用程序的可变性;(二)提出了一种组合的方法,有效地集成到一个基于组合的方法为Web应用程序的注释。我们实现我们的方法,并显示其适用性与工业现实世界的系统。
2020-01-15 cs.SE
Detecting and Explaining Conflicts in Attributed Feature Models
产品配置系统通常基于可变性模型。可变性模型的开发是一个耗时且容易出错的过程。考虑到产品的持续开发,必须频繁调整可变性模型。这些变化往往会导致错误,例如一些产品不能从模型中推导出来,不需要的产品是可推导的,或者在可变性模型中存在矛盾。在本文中,我们提出了一种方法来发现和解释矛盾的属性特征模型,有效地帮助开发人员纠正错误。我们使用扩展的属性和算术约束的特征模型,将它们转化为一个约束满足问题,并探讨那些矛盾。当发现矛盾时,通过QuickXplain算法在约束中搜索一组矛盾关系。
2015-04-14 cs.SE
Assurance Case Development for Evolving Software Product Lines: A Formal Approach
本文提出一种形式化方法,用于演化软件产品线的提升保证案例开发与回归分析,支持感知变异性的AC语言、基于模板的开发提升及SPL演化影响分析,并提供了基于模型的工具与医疗设备应用实例。
2025-11-04 cs.SE
Variability-Aware Machine Learning Model Selection: Feature Modeling, Instantiation, and Experimental Case Study
本文针对机器学习模型选择过程缺乏系统性软件工程设计支持的问题,提出一种变异性感知的ML算法选择方法,并通过基于Scikit-Learn启发式规则的实验案例研究验证其适用性,旨在实现更明确、自适应、透明、可解释和自动化的模型选择。
2024-12-31 cs.SE
Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language
行为驱动开发(BDD)是一种规范技术,通过将这些需求的文本描述与自动化测试相连接,自动证明所有功能需求都被源代码正确处理。鉴于在某些领域,在特殊的企业信息系统中,需求是由业务流程建模确定的-它使用底层业务流程的图形符号,本文旨在提供一个映射,从形成最常见的BPM语言的基本结构到行为驱动开发结构。
2010-06-25 cs.SE
A System Modeling Approach to Enhance Functional and Software Development
本文提出了一种基于SysML的方法,以提高功能和软件开发过程中的工业环境。最近的技术变化,如电动汽车和重型工程机械自动化程度的提高,导致嵌入式软件的复杂性增加。因此,需要新的开发方法来解决灵活的功能开发,增强开发团队之间的沟通,并保持从设计概念到软件产品的可追溯性。所讨论的方法已经在开发新的传输系统(部分电气化)及其功能的背景下进行了实验。虽然建模方法是一个正在进行的工作,一些初步的成功,以及现有的差距指向未来的工作突出。
2019-06-20 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
Code Roulette: How Prompt Variability Affects LLM Code Generation
University of Cambridge(剑桥大学)
研究探讨提示变化对LLM代码生成质量的影响,提出评估流程以量化模型对输入变化的敏感性,通过实验验证方法有效性。
2026-03-17 cs.LG cs.SE
DooML: A new Database & Object-Oriented Modeling Language for database-driven web application design and development
数据库驱动的Web应用程序是一个非常常见的软件解决方案,以解决日益增长的业务问题。对数据库和软件架构进行建模可能具有挑战性,因此没有一种用于数据库和软件架构的组合建模语言,特别适合于Web应用程序开发。在本文中,我们提出了数据库面向对象的建模语言(DooML)和它的主要原型图:一个符号指定的数据库模式和相应的面向对象的软件体系结构的设计。它结合了绘制实体关系图、关系模型和通用建模语言类图的语法,并创建了一个混合图,说明了数据库设计和软件设计规范。默认情况下,DooML确保高级Web应用程序开发的方法是模型驱动的,既面向数据库又面向对象。
2022-10-05 cs.DB cs.SE