Abstract
The execution context in which pervasive systems or mobile computing run changes continuously. Hence, applications for these systems should be adapted at run-time according to the current context. In order to implement a context-aware dynamic reconfiguration service, most approaches usually require to model at design-time both the list of all possible configurations and the plans to switch among them. In this paper we present an alternative approach for the automatic run-time generation of application configurations and the reconfiguration plans. The generated configurations are optimal regarding different criteria, such as functionality or resource consumption (e.g. battery or memory). This is achieved by: (1) modelling architectural variability at design-time using Common Variability Language (CVL), and (2) using a genetic algorithm that finds at run-time nearly-optimal configurations using the information provided by the variability model. We also specify a case study and we use it to evaluate our approach, showing that it is efficient and suitable for devices with scarce resources.
Work supported by Projects TIN2008-01942, P09-TIC-5231, TIN2012-34840 and INTER-TRUST FP7-317731.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Hallsteinsen, S., Hinchey, M., Park, S., Schmid, K.: Dynamic software product lines. Computer 41(4), 93–95 (2008)
IBM: Autonomic Computing White Paper — An Architectural Blueprint for Autonomic Computing. IBM Corp. (2005)
Gamez, N., Fuentes, L., Aragüez, M.A.: Autonomic computing driven by feature models and architecture in famiware. In: Crnkovic, I., Gruhn, V., Book, M. (eds.) ECSA 2011. LNCS, vol. 6903, pp. 164–179. Springer, Heidelberg (2011)
Haber, A., Kutz, T., Rendel, H., Rumpe, B., Schaefer, I.: Delta-oriented architectural variability using monticore. In: Proceedings of the 5th European Conference on Software Architecture: Companion Volume, ECSA 2011, pp. 6:1–6:10. ACM, New York (2011)
Adachi Barbosa, E., Batista, T., Garcia, A., Silva, E.: Pl-aspectualacme: an aspect-oriented architectural description language for software product lines. In: Crnkovic, I., Gruhn, V., Book, M. (eds.) ECSA 2011. LNCS, vol. 6903, pp. 139–146. Springer, Heidelberg (2011)
Gomaa, H.: Designing software product lines with uml 2.0: From use cases to pattern-based software architectures. In: Morisio, M. (ed.) ICSR 2006. LNCS, vol. 4039, p. 440. Springer, Heidelberg (2006)
CVL: Common Variability Language, http://www.omgwiki.org/variability/
Chan, A., et al.: MobiPADS: a reflective middleware for context-aware mobile computing. IEEE Transactions on Software Engineering, 1072–1085 (2003)
Gu, T., et al.: A service-oriented middleware for building context-aware services. Journal of Network and Computer Applications 28(1), 1–18 (2005)
Janik, A., Zielinski, K.: AAOP-based dynamically reconfigurable monitoring system. Information and Software Technology 52(4), 380–396 (2010)
Paspallis, N.: Middleware-based development of context-aware applications with reusable components. University of Cyprus (2009)
Rouvoy, R., Barone, P., Ding, Y., Eliassen, F., Hallsteinsen, S., Lorenzo, J., Mamelli, A., Scholz, U.: MUSIC: Middleware support for self-adaptation in ubiquitous and service-oriented environments. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Self-Adaptive Systems. LNCS, vol. 5525, pp. 164–182. Springer, Heidelberg (2009)
Cuervo, E., Balasubramanian, A., Cho, D., Wolman, A., Saroiu, S., Chandra, R., Bahl, P.: Maui: Making smartphones last longer with code offload. In: Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services, pp. 49–62. ACM (2010)
Welsh, K., Bencomo, N.: Run-time model evaluation for requirements model-driven self-adaptation. In: 2012 20th IEEE International Requirements Engineering Conference (RE), pp. 329–330. IEEE (2012)
Ayora, C., Torres, V., Pelechano, V., Alférez, G.H.: Applying CVL to business process variability management. In: Proceedings of the VARiability for You Workshop: Variability Modeling Made Useful for Everyone, VARY 2012, pp. 26–31. ACM, New York (2012)
Pascual, G.: Aspect-oriented reconfigurable middleware for pervasive systems. In: Proceedings of the CAiSE Doctoral Consortium, vol. 731. CEUR-WS (2011)
Guo, J., White, J., Wang, G., Li, J., Wang, Y.: A genetic algorithm for optimized feature selection with resource constraints in software product lines. Journal of Systems and Software 84(12), 2208–2221 (2011)
Brataas, G., et al.: Scalability of decision models for dynamic product lines (2007)
White, J., et al.: Selecting highly optimal architectural feature sets with filtered cartesian flattening. Journal of Systems and Software 82(8), 1268–1284 (2009)
Cetina, C., Haugen, O., Zhang, X., Fleurey, F., Pelechano, V.: Strategies for variability transformation at run-time. In: Proceedings of the 13th International SPLC, SPLC 2009, pp. 61–70. Carnegie Mellon University, Pittsburgh (2009)
Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491–503. Springer, Heidelberg (2005)
Blouin, A., et al.: Combining Aspect-Oriented Modeling with Property-Based Reasoning to Improve User Interface Adaptation. In: ACM SIGCHI Symposium on Engineering Interactive Computing Systems, Pisa, Italy, pp. 85–94 (June 2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pascual, G.G., Pinto, M., Fuentes, L. (2013). Run-Time Support to Manage Architectural Variability Specified with CVL. In: Drira, K. (eds) Software Architecture. ECSA 2013. Lecture Notes in Computer Science, vol 7957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39031-9_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-39031-9_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-39030-2
Online ISBN: 978-3-642-39031-9
eBook Packages: Computer ScienceComputer Science (R0)