Software-intensive systems often consist of multiple components that interact to realize complex requirements. An additional dimension of complexity arises when one designs many variants of a system at once, that is, a software product line (SPL). We propose a scenario-based approach to design SPLs, based on a combination of Modal Sequence Diagrams (MSDs) and a feature model. It consists in associating every MSD to the set of variants that have to satisfy its specification. Variability constitutes a new source of complexity, which can lead to inconsistencies in the specification of one or multiple variants. It is therefore crucial to detect these inconsistencies, and to produce a controller for each variant that makes it behave so that it satisfies its specification. We present a new controller synthesis technique that checks the absence of inconsistencies in all variants at once, thereby more radically exploiting the similarities between them. Our method first translates the MSD specification into a variability-aware Büchi game, and then solves this game for all variants in a single execution. We implemented the approach in ScenarioTools, a software tool which we use to evaluate our algorithms against competing methods.
Beschreibung
All-at-once-synthesis of controllers from scenario-based product line specifications
%0 Conference Paper
%1 Cordy:2015:ACS:2791060.2791111
%A Cordy, Maxime
%A Davril, Jean-Marc
%A Greenyer, Joel
%A Gressi, Erika
%A Heymans, Patrick
%B Proceedings of the 19th International Conference on Software Product Line
%C New York, NY, USA
%D 2015
%I ACM
%K Scenario-based-Requirements formal-methods
%P 26--35
%R 10.1145/2791060.2791111
%T All-at-once-synthesis of Controllers from Scenario-based Product Line Specifications
%U http://doi.acm.org/10.1145/2791060.2791111
%X Software-intensive systems often consist of multiple components that interact to realize complex requirements. An additional dimension of complexity arises when one designs many variants of a system at once, that is, a software product line (SPL). We propose a scenario-based approach to design SPLs, based on a combination of Modal Sequence Diagrams (MSDs) and a feature model. It consists in associating every MSD to the set of variants that have to satisfy its specification. Variability constitutes a new source of complexity, which can lead to inconsistencies in the specification of one or multiple variants. It is therefore crucial to detect these inconsistencies, and to produce a controller for each variant that makes it behave so that it satisfies its specification. We present a new controller synthesis technique that checks the absence of inconsistencies in all variants at once, thereby more radically exploiting the similarities between them. Our method first translates the MSD specification into a variability-aware Büchi game, and then solves this game for all variants in a single execution. We implemented the approach in ScenarioTools, a software tool which we use to evaluate our algorithms against competing methods.
%@ 978-1-4503-3613-0
@inproceedings{Cordy:2015:ACS:2791060.2791111,
abstract = {Software-intensive systems often consist of multiple components that interact to realize complex requirements. An additional dimension of complexity arises when one designs many variants of a system at once, that is, a software product line (SPL). We propose a scenario-based approach to design SPLs, based on a combination of Modal Sequence Diagrams (MSDs) and a feature model. It consists in associating every MSD to the set of variants that have to satisfy its specification. Variability constitutes a new source of complexity, which can lead to inconsistencies in the specification of one or multiple variants. It is therefore crucial to detect these inconsistencies, and to produce a controller for each variant that makes it behave so that it satisfies its specification. We present a new controller synthesis technique that checks the absence of inconsistencies in all variants at once, thereby more radically exploiting the similarities between them. Our method first translates the MSD specification into a variability-aware Büchi game, and then solves this game for all variants in a single execution. We implemented the approach in ScenarioTools, a software tool which we use to evaluate our algorithms against competing methods.},
acmid = {2791111},
added-at = {2015-12-11T15:21:50.000+0100},
address = {New York, NY, USA},
author = {Cordy, Maxime and Davril, Jean-Marc and Greenyer, Joel and Gressi, Erika and Heymans, Patrick},
biburl = {https://www.bibsonomy.org/bibtex/24e36ae1fa83128fc7ac7c9709675df8f/mabed},
booktitle = {Proceedings of the 19th International Conference on Software Product Line},
description = {All-at-once-synthesis of controllers from scenario-based product line specifications},
doi = {10.1145/2791060.2791111},
interhash = {f58f140de837019106d485dc3471c463},
intrahash = {4e36ae1fa83128fc7ac7c9709675df8f},
isbn = {978-1-4503-3613-0},
keywords = {Scenario-based-Requirements formal-methods},
location = {Nashville, Tennessee},
numpages = {10},
pages = {26--35},
publisher = {ACM},
series = {SPLC '15},
timestamp = {2015-12-11T15:30:10.000+0100},
title = {All-at-once-synthesis of Controllers from Scenario-based Product Line Specifications},
url = {http://doi.acm.org/10.1145/2791060.2791111},
year = 2015
}