{"title":"持续使用可变性模型,加强可配置系统的需求工程设计","authors":"Chin Khor, Robyn R. Lutz","doi":"10.1007/s00766-024-00421-6","DOIUrl":null,"url":null,"abstract":"<p>Software systems and product lines often use configurable features to specify a portfolio of product variants from a common core. Typically, their requirements also include constraints on which combinations of features are valid. Especially for larger systems and systems where the specifications are scattered among documents, the analysis of a new product’s variability-related requirements is challenging. To address this, we introduce a scalable, tool-supported framework that uses a variability model to automate checks for missing and inconsistent features and constraints. Our approach also extends and scales traditional variability requirements engineering by incorporating combinatorial interaction testing techniques to build valid product variants covering all configurations in the variability model and to automatically discover faulty feature settings in failed builds. Results from evaluation on two configurable systems show that our framework is effective both at early detection of missing, incorrect, and inconsistent variability requirements and at later finding faulty feature configurations.</p>","PeriodicalId":20912,"journal":{"name":"Requirements Engineering","volume":"175 1","pages":""},"PeriodicalIF":2.1000,"publicationDate":"2024-06-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Enhancing the requirements engineering of configurable systems by the ongoing use of variability models\",\"authors\":\"Chin Khor, Robyn R. Lutz\",\"doi\":\"10.1007/s00766-024-00421-6\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>Software systems and product lines often use configurable features to specify a portfolio of product variants from a common core. Typically, their requirements also include constraints on which combinations of features are valid. Especially for larger systems and systems where the specifications are scattered among documents, the analysis of a new product’s variability-related requirements is challenging. To address this, we introduce a scalable, tool-supported framework that uses a variability model to automate checks for missing and inconsistent features and constraints. Our approach also extends and scales traditional variability requirements engineering by incorporating combinatorial interaction testing techniques to build valid product variants covering all configurations in the variability model and to automatically discover faulty feature settings in failed builds. Results from evaluation on two configurable systems show that our framework is effective both at early detection of missing, incorrect, and inconsistent variability requirements and at later finding faulty feature configurations.</p>\",\"PeriodicalId\":20912,\"journal\":{\"name\":\"Requirements Engineering\",\"volume\":\"175 1\",\"pages\":\"\"},\"PeriodicalIF\":2.1000,\"publicationDate\":\"2024-06-17\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Requirements Engineering\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.1007/s00766-024-00421-6\",\"RegionNum\":3,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, INFORMATION SYSTEMS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Requirements Engineering","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1007/s00766-024-00421-6","RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, INFORMATION SYSTEMS","Score":null,"Total":0}
Enhancing the requirements engineering of configurable systems by the ongoing use of variability models
Software systems and product lines often use configurable features to specify a portfolio of product variants from a common core. Typically, their requirements also include constraints on which combinations of features are valid. Especially for larger systems and systems where the specifications are scattered among documents, the analysis of a new product’s variability-related requirements is challenging. To address this, we introduce a scalable, tool-supported framework that uses a variability model to automate checks for missing and inconsistent features and constraints. Our approach also extends and scales traditional variability requirements engineering by incorporating combinatorial interaction testing techniques to build valid product variants covering all configurations in the variability model and to automatically discover faulty feature settings in failed builds. Results from evaluation on two configurable systems show that our framework is effective both at early detection of missing, incorrect, and inconsistent variability requirements and at later finding faulty feature configurations.
期刊介绍:
The journal provides a focus for the dissemination of new results about the elicitation, representation and validation of requirements of software intensive information systems or applications. Theoretical and applied submissions are welcome, but all papers must explicitly address:
-the practical consequences of the ideas for the design of complex systems
-how the ideas should be evaluated by the reflective practitioner
The journal is motivated by a multi-disciplinary view that considers requirements not only in terms of software components specification but also in terms of activities for their elicitation, representation and agreement, carried out within an organisational and social context. To this end, contributions are sought from fields such as software engineering, information systems, occupational sociology, cognitive and organisational psychology, human-computer interaction, computer-supported cooperative work, linguistics and philosophy for work addressing specifically requirements engineering issues.