Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3233027.3233030acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Optimal reconfiguration of dynamic software product lines based on performance-influence models

Published: 10 September 2018 Publication History

Abstract

Today's adaptive software systems (i) are often highly configurable product lines, exhibiting hundreds of potentially conflicting configuration options; (ii) are context dependent, forcing the system to reconfigure to ever-changing contextual situations at runtime; (iii) need to fulfill context-dependent performance goals by optimizing measurable nonfunctional properties. Usually, a large number of consistent configurations exists for a given context, and each consistent configuration may perform differently with regard to the current context and performance goal(s). Therefore, it is crucial to consider nonfunctional properties for identifying an appropriate configuration. Existing black-box approaches for estimating the performance of configurations provide no means for determining context-sensitive reconfiguration decisions at runtime that are both consistent and optimal, and hardly allow for combining multiple context-dependent quality goals. In this paper, we propose a comprehensive approach based on Dynamic Software Product Lines (DSPL) for obtaining consistent and optimal reconfiguration decisions. We use training data obtained from simulations to learn performance-influence models. A novel integrated runtime representation captures both consistency properties and the learned performance-influence models. Our solution provides the flexibility to define multiple context-dependent performance goals. We have implemented our approach as a standalone component. Based on an Internet-of-Things case study using adaptive wireless sensor networks, we evaluate our approach with regard to effectiveness, efficiency, and applicability.

References

[1]
Evelyn Martin Lansdowne Beale and John A Tomlin. 1970. Special facilities in a general mathematical programming system for non-convex problems using ordered sets of variables. OR 69, 447--454 (1970).
[2]
David Benavides, Pablo Trinidad Martín-Arroyo, and Antonio Ruiz Cortés. 2005. Automated Reasoning on Feature Models. In Advanced Information Systems Engineering, 17th International Conference, CAiSE 2005, Porto, Portugal, June 13-17, 2005, Proceedings. 491--503.
[3]
David Benavides, Sergio Segura, and Antonio Ruiz-Cortés. 2010. Automated Analysis of Feature Models 20 Years later: A Literature Review. Information Systems 35, 6 (2010), 615--636.
[4]
Nelly Bencomo, Pete Sawyer, Gordon Blair, and Paul Grace. 2008. Dynamically Adaptive Systems are Product Lines too: Using Model-Driven Techniques to Capture Dynamic Variability of Adaptive Systems. In Proc. of the Intl. Workshop on Dynamic Software Product Lines (DSPL 2008).
[5]
Tracy Camp, Jeff Boleng, and Vanessa Davies. 2002. A survey of mobility models for ad hoc network research. Wireless Communications and Mobile Computing 2, 5 (2002), 483--502.
[6]
Rafael Capilla, Jan Bosch, Pablo Trinidad, Antonio Ruiz Cortés, and Mike Hinchey. 2014. An overview of Dynamic Software Product Line architectures and techniques: Observations from research and industry. Journal of Systems and Software 91 (2014), 3--23.
[7]
Krzysztof Czarnecki, Thomas Bednasch, Peter Unger, and Ulrich W. Eisenecker. 2002. Generative Programming for Embedded Software: An Industrial Experience Report. In Generative Programming and Component Engineering, ACM SIGPLAN/SIGSOFT Conference, GPCE 2002, Pittsburgh, PA, USA, October 6-8, 2002, Proceedings. 156--172.
[8]
Krzysztof Czarnecki and Andrzej Wasowski. 2007. Feature Diagrams and Logics: There and Back Again. In Software Product Lines, 11th International Conference, SPLC 2007, Kyoto, Japan, September 10-14, 2007, Proceedings. 23--34.
[9]
Falko Dressler, Margit Mutschlechner, Bijun Li, Rüdiger Kapitza, Simon Ripperger, Christopher Eibel, Benedict Herzog, Timo Hönig, and Wolfgang Schröder-Preikschat. 2016. Monitoring Bats in the Wild: On Using Erasure Codes for Energy-Efficient Wireless Sensor Networks. ACM Trans. Sen. Netw. 12, 1, Article 7 (Feb. 2016), 7:1--7:29 pages.
[10]
R Jo Duffin. 1970. Linearizing geometric programs. SIAM review 12, 2 (1970), 211--227.
[11]
Ahmed Elkhodary, Naeem Esfahani, and Sam Malek. 2010. FUSION: A Framework for Engineering Self-tuning Self-adaptive Software Systems. In Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE '10). ACM, 7--16.
[12]
Fabian Fuchs, Markus Völker, and Dorothea Wagner. 2012. Simulation-Based Analysis of Topology Control Algorithms for Wireless Ad Hoc Networks. Springer Berlin Heidelberg, 188--202.
[13]
Elena Gaura, Michael Allen, Lewis Girod, James Brusey, and Geoffrey Challen. 2016. Wireless Sensor Networks: Deployments and Design Frameworks (1 ed.). Springer.
[14]
Jianmei Guo, Krzysztof Czarnecki, Sven Apel, Norbert Siegmund, and Andrzej Wasowski. 2013. Variability-aware performance prediction: A statistical learning approach. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering, ASE 2013, Silicon Valley, CA, USA, November 11-15, 2013. 301--311.
[15]
Svein O. Hallsteinsen, Mike Hinchey, Sooyong Park, and Klaus Schmid. 2008. Dynamic Software Product Lines. IEEE Computer 41, 4 (2008), 93--95.
[16]
Svein O. Hallsteinsen, Erlend Stav, Arnor Solberg, and Jacqueline Floch. 2006. Using Product Line Techniques to Build Adaptive Systems. In Software Product Lines, 10th International Conference, SPLC 2006, Baltimore, Maryland, USA, August 21-24, 2006, Proceedings. 141--150.
[17]
Herman Hartmann and Tim Trew. 2008. Using Feature Diagrams with Context Variability to Model Multiple Product Lines for Software Supply Chains. In Software Product Lines, 12th International Conference, SPLC 2008, Limerick, Ireland, September 8-12, 2008, Proceedings. 12--21.
[18]
IBM Corp. 2015. IBM ILOG CPLEX V12.7s User's Manual for CPLEX. http://www-01.ibm.com/software/commerce/optimization/cplex-optimizer/
[19]
Pooyan Jamshidi, Miguel Velez, Christian Kästner, Norbert Siegmund, and Prasad Kawthekar. 2017. Transfer Learning for Improving Model Predictions in Highly Configurable Software. In 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS@ICSE 2017, Buenos Aires, Argentina, May 22-23, 2017. 31--41.
[20]
Kyo Kang, Sholom Cohen, James Hess, William Novak, and A. Peterson. 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-021. Software Engineering Institute, Carnegie Mellon University. http://resources.sei.cmu.edu/library/asset-view.cfm?AssetID=11231
[21]
Jeffrey O. Kephart and David M. Chess. 2003. The vision of autonomic computing. Computer 36, 1 (2003), 41--50.
[22]
Roland Kluge, Michael Stein, Gergely Varró, Andy Schürr, Matthias Hollick, and Max Mühlhäuser. 2017. A Systematic Approach to Constructing Families of Incremental Topology Control Algorithms Using Graph Transformation. Journal of Software and Systems Modeling (SoSyM) (2017).
[23]
Christian Krupitzer, Felix Maximilian Roth, Sebastian Vansyckel, and Christian Becker. 2015. Towards Reusability in Autonomic Computing. In Proc. of the 12th Intl. Conf. on Autonomic Computing (ICAC). IEEE, 115--120.
[24]
Erhan Leblebici, Anthony Anjorin, and Andy Schürr. 2014. Developing eMoflon with eMoflon. In Proc. of the Intl. Conference on Model Transformation (ICMT) (LNCS), Vol. 8568. Springer, 138--145.
[25]
Ning Li, J. C. Hou, and L. Sha. 2005. Design and analysis of an MST-based topology control algorithm. IEEE Trans. on Wireless Communications 4, 3 (2005), 1195--1206.
[26]
Xiang-Yang Li, Peng-Jun Wan, Yu Wang, and O. Frieder. 2002. Sparse power efficient topology for wireless networks. In Proc. of the 35th Annual Hawaii Intl. Conference on System Sciences (HICSS). IEEE, 3839--3848.
[27]
R Timothy Marler and Jasbir S Arora. 2004. Survey of multi-objective optimization methods for engineering. Structural and multidisciplinary optimization 26, 6 (2004), 369--395.
[28]
Marcílio Mendonça, Andrzej Wasowski, and Krzysztof Czarnecki. 2009. SAT-based analysis of feature models is easy. In Software Product Lines, 13th International Conference, SPLC 2009, San Francisco, California, USA, August 24-28, 2009, Proceedings. 231--240.
[29]
Kim Mens, Rafael Capilla, Nicolas Cardozo, and Bruno Dumas. 2016. A taxonomy of context-aware software variability approaches. In Companion Proceedings of the 15th International Conference on Modularity, Málaga, Spain, March 14 - 18, 2016. 119--124.
[30]
Carlos Andres Parra, Daniel Romero, Sébastien Mosser, Romain Rouvoy, Laurence Duchien, and Lionel Seinturier. 2012. Using constraint-based optimization and variability to support continuous self-adaptation. In Proceedings of the ACM Symposium on Applied Computing, SAC 2012, Riva, Trento, Italy, March 26-30, 2012. 486--491.
[31]
Martin Pfannemüller, Christian Krupitzer, Markus Weckesser, and Christian Becker. 2017. A Dynamic Software Product Line Approach for Adaptation Planning in Autonomic Computing Systems. In 2017 IEEE International Conference on Autonomic Computing, ICAC 2017, Columbus, OH, USA, July 17-21, 2017. 247--254.
[32]
Björn Richerzhagen, Dominik Stingl, Julius Rückert, and Ralf Steinmetz. 2015. Simonstrator: Simulation and Prototyping Platform for Distributed Mobile Applications. In Proc. of the Intl. Conf. on Simulation Tools and Techniques (SIMUTools). ICST, 99--108.
[33]
George F. Riley and Thomas R. Henderson. 2010. The ns-3 Network Simulator. In Modeling and Tools for Network Simulation, Klaus Wehrle, Mesut Günes, and James Gross (Eds.). Springer, 15--34.
[34]
Paolo Santi. 2005. Topology Control in Wireless Ad Hoc and Sensor Networks. ACM computing surveys (CSUR) 37, 2 (2005), 164--194.
[35]
Amir Molzam Sharifloo, Andreas Metzger, Clément Quinton, Luciano Baresi, and Klaus Pohl. 2016. Learning and evolution in dynamic software product lines. In Proceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS@ICSE 2016, Austin, Texas, USA, May 14-22, 2016. 158--164.
[36]
Norbert Siegmund, Alexander Grebhahn, Sven Apel, and Christian Kästner. 2015. Performance-influence models for highly configurable systems. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2015, Bergamo, Italy, August 30 - September 4, 2015. 284--294.
[37]
Norbert Siegmund, Sergiy S. Kolesnikov, Christian Kästner, Sven Apel, Don S. Batory, Marko Rosenmüller, and Gunter Saake. 2012. Predicting performance via automated feature-interaction detection. In 34th International Conference on Software Engineering, ICSE 2012, June 2-9, 2012, Zurich, Switzerland. 167--177.
[38]
Norbert Siegmund, Marko Rosenmüller, Martin Kuhlemann, Christian Kästner, Sven Apel, and Gunter Saake. 2012. SPL Conqueror: Toward optimization of non-functional properties in software product lines. Software Quality Journal 20, 3 (01 Sep 2012), 487--517.
[39]
Roopak Sinha, Kenneth Johnson, and Radu Calinescu. 2014. A scalable approach for re-configuring evolving industrial control systems. In Proceedings of the 2014 IEEE Emerging Technology and Factory Automation, ETFA 2014, Barcelona, Spain, September 16-19, 2014.
[40]
Niklas Sorensson and Niklas Een. 2005. Minisat v1. 13--a sat solver with conflict-clause minimization. SAT 2005, 53 (2005), 1--2.
[41]
Gustavo Sousa, Walter Rudametkin, and Laurence Duchien. 2017. Extending Dynamic Software Product Lines with Temporal Constraints. In 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS@ICSE 2017, Buenos Aires, Argentina, May 22-23, 2017. 129--139.
[42]
Michael Stein, Tobias Petry, Immanuel Schweizer, Martina Bachmann, and Max Mühlhäuser. 2016. Topology Control in Wireless Sensor Networks: What Blocks the Breakthrough?. In Proc. of the Intl. Conf. on Local Computer Networks (LCN). IEEE, 389--397.
[43]
Guodong Sun, Lin Zhao, Zhibo Chen, and Guofu Qiao. 2015. Effective link interference model in topology control of wireless Ad hoc and sensor networks. Journal of Network and Computer Applications 52, Supplement C (2015), 69--78.
[44]
Markus Weckesser, Malte Lochau, Thomas Schnabel, Björn Richerzhagen, and Andy Schürr. 2016. Mind the Gap! Automated Anomaly Detection for Potentially Unbounded Cardinality-based Feature Models. In 19th Int. Conference on Fundamental Approaches to Software Engineering (FASE). 158--175.
[45]
H Paul Williams. 2013. Model Building in Mathematical Programming. John Wiley & Sons.

Cited By

View all
  • (2024)Variability Management in Self-Adaptive Systems through Deep Learning: A Dynamic Software Product Line ApproachElectronics10.3390/electronics1305090513:5(905)Online publication date: 27-Feb-2024
  • (2024)Knowledge-based recommender systems: overview and research directionsFrontiers in Big Data10.3389/fdata.2024.13044397Online publication date: 26-Feb-2024
  • (2024)VaryMinions: leveraging RNNs to identify variants in variability-intensive systems’ logsEmpirical Software Engineering10.1007/s10664-024-10473-529:4Online publication date: 15-Jun-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SPLC '18: Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 1
September 2018
324 pages
ISBN:9781450364645
DOI:10.1145/3233027
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 10 September 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. dynamic software product lines
  2. machine learning
  3. performance-influence models

Qualifiers

  • Research-article

Funding Sources

Conference

SPLC '18

Acceptance Rates

Overall Acceptance Rate 167 of 463 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)2
Reflects downloads up to 12 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Variability Management in Self-Adaptive Systems through Deep Learning: A Dynamic Software Product Line ApproachElectronics10.3390/electronics1305090513:5(905)Online publication date: 27-Feb-2024
  • (2024)Knowledge-based recommender systems: overview and research directionsFrontiers in Big Data10.3389/fdata.2024.13044397Online publication date: 26-Feb-2024
  • (2024)VaryMinions: leveraging RNNs to identify variants in variability-intensive systems’ logsEmpirical Software Engineering10.1007/s10664-024-10473-529:4Online publication date: 15-Jun-2024
  • (2023)A Self-Adaptation Mechanism for Variability Management in Dynamic Software Product LinesProceedings of the 17th Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3622748.3622754(51-60)Online publication date: 25-Sep-2023
  • (2023)Input sensitivity on the performance of configurable systems an empirical studyJournal of Systems and Software10.1016/j.jss.2023.111671201(111671)Online publication date: Jul-2023
  • (2022)A DSPL and Reinforcement Learning Approach for Context-Aware IoT Systems DevelopmentInternational Journal of Security and Privacy in Pervasive Computing10.4018/IJSPPC.31008414:1(1-22)Online publication date: 7-Oct-2022
  • (2022)Variability Management in Dynamic Software Product Lines for Self-Adaptive Systems—A Systematic MappingApplied Sciences10.3390/app12201024012:20(10240)Online publication date: 12-Oct-2022
  • (2022)Feature subset selection for learning huge configuration spacesProceedings of the 26th ACM International Systems and Software Product Line Conference - Volume A10.1145/3546932.3546997(85-96)Online publication date: 12-Sep-2022
  • (2022)Applying reconfiguration cost and control pattern modeling to self-adaptive systemsProceedings of the ACM/IEEE 44th International Conference on Software Engineering: Companion Proceedings10.1145/3510454.3517056(248-250)Online publication date: 21-May-2022
  • (2022)Applying Reconfiguration Cost and Control Pattern Modeling to Self-Adaptive Systems2022 IEEE/ACM 44th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)10.1109/ICSE-Companion55297.2022.9793809(248-250)Online publication date: May-2022
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media