Variability within Modeling Language Definitions
我们提出了一个分类的建模语言提供的可变性机制。形式语言的定义包括语法和语义域以及将它们联系起来的映射,因此语言可变性根据它们所处理的这三个支柱中的哪一个来分类。这项工作还提出了一个框架,明确的文件和管理的变量建模语言的变化点及其相应的变种。该框架能够系统地研究各种变量及其相互依赖关系。此外,它还允许对语言进行有条理的定制,例如,针对给定的应用领域。可变性的分类法对于UML提供对它的变化点的更精确的理解是明确的。
2014-09-22 cs.SE
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 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
Sixth International Workshop on Languages for Modelling Variability (MODEVAR 2024)
本文为第六届可变性建模语言国际研讨会(MODEVAR 2024)的会议论文集,记录该研讨会于2024年2月6日在瑞士伯尔尼举办的相关内容。
2023-12-19 cs.PL 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
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
Variability-Aware Machine Learning Model Selection: Feature Modeling, Instantiation, and Experimental Case Study
本文针对机器学习模型选择过程缺乏系统性软件工程设计支持的问题,提出一种变异性感知的ML算法选择方法,并通过基于Scikit-Learn启发式规则的实验案例研究验证其适用性,旨在实现更明确、自适应、透明、可解释和自动化的模型选择。
2024-12-31 cs.SE