Skip to main content
Log in

A self-learning approach for validation of runtime adaptation in service-oriented systems

  • Special Issue Paper
  • Published:
Service Oriented Computing and Applications Aims and scope Submit manuscript

Abstract

Ensuring that service-oriented systems can adapt quickly and effectively to changes in service quality, business needs and their runtime environment is an increasingly important research problem. However, while considerable research has focused on developing runtime adaptation frameworks for service-oriented systems, there has been little work on assessing how effective the adaptations are. Effective adaptation ensures the system remains relevant in a changing environment and is an accurate reflection of user expectations. One way to address the problem is through validation. Validation allows us to assess how well a recommended adaptation addresses the concerns for which the system is reconfigured and provides us with insights into the nature of problems for which different adaptations are suited. However, the dynamic nature of runtime adaptation and the changeable contexts in which service-oriented systems operate make it difficult to specify appropriate validation mechanisms in advance. This paper describes a novel consumer-centered approach that uses machine learning to continuously validate and refine runtime adaptation in service-oriented systems, through model-based clustering and deep learning.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

References

  1. Rosen M, Lublinsky B, Smith KT, Balcer MJ (2008) Applied SOA: service-oriented architecture and design strategies. Wiley, New York

    Google Scholar 

  2. Taylor RN, Medvidovic N, Oreizy P (2009) Architectural styles for runtime software adaptation. In: European conference on software architecture, joint working IEEE/IFIP conference European conference on software architecture: 171180, Cambridge, pp 171–180

  3. Salehie M, Tahvildari L (2009) Self-adaptive software: landscape and research challenges. ACM Trans Auton. Adapt. Syst. 42:1–42

    Article  Google Scholar 

  4. de Lemos R et al (2013) Software engineering for self-adaptive systems: a second research roadmap. Lecture notes in computer science, vol 7475. Springer, Berlin, pp 1–32

    Google Scholar 

  5. Papazoglou MP, Traverso P, Distar S, Leymann F (2007) Service-oriented computing: state of the art and research challenges. IEEE Comput Soc 40:38–45

    Article  Google Scholar 

  6. Cardellini V, Casalicchio E, Grassi V, Prestiand FL, Mirandola R (2009) Towards self-adaptation for dependable service-oriented systems. ICSOC Lecture notes in computer science, vol 5835. Springer, Berlin, pp 24–48

    Google Scholar 

  7. Sommerville I (2016) Software enginnering, 10th edn. Pearson Education, London

    Google Scholar 

  8. Caruana R, Niculescu-Mizil A (2006) An empirical comparison of supervised learning algorithms. In: Proceedings of the 23rd international conference on Machine learning, Pittsburgh, Pennsylvania, pp 161–168, 25–29 June 2006

  9. Ahmad MW, Mourshed M, Rezgui Y (2017) Trees vs. neurons: comparison between random forest and ANN for high-resolution prediction of building energy consumption. Energy Build 147:77–89

    Article  Google Scholar 

  10. Breiman L (2001) Random forests. Mach Learn 45(1):5–32

    Article  MATH  Google Scholar 

  11. Cutler A, Zhao G (2001) PERT-perfect random tree ensembles. Comput Sci Stat 33:490–497

    Google Scholar 

  12. Wang RY, Storey VC, Firth CP (1995) A framework for analysis of data quality research. IEEE Trans Knowl Data Eng 7:632–640

    Article  Google Scholar 

  13. Mhaskar H, Liao Q, Poggio T (2017) When and why are deep networks better than shallow ones? In: Proceedings of the 31st AAAI conference on artificial intelligence, 4–9 Feb 2017, pp 2343–2349

  14. Mutanu L, Kotonya G (2016) Consumer-centred validation for runtime adaptation in service-oriented system. In: Proceedings of 9th international conference on service-oriented computing and applications (SOCA), Macau, pp 16–23

  15. Filieri A et al (2015) Software engineering meets control theory. In: Proceedings of 10th international symposium on software engineering for adaptive and self-managing systems (SEAMS, 2015), pp 71–82

  16. Cheng BHC, de Lemos R et al (2009) Software engineering for self-adaptive systems: a research road map. Springer, Berlin, pp 1–26

    Google Scholar 

  17. Breitgand D, Henis E, Shehory O (2005) Automated and adaptive threshold setting: enabling technology for autonomy and self-management. In: IEEE international conference on autonomic computing (ICAC), pp 204–215

  18. Sutanto EL, Warwick K (1995) Cluster analysis for multivariable process control. In: Proceedings of American control conference, vol 1, pp 749–750

  19. Eze T, Anthony RJ, Walshaw C, Soper A (2011) The challenge of validation for autonomic and self-managing systems. In: Proceedings of 7th international conference on AAS, pp 128–133

  20. Weyns D, Iftikhar U (2016) Model-based simulation at runtime for self-adaptive systems. In: 13th International conference on autonomic computing Germany, pp 1–9

  21. Schumann J, Gupta P, Jacklin S (2005) Toward verification and validation of adaptive aircraft controllers. In: Proceedings of IEEE aerospace conference. IEEE Press

  22. Zhang J, Goldsby H, Cheng BHC (2009) Modular verification of dynamically adaptive systems. In: Proceedings of 8th international conference on aspect oriented software development, pp 161–172

  23. Calinescu R, Grunske L, Kwiatkowska M, Mirandola R, Tamburrelli G (2011) Dynamic QoS management and optimization in service-based systems. IEEE Trans Softw Eng 37(3):387–409

    Article  Google Scholar 

  24. Cardozo N, Christophe L, De Roover C, De Meuter W (2014) Run-time validation of behavioral adaptations. In: Proceedings of 6th international workshop on context-oriented programming, ser. COP14. ACM, pp 5–6

  25. King TM, Ramirez AE, Cruz R, Clarke PJ (2007) An integrated self-testing framework for autonomic computing systems. J Comput 2(9):3749

    Article  Google Scholar 

  26. Skalkowski K, Sota R, KrL D, Kitowski J (2013) QoS-based storage resources provisioning for grid applications. Future Gener Comput Syst J 29:713727

    Article  Google Scholar 

  27. Canfora G, Di Penta M (2006) SOA: testing and self-checking. In: Proceedings of the international workshop on web services modeling and testing, Palermo, Italy, p 312

  28. Hoffert J, Mack D, Schmidt DC (2009) Using machine learning to maintain pub/sub system QoS in dynamic environments. In: Proceedings of the 8th international workshop on adaptive and reflective middleware

  29. Hielscher J, Kazhamiakin R, Metzger A, Pistore M (2008) A framework for proactive self-adaptation of service-based applications based on online testing. In: Proceedings of first European conference on towards a service-based internet, pp 122–133

  30. Tamura G, Villegas N, Muller H et al (2013) Towards practical runtime verification and validation of self-adaptive software systems. Lecture notes in computer science, vol 7475, pp 108–132

  31. Sammodi O, Metzger A, Franch X, Oriol M, Marco J, Pohl K (2011) Usage-based online testing for proactive adaptation of service-based applications. In: COMPSAC 2011, IEEE Computer Society, pp 582–587

  32. Baresi L, Heckel R, Thne S, Varr D (2003) Modeling and validation of service-oriented architectures: application vs. style. In: Proceedings of ESEC/FSE and ACM SIGSOFT. ACM Press, pp 68–77

  33. Alfares HK, Duffua SO (2008) Assigning cardinal weights in multi-criteria decision making based on ordinal ranking. J Multi Criteria Decis Anal 5:77–83

    Google Scholar 

  34. Bouguettaya A, Benatallah B, Blake MB, Casati F, Chen L, Dong H, Dustdar S, Erradi A, Georgakopoulos D, Huhns MN, Liu X, Leymann F, Mistry S, Medjahed B, Malik Z, Neiat AG, Nepal S, Ouzzani M, Papazoglou MP, Singh MP, Sheng QZ, Wang H, Wang Y, Yu Q (2017) A service computing manifesto: the next 10 years. Commun ACM 60:64–72

    Article  Google Scholar 

  35. Kenya Demographic and Health Survey, Kenya Open Data. Retrieved from https://opendata.go.ke, updated Apr 14 2015

  36. Namuye S, Mutanu L, Chege G, Macharia J (2014) Leveraging health through the enhancement of information access using Mobile and service-oriented technology. In: Proceedings of the IST-Africa conference, pp 1–9

  37. Piotrowski AP, Jarosaw JN (2013) A comparison of methods to avoid overfitting in neural networks training in the case of catchment runoff modelling. J Hydrol 476:97–111

    Article  Google Scholar 

  38. Fleurey F, Dehlen V, Bencomo N, Morin B, Jzquel JM (2008) Modeling and validating dynamic adaptation. In: 3rd International workshop on models@runtime (MOD-ELS08), France, pp 97–108

  39. Autili M, Berardinelli B, Cortellessa V, DiMarco A, DiRuscio D, Inverardi P, Tivoli M (2007) A developmentprocess for self-adapting service-oriented applications. ICSOC. Springer, Heidelberg, pp 442–448

    Google Scholar 

  40. Arcaini P, Riccobene E, Scandurra P (2015) Modeling and analyzing MAPE-K feedback loops for self-adaptation. In: Proceedings of the 10th international symposium on software engineering for adaptive and self-managing systems, SEAMS 15. IEEE Press, pp 13–23

  41. Dustdar S, Goeschka K, Truong H, Zdun U (2009) Self-adaptation techniques for complex service-oriented systems. In: 5th International conference on next generation web services practices. IEEE Press, pp 37–43

  42. Morin B, Barais O, Jzquel J-M, Fleurey F, Solberg A (2009) Models@run.time to support dynamic adaptation. IEEE Comput 42(10):44–51

    Article  Google Scholar 

  43. Jureta IJ, Faulkner S, Thiran P (2007) Dynamic requirements specification for adaptable and open service systems. In: Requirements engineering conference, pp 381–382

  44. Gomaa H, Hashimoto K (2014) Model-based run-time software adaptation for distributed hierarchical service coordination. In: Proceedings of sixth international conference on adaptive and self-adaptive systems and applications, Venice, pp 1–6

  45. Wang Q, Quan L, Ying F (2004) Online testing of Web-based applications. In: Proceedings of the 28th annual international computer software and applications conference (COMPSAC), pp 166–169

  46. Bartolini N, Bongiovanni GC, Silvestri S (2009) Self-* through self-learning: overload control for distributed web systems. Comput Netw 53(5):727–743

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gerald Kotonya.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mutanu, L., Kotonya, G. A self-learning approach for validation of runtime adaptation in service-oriented systems. SOCA 12, 11–24 (2018). https://doi.org/10.1007/s11761-017-0222-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11761-017-0222-0

Keywords

Navigation