Skip to main content
Top

2015 | OriginalPaper | Chapter

A Control-Theoretic Approach to Self-adaptive Systems and an Application to Cloud-Based Software

Authors : Carlo Ghezzi, Giovanni Paolo Gibilisco, Claudio Menghi, Marco Miglierina

Published in: Software Engineering

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Software systems are usually developed to provide a fixed set of functionalities within given environmental conditions. However, in the last few years, there has been an increasing interest in systems that can autonomously modify their behavior in response to dynamic changes occurring in their execution environment. In one word, they must be self-adaptive. Self-adaptation requires the ability to discover and analyze changes, and to react by applying an adequate set of adaptation actions. The choice of the adaptation actions to apply can be performed in a model-driven fashion, that is by evaluating their effectiveness on a model of the system that is kept alive and updated at run-time.
We describe an approach to the design of self-adaptive systems that frames self-adaptation as a control theory problem. Our approach considers the architecture of the application, represented through a Discrete Time Markov Chain (DTMC); the running environment upon which it is deployed, described through a Queuing Model (QM); and a cost model, specified through a Dynamic System. At run-time the system autonomously increases or decreases the amount of resources allocated to different components of the application in response to changes of both workload intensity and distribution, and of performance of the computing resources. The adopted policy both minimizes costs and maintains the desired QoS, in terms of average response time. We evaluate our approach simulating a cloud computing application in a cloud infrastructure. This computing environment has been chosen because it allows on-demand access to a configurable pool of resources that can be easily provisioned and released at run-time.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
An autoscaling group in the Amazon cloud’s terminology.
 
2
Note that, in general, more final states can be supported. In this work we consider a single final state to represent the successful completion of requests.
 
3
Note that the approach can be easily extended to consider an M / M / n model.
 
4
The model that is obtained by connecting QMs into a network enriched with the probabilities of moving from one node to another is also known as Jackson Network [16].
 
5
For a deeper analysis the interested reader can refer to [7, 14].
 
Literature
1.
go back to reference Ardagna, D., Panicucci, B., Passacantando, M.: Generalized nash equilibria for the service provisioning problem in cloud systems. IEEE Trans. Serv. Comput. 6(4), 429–442 (2013)CrossRef Ardagna, D., Panicucci, B., Passacantando, M.: Generalized nash equilibria for the service provisioning problem in cloud systems. IEEE Trans. Serv. Comput. 6(4), 429–442 (2013)CrossRef
2.
go back to reference Baier, C., Katoen, J.-P., et al.: Principles of Model Checking, vol. 26202649. MIT Press, Cambridge (2008)MATH Baier, C., Katoen, J.-P., et al.: Principles of Model Checking, vol. 26202649. MIT Press, Cambridge (2008)MATH
3.
go back to reference Baresi, L., Di Nitto, E., Ghezzi, C.: Toward open-world software: Issue and challenges. Computer 39(10), 36–43 (2006)CrossRef Baresi, L., Di Nitto, E., Ghezzi, C.: Toward open-world software: Issue and challenges. Computer 39(10), 36–43 (2006)CrossRef
4.
go back to reference Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: 2010 18th IEEE International Requirements Engineering Conference (RE), pp. 125–134, September 2010 Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: 2010 18th IEEE International Requirements Engineering Conference (RE), pp. 125–134, September 2010
5.
go back to reference Bennani, M., Menasce, D.: Resource allocation for autonomic data centers using analytic performance models. In: ICAC (2005) Bennani, M., Menasce, D.: Resource allocation for autonomic data centers using analytic performance models. In: ICAC (2005)
6.
go back to reference Bi, J., Zhu, Z., Tian, R., Wang, Q.: Dynamic provisioning modeling for virtualized multi-tier applications in cloud data center. In: Cloud Computing (CLOUD) (2010) Bi, J., Zhu, Z., Tian, R., Wang, Q.: Dynamic provisioning modeling for virtualized multi-tier applications in cloud data center. In: Cloud Computing (CLOUD) (2010)
7.
go back to reference Calcavecchia, N.M., Caprarescu, B.A., Nitto, E.D., Dubois, D.J., Petcu, D.: Depas: A decentralized probabilistic algorithm for auto-scaling. CoRR, abs/1202.2509 (2012) Calcavecchia, N.M., Caprarescu, B.A., Nitto, E.D., Dubois, D.J., Petcu, D.: Depas: A decentralized probabilistic algorithm for auto-scaling. CoRR, abs/1202.2509 (2012)
8.
go back to reference Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Commun. ACM 55(9), 69–77 (2012)CrossRef Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Commun. ACM 55(9), 69–77 (2012)CrossRef
9.
go back to reference Di Nitto, E., Ghezzi, C., Metzger, A., Papazoglou, M., Pohl, K.: A journey to highly dynamic, self-adaptive service-based applications. Autom. Softw. Eng. 15(3–4), 313–341 (2008)CrossRef Di Nitto, E., Ghezzi, C., Metzger, A., Papazoglou, M., Pohl, K.: A journey to highly dynamic, self-adaptive service-based applications. Autom. Softw. Eng. 15(3–4), 313–341 (2008)CrossRef
10.
go back to reference Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model evolution by run-time parameter adaptation. In: IEEE 31st International Conference on Software Engineering, 2009, ICSE 2009, pp. 111–121, May 2009 Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model evolution by run-time parameter adaptation. In: IEEE 31st International Conference on Software Engineering, 2009, ICSE 2009, pp. 111–121, May 2009
11.
go back to reference Filieri, A., Ghezzi, C., Leva, A., Maggio, M.: Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements. In: Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011, pp. 283–292. IEEE Computer Society, Washington, DC (2011) Filieri, A., Ghezzi, C., Leva, A., Maggio, M.: Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements. In: Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, ASE 2011, pp. 283–292. IEEE Computer Society, Washington, DC (2011)
12.
go back to reference Filieri, A., Ghezzi, C., Tamburrelli, G.: Run-time efficient probabilistic model checking. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, pp. 341–350. ACM, New York (2011) Filieri, A., Ghezzi, C., Tamburrelli, G.: Run-time efficient probabilistic model checking. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, pp. 341–350. ACM, New York (2011)
13.
go back to reference Gambi, A., Toffetti, G., Pautasso, C., Pezze, M.: Kriging controllers for cloud applications. Internet Comput. IEEE 17(4), 40–47 (2013)CrossRef Gambi, A., Toffetti, G., Pautasso, C., Pezze, M.: Kriging controllers for cloud applications. Internet Comput. IEEE 17(4), 40–47 (2013)CrossRef
14.
go back to reference Gambi, A., Toffetti, G., Pezzè, M.: Assurance of self-adaptive controllers for the cloud. In: Cámara, J., de Lemos, R., Ghezzi, C., Lopes, A. (eds.) Assurances for Self-Adaptive Systems. LNCS, vol. 7740, pp. 311–339. Springer, Heidelberg (2013) CrossRef Gambi, A., Toffetti, G., Pezzè, M.: Assurance of self-adaptive controllers for the cloud. In: Cámara, J., de Lemos, R., Ghezzi, C., Lopes, A. (eds.) Assurances for Self-Adaptive Systems. LNCS, vol. 7740, pp. 311–339. Springer, Heidelberg (2013) CrossRef
15.
go back to reference Ghezzi, C., Menghi, C., Sharifloo, A.M., Spoletini, P.: On requirements verification for model refinements. In: 2013 21st IEEE International Requirements Engineering Conference (RE), pp. 62–71. IEEE (2013) Ghezzi, C., Menghi, C., Sharifloo, A.M., Spoletini, P.: On requirements verification for model refinements. In: 2013 21st IEEE International Requirements Engineering Conference (RE), pp. 62–71. IEEE (2013)
17.
go back to reference Jiang, Y., Perng, C.-S., Li, T., Chang, R.: Self-adaptive cloud capacity planning. In: SCC (2012) Jiang, Y., Perng, C.-S., Li, T., Chang, R.: Self-adaptive cloud capacity planning. In: SCC (2012)
18.
go back to reference Kemeny, J.G., Snell, J.L.: Finite Markov Chains, vol. 210. Springer, New York (1976) MATH Kemeny, J.G., Snell, J.L.: Finite Markov Chains, vol. 210. Springer, New York (1976) MATH
19.
go back to reference Kendall, D.G.: Stochastic processes occurring in the theory of queues and their analysis by the method of the imbedded markov chain. Ann. Math. Stat. 24, 338–354 (1953)MathSciNetCrossRefMATH Kendall, D.G.: Stochastic processes occurring in the theory of queues and their analysis by the method of the imbedded markov chain. Ann. Math. Stat. 24, 338–354 (1953)MathSciNetCrossRefMATH
20.
go back to reference Li, H., Venugopal, S.: Using reinforcement learning for controlling an elastic web application hosting platform. In: ICAC (2011) Li, H., Venugopal, S.: Using reinforcement learning for controlling an elastic web application hosting platform. In: ICAC (2011)
21.
go back to reference Mell, P., Grance, T.: The nist definition of cloud computing (draft). NIST Spec. Publ. 800(145), 1–7 (2011) Mell, P., Grance, T.: The nist definition of cloud computing (draft). NIST Spec. Publ. 800(145), 1–7 (2011)
22.
go back to reference Miglierina, M., Gibilisco, G., Ardagna, D., Di Nitto, E.: Model based control for multi-cloud applications. In: MiSE (2013) Miglierina, M., Gibilisco, G., Ardagna, D., Di Nitto, E.: Model based control for multi-cloud applications. In: MiSE (2013)
23.
go back to reference Patikirikorala, T., Colman, A., Han, J., Wang, L.: A multi-model framework to implement self-managing control systems for qos management. In: SEAMS (2011) Patikirikorala, T., Colman, A., Han, J., Wang, L.: A multi-model framework to implement self-managing control systems for qos management. In: SEAMS (2011)
24.
go back to reference Robinson, R.C.: An introduction to dynamical systems, vol. 19. AMS Bookstore (2013) Robinson, R.C.: An introduction to dynamical systems, vol. 19. AMS Bookstore (2013)
25.
go back to reference Sharifloo, A.M., Spoletini, P.: LOVER: Light-weight fOrmal verification of adaptivE systems at run time. In: Păsăreanu, C.S., Salaün, G. (eds.) FACS 2012. LNCS, vol. 7684, pp. 170–187. Springer, Heidelberg (2013) CrossRef Sharifloo, A.M., Spoletini, P.: LOVER: Light-weight fOrmal verification of adaptivE systems at run time. In: Păsăreanu, C.S., Salaün, G. (eds.) FACS 2012. LNCS, vol. 7684, pp. 170–187. Springer, Heidelberg (2013) CrossRef
26.
go back to reference Watkins, C., Dayan, P.: Technical note: Q-learning. Mach. Learn. 8(3–4), 279–292 (1992)MATH Watkins, C., Dayan, P.: Technical note: Q-learning. Mach. Learn. 8(3–4), 279–292 (1992)MATH
27.
go back to reference Zhang, L., Ardagna, D.: Sla based profit optimization in autonomic computing systems. In: Proceedings of the 2nd International Conference on Service Oriented Computing, pp. 173–182. ACM (2004) Zhang, L., Ardagna, D.: Sla based profit optimization in autonomic computing systems. In: Proceedings of the 2nd International Conference on Service Oriented Computing, pp. 173–182. ACM (2004)
Metadata
Title
A Control-Theoretic Approach to Self-adaptive Systems and an Application to Cloud-Based Software
Authors
Carlo Ghezzi
Giovanni Paolo Gibilisco
Claudio Menghi
Marco Miglierina
Copyright Year
2015
DOI
https://doi.org/10.1007/978-3-319-28406-4_3

Premium Partner