ABSTRACT
Distributed systems, such as cloud systems or cyber-physical systems, involve the orchestration of different variability-intensive, adaptive sub-systems. Each of these sub-systems may perform adaptations simultaneously and independently from each other. Yet, if dependencies between the adaptations of the sub-systems are not considered, this may lead to conflicting adaptations or untapped synergies among adaptations.
This paper introduces FCORE, a model-based approach, which facilitates coordinating adaptations among variability-intensive systems. The permissible run-time reconfigurations of each system is specified by an FCORE model, which combines feature models used in Dynamic Software Product Lines with goal models. FCORE models are mapped to constraint satisfaction problems to determine conflicts and synergies among the adaptations of the systems during execution. We demonstrate the FCORE approach by using a cloud system as a typical exemplar for a distributed system. The cloud system is part of an industrial use case concerned with offering value-added cloud services.
- G. H. Alferez, V. Pelechano, R. Mazo, C. Salinesi, and D. Diaz. Dynamic adaptation of service compositions with variability models. Journal of Systems and Software, 91:24--47, 2014. Google ScholarDigital Library
- D. Benavides, P. T. Martin-Arroyo, and A. R. Cortes. Automated Reasoning on Feature Models. In O. Pastor and J. F. e. Cunha, editors, CAiSE 2005, Porto, Portugal, June 13-17, volume 3520 of LNCS, pages 491--503, 2005. Google ScholarDigital Library
- D. Benavides, S. Segura, and A. R. Cortes. Automated analysis of feature models 20 years later: A literature review. Inf. Syst., 35(6):615--636, 2010. Google ScholarDigital Library
- D. Benavides, S. Segura, P. Trinidad, and A. Ruiz-Cortes. Using Java CSP Solvers in the Automated Analyses of Feature Models. In Generative and Transformational Techniques in Softw. Eng., LNCS, pages 399--408. 2006. Google ScholarDigital Library
- Bruneo, D. et al. CloudWave: Where adaptive cloud management meets DevOps. In IEEE ISCC 2014 Workshop on Management of Cloud Systems (MoCS 2014), June 23rd, 2014, Madeira, Portugal, 2014.Google Scholar
- A. Bucchiarone, C. Cappiello, E. Di Nitto, S. Gorlatch, D. Mailänder, and A. Metzger. Design for self-adaptation in service-oriented systems in the cloud. In D. Petcu and J. Vásquez-Poletti, editors, European Research Activities in Cloud Computing, 2012.Google Scholar
- A. Bucchiarone, A. Marconi, C. A. Mezzina, M. Pistore, and H. Raik. On-the-Fly Adaptation of Dynamic Service-Based Systems: Incrementality, Reduction and Reuse. In S. Basu, C. Pautasso, L. Zhang, and X. Fu, editors, Service-Oriented Computing, LNCS, pages 146--161. 2013. Google ScholarDigital Library
- C. Cassales Marquezan, F. Wessling, A. Metzger, K. Pohl, C. Woods, and K. Wallbom. Towards exploiting the full adaptation potential of cloud applications. In ICSE 2014 Workshop on Principles of Engineering Service-oriented Systems (PESOS), May 31, Hyderabad, India, 2014. Google ScholarDigital Library
- B. Chen, X. Peng, Y. Yu, B. Nuseibeh, and W. Zhao. Self-adaptation through incremental generative model transformations at runtime. In P. Jalote, L. C. Briand, and A. v. d. Hoek, editors, ICSE 2014, Hyderabad, India - May 31 -- June 07, pages 676--687, 2014. Google ScholarDigital Library
- K. Czarnecki, S. Helsen, and U. Eisenecker. Staged Configuration Using Feature Models. In D. Hutchison and et al., editors, Software Product Lines, pages 266--283. Berlin, Heidelberg, 2004.Google ScholarCross Ref
- K. Czarnecki, S. Helsen, and U. W. Eisenecker. Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice, pages 7--29, 2005.Google ScholarCross Ref
- F. de Oliveira, T. Ledoux, and R. Sharrock. A Framework for the Coordination of Multiple Autonomic Managers in Cloud Environments. In SASO 2013, pages 179--188, 2013. Google ScholarDigital Library
- B. Dougherty, J. White, and D. C. Schmidt. Model-driven Auto-scaling of Green Cloud Computing Infrastructure. Future Gener. Comput. Syst., 28(2):371--378, 2012. Google ScholarDigital Library
- S. Dustdar, Y. Guo, B. Satzger, and H.-L. Truong. Principles of elastic processes. IEEE Internet Computing, 15(5):66--71, 2011. Google ScholarDigital Library
- M. Hinchey, S. Park, and K. Schmid. Building dynamic software product lines. IEEE Computer, pages 22--26, 2012. Google ScholarDigital Library
- T. Holvoet and M. Viroli, editors. Int'l Conference on Coordination Models and Languages COORDINATION, Grenoble, France, volume 9037 of Lecture Notes in Computer Science. Springer, 2015.Google Scholar
- A. S. Karatas, H. Oguztuzun, and A. Dogru. Mapping Extended Feature Models to Constraint Logic Programming over Finite Domains. In J. Bosch and J. Lee, editors, Software Product Lines: Going Beyond, LNCS, pages 286--299. 2010. Google ScholarDigital Library
- J. Lee, G. Kotonya, and D. Robinson. Engineering Service-Based Dynamic Software Product Lines. IEEE Computer, pages 49--55, 2012. Google ScholarDigital Library
- W. Lloyd, S. Pallickara, O. David, J. Lyon, M. Arabi, and K. Rojas. Service isolation vs. consolidation: Implications for iaas cloud application deployment. In IC2E 2013, San Francisco, CA, USA, March 25--27, pages 21--30, 2013. Google ScholarDigital Library
- R. Mazo, C. Salinesi, D. Diaz, and A. Lora-Michiels. Transforming Attribute and Clone-Enabled Feature Models Into Constraint Programs Over Finite Domains. In ENASE 2011, Beijing, China, 2011.Google Scholar
- A. Metzger and K. Pohl. Software product line engineering and variability management: Achievements and challenges. In J. D. Herbsleb and M. B. Dwyer, editors, ICSE 2014 (FOSE), Hyderabad, India, May 31 -- June 7, pages 70--84, 2014. Google ScholarDigital Library
- B. Morin, O. Barais, J.-M. Jezequel, F. Fleurey, and A. Solberg. Models@ Run.time to Support Dynamic Adaptation. IEEE Computer, pages 44--51, 2009. Google ScholarDigital Library
- R. Pohl, V. Stricker, and K. Pohl. Measuring the structural complexity of feature models. In ASE 2013, Silicon Valley, CA, USA, November 11-15, pages 454--464, 2013.Google ScholarDigital Library
- W. Qian, X. Peng, B. Chen, J. Mylopoulos, H. Wang, and W. Zhao. Rationalism with a dose of empiricism: Case-based reasoning for requirements-driven self-adaptation. In RE 2014, Karlskrona, Sweden, pages 113--122, 2014.Google ScholarCross Ref
- C. Quinton, D. Romero, and L. Duchien. Automated Selection and Configuration of Cloud Environments Using Software Product Lines Principles. In CLOUD 2014, Anchorage, United States, 2014. Google ScholarDigital Library
- F. Roos-Frantz, D. Benavides, and A. Ruiz-Cortes. Feature Model to Orthogonal Variability Model Transformations. A First Step. In JISBD 2009, pages 81--90, 2009.Google Scholar
- P. Sawyer, R. Mazo, D. Diaz, C. Salinesi, and D. Hughes. Using Constraint Programming to Manage Configurations in Self-Adaptive Systems. IEEE Computer, pages 56--63, 2012. Google ScholarDigital Library
- L. Shen, X. Peng, and W. Zhao. Software Product Line Engineering for Developing Self-Adaptive Systems: Towards the Domain Requirements. In X. Bai and et al., editors, COMPSAC 2012, Izmir, Turkey, July 16-20, pages 289--296, 2012. Google ScholarDigital Library
- A. van Lamsweerde. Goal-oriented requirements engineering: a guided tour. In 5th Int'l Symposium on Requirements Engineering, pages 249--262, 2001. Google ScholarDigital Library
- J. White, D. C. Schmidt, D. Benavides, P. Trinidad, and A. R. Cortes. Automated Diagnosis of Product-Line Configuration Errors in Feature Models. In SPLC 2008, Limerick, Ireland, September 8-12, pages 225--234, 2008. Google ScholarDigital Library
Recommendations
Variability: from software product lines to self-adaptive systems
SPLC '14: Proceedings of the 18th International Software Product Line Conference: Companion Volume for Workshops, Demonstrations and Tools - Volume 2Variability 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 ...
Extending dynamic software product lines with temporal constraints
SEAMS '17: Proceedings of the 12th International Symposium on Software Engineering for Adaptive and Self-Managing SystemsDue to the number of cloud providers, as well as the extensive collection of services, cloud computing provides very flexible environments, where resources and services can be provisioned and released on demand. However, reconfiguration and adaptation ...
Integrated management of variability in space and time in software families
SPLC '14: Proceedings of the 18th International Software Product Line Conference - Volume 1Software product lines (SPLs) and software ecosystems (SECOs) encompass a family of closely related software systems in terms of common and variable assets that are configured to concrete products (variability in space). Over the course of time, ...
Comments