Architecture-Level Configuration of Large-Scale Embedded Software Systems
- 1 May 2014
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Software Engineering and Methodology
- Vol. 23 (3), 1-43
- https://doi.org/10.1145/2581376
Abstract
Configuration in the domain of Integrated Control Systems (ICS) is largely manual, laborious, and error prone. In this article, we propose a model-based configuration approach that provides automation support for reducing configuration effort and the likelihood of configuration errors in the ICS domain. We ground our approach on component-based specifications of ICS families. We then develop a configuration algorithm using constraint satisfaction techniques over finite domains to generate products that are consistent with respect to their ICS family specifications. We reason about the termination and consistency of our configuration algorithm analytically. We evaluate the effectiveness of our configuration approach by applying it to a real subsea oil production system. Specifically, we have rebuilt a number of existing verified product configurations of our industry partner. Our experience shows that our approach can automatically infer up to 50% of the configuration decisions, and reduces the complexity of making configuration decisions.Keywords
Funding Information
- Fonds National de la Recherche Luxembourg
This publication has 36 references indexed in Scilit:
- SICStus Prolog—The first 25 yearsTheory and Practice of Logic Programming, 2011
- Evaluating formal properties of feature diagram languagesIET Software, 2008
- Generic semantics of feature diagramsComputer Networks, 2007
- Constraint PropagationPublished by Elsevier BV ,2006
- Product derivation in software product families: a case studyJournal of Systems and Software, 2005
- Formalizing cardinality‐based feature models and their specializationSoftware Process: Improvement and Practice, 2005
- Modular architecture for a toolset supporting OCLScience of Computer Programming, 2002
- Backjump-based backtracking for constraint satisfaction problemsArtificial Intelligence, 2002
- Software reuseACM Computing Surveys, 1992
- Consistency in networks of relationsArtificial Intelligence, 1977