可变性:从软件产品线到自适应系统

Danny Weyns
{"title":"可变性:从软件产品线到自适应系统","authors":"Danny Weyns","doi":"10.1145/2647908.2655959","DOIUrl":null,"url":null,"abstract":"Variability is commonly understood as the ability of a software system or software artifact (e.g., component) to be changed so that it fits a specific context. Variability allows adapting the structure of a software system, its behavior, or underlying processes. These adaptations are enabled through variation points and variants as options that can be selected at these variation points. So far, variability has mainly been studied in the classic software product line domain. However, variability is not limited to product lines or families, but imposes challenges on software development in general. Many other types of today's software systems are built with variability in mind; one prominent type is self-adaptive systems that are capable to adapt autonomously at runtime, another is dynamic software product lines that combines principles from product lines with self-adaptation. In this talk, I summarize the results of an extensive survey we recently performed on the use of variability in software systems in general [1]. Based on our findings, I present dimensions of variability in software engineering. This empirically grounded set of core dimensions provides a step towards an integrated perspective of variability in software systems, spanning across loosely coupled research areas in the software engineering community. To conclude, I outline some interesting opportunities for future research.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-09-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Variability: from software product lines to self-adaptive systems\",\"authors\":\"Danny Weyns\",\"doi\":\"10.1145/2647908.2655959\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Variability is commonly understood as the ability of a software system or software artifact (e.g., component) to be changed so that it fits a specific context. Variability allows adapting the structure of a software system, its behavior, or underlying processes. These adaptations are enabled through variation points and variants as options that can be selected at these variation points. So far, variability has mainly been studied in the classic software product line domain. However, variability is not limited to product lines or families, but imposes challenges on software development in general. Many other types of today's software systems are built with variability in mind; one prominent type is self-adaptive systems that are capable to adapt autonomously at runtime, another is dynamic software product lines that combines principles from product lines with self-adaptation. In this talk, I summarize the results of an extensive survey we recently performed on the use of variability in software systems in general [1]. Based on our findings, I present dimensions of variability in software engineering. This empirically grounded set of core dimensions provides a step towards an integrated perspective of variability in software systems, spanning across loosely coupled research areas in the software engineering community. To conclude, I outline some interesting opportunities for future research.\",\"PeriodicalId\":339444,\"journal\":{\"name\":\"Software Product Lines Conference\",\"volume\":\"6 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-09-15\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Software Product Lines Conference\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2647908.2655959\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Software Product Lines Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2647908.2655959","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

摘要

可变性通常被理解为软件系统或软件工件(例如,组件)被更改以适应特定环境的能力。可变性允许调整软件系统的结构、行为或底层过程。这些适应是通过可变点和变体来实现的,这些变体是可以在这些可变点上选择的选项。到目前为止,可变性的研究主要集中在经典的软件产品线领域。然而,可变性并不局限于产品线或产品系列,而是在一般情况下给软件开发带来挑战。当今许多其他类型的软件系统都是在考虑可变性的情况下构建的;一种突出的类型是能够在运行时自主适应的自适应系统,另一种是动态软件产品线,它将来自产品线的原则与自适应相结合。在这次演讲中,我总结了我们最近对软件系统中可变性的使用进行的广泛调查的结果。基于我们的发现,我提出了软件工程中可变性的维度。这个以经验为基础的核心维度集合为软件系统中可变性的集成视角提供了一个步骤,它跨越了软件工程社区中松散耦合的研究领域。最后,我概述了未来研究的一些有趣的机会。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Variability: from software product lines to self-adaptive systems
Variability is commonly understood as the ability of a software system or software artifact (e.g., component) to be changed so that it fits a specific context. Variability allows adapting the structure of a software system, its behavior, or underlying processes. These adaptations are enabled through variation points and variants as options that can be selected at these variation points. So far, variability has mainly been studied in the classic software product line domain. However, variability is not limited to product lines or families, but imposes challenges on software development in general. Many other types of today's software systems are built with variability in mind; one prominent type is self-adaptive systems that are capable to adapt autonomously at runtime, another is dynamic software product lines that combines principles from product lines with self-adaptation. In this talk, I summarize the results of an extensive survey we recently performed on the use of variability in software systems in general [1]. Based on our findings, I present dimensions of variability in software engineering. This empirically grounded set of core dimensions provides a step towards an integrated perspective of variability in software systems, spanning across loosely coupled research areas in the software engineering community. To conclude, I outline some interesting opportunities for future research.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信