Skip to main content
Log in

A review on architecture and models for autonomic software systems

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Autonomic computing was the term coined by IBM in 2001. The term autonomic computing was used to define the self-adaptable nature of the human body. According to IBM, the same self-adaptable feature was the need to be incorporated in the software systems. Autonomic computing is the combination of few self-capabilities such as self-configuration, self-healing, self-optimization, self-protection, self-awareness, etc. So, autonomic computing approach was then used to develop autonomic software systems. This approach makes the computing systems self-adaptable and self-decision-making support systems for various activities. It also helps to reduce the human intervention in the software management process. Though, the implementation of autonomic self-capabilities may increase the software complexity, which further requires human intervention for the software maintenance-related specific tasks. Still, IT industries are approaching to develop autonomic features in their existing architecture or developing new self-adaptable software systems. Autonomic computing has its importance for providing a bridge for handling and managing the run-time computation-based issues/exceptions of the software. So, the discussion of this solution has become a necessity for making the vision of autonomic decision making more clear and understandable for researchers and developers for the improvement in an autonomic area. The paper provides an insight vision of the autonomic decision-making concept and its importance for the various purposes such as intrusion detection, cloud-based data security, wireless sensor network, Internet of Things, Big Data and many other areas where management cannot be handled by a human in real time. To assess the degree of autonomic feature, there is another term used which is known as autonomicity. The paper also discusses some solutions suggested and implemented by different researchers during their studies for estimating the system’s autonomicity level. These solutions will help in comparing different autonomic applications based on the autonomic features implemented in each application. This paper is an attempt to provide better understandability in the autonomic computational field.

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

Similar content being viewed by others

References

  1. Horn P (2001) Autonomic computing: IBM's perspective on the state of information. IBM

  2. Kephart JO, Chess DM (2003) The vision of autonomic computing. IEEE Comput 36(1):41–50

    Article  Google Scholar 

  3. SAS home page (2015). https://www.darpa.mil/ato/programs/suosas.htm. Accessed 9 May 2019

  4. Cobleigh JM, Osterweil LJ, Wise A, Lerner BS (2002) Containment units: a hierarchically composable architecture for adaptive systems. SIGSOFT Softw Eng Notes 27(6):159–165

    Article  Google Scholar 

  5. Garlan D, Schmerl B, Chang J (2001) Using gauges for architecture-based monitoring and adaptation. In: Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Australia

  6. Kaiser G, Gross P, Kc G, Parekh J, Valletto G (2002) An approach to autonomizing legacy systems. In: Proceedings of the Workshop on Self-Healing, Adaptive and Self-MANaged Systems

  7. Wolf AL, Heimbigner D, Bend JK (2000) Don’t break: using reconfiguration to achieve survivability. In: Proceedings of the 3rd Information Survivability Workshop

  8. Badger L (2004) Self-regenerative systems (SRS) program. Abstract.www.tolerantsystems.org/. Accessed 13 May 2019

  9. Nami MR, Sharifi M (2007) Autonomic computing: a new approach. In: First Asia International Conference on Modelling & Simulation (AMS'07). IEEE, pp 352–357

  10. IBM Corporation (2005) An architectural blueprint for autonomic computing, 3rd edn

  11. McCann JA, Huebscher MC (2004) Evaluation issues in autonomic computing. In: Grid and Cooperative Computing Workshops. Springer, pp 597–608

  12. Hariri SA (2005) Autonomic computing: an overview. Unconventional programming paradigms. Springer, Berlin, pp 257–269

    Google Scholar 

  13. Ganek AG, Corbi TA (2003) The dawning of the autonomic computing era. IBM Syst J 42(1):5–18

    Article  Google Scholar 

  14. Salehie M, Tahvildari L (2005) Autonomic computing: emerging trends and open problems. ACM SIGSOFT Softw Eng Notes 30(4):1–7

    Article  Google Scholar 

  15. Cloud Computing: Why the Future of Cloud lies in autonomics. https://www.comparethecloud.net/articles/why-the-future-of-cloud-lies-in-autonomics/. Accessed on March 2020

  16. TahirM, Ashraf QM, Dabbagh M (2019) Towards enabling autonomic computing in IoT ecosystem. In: 2019 IEEE International Conference on Dependable, Autonomic and Secure Computing, International Conference on Pervasive Intelligence and Computing, International Conference on Cloud and Big Data Computing, International Conference on Cyber Science and Technology Congress (DASC/PiCom/CBDCom/CyberSciTech). IEEE, pp 646–651

  17. Vieira K, Koch FL, Sobral JBM, Westphall CB, de Souza Leão JL (2019) Autonomic Intrusion detection and response using big data. IEEE Syst J. https://doi.org/10.1109/JSYST.2019.2945555

    Article  Google Scholar 

  18. Khalid A, Haye MA, Khan MJ, Shamail S (2009) Survey of frameworks, architectures and techniques in autonomic computing. In: Fifth International Conference on IEEE Explore

  19. Muscettola N, Nayak PP, Pell B, Williams BC (1998) Remote agent: to boldly go where no AI system has gone before. Artif Intell 103(1–2):5–47

    Article  MATH  Google Scholar 

  20. Huebscher MC, McCann JA (2008) A survey of autonomic computing—degrees, models, and applications. ACM Comput Surv 40(3):7

    Article  Google Scholar 

  21. Garlan D, Cheng SW, Huang AC, Bradley S, Steenkiste P (2004) Rainbow: architecture-based self-adaptation with reusable infrastructure. IEEE Comput 37(10):46–54

    Article  Google Scholar 

  22. Wang Q (2005) Towards a rule model for self-adaptive software. ACM SIGSOFT Softw Eng Notes 30(1):1–5

    Article  Google Scholar 

  23. Kumar M, Sharma A (2017) An integrated framework for software vulnerability detection, analysis and mitigation: an autonomic system. Sādhanā 42(9):1481–1493

    Article  Google Scholar 

  24. Pena J et al (2006) A model-driven architecture approach for modeling, specifying and deploying policies in autonomous and autonomic systems. In: 2006 2nd IEEE International Symposium on Dependable, Autonomic and Secure Computing. IEEE, pp 19–30

  25. Brown B, Redlin C (2005) Measuring the effectiveness of self-healing autonomic systems. In: Second International Conference on Autonomic Computing (ICAC’05)

  26. Eze T, Anthony R, Soper A, Walshaw C (2012) A generic approach towards measuring level of autonomicity in adaptive systems. Int J Adv Intell Syst 5(3&4):553–566

    Google Scholar 

  27. AutonomicComputingToolkit (2015). https://www.ibm.com/developerworks/autonomic/books/fpu1mst.htm. Accessed 1 June 2019

  28. About IBM Autonomic Computing (2015). https://www-03.ibm.com/autonomic/about_get_model.html. Accessed 1 June 2019

  29. www.research.ibm.com/autonomic/academic/research.html (2015). Accessed 1 June 2019

  30. Sharma A, Dehraj P (2015) Complexity based maintenance assessment for autonomic agent. In: WSEAS- Conference, Rome, Italy, pp 7–9

  31. Sharma A, Dehraj P (2015) Complexity assessment for autonomic system using neuro-fuzzy approach. In: CSI- Conference. Springer, Delhi

  32. Kumari N, Sunita S (2013) Comparison of ANNs, fuzzy logic and neuro-fuzzy integrated approach for diagnosis of coronary heart disease: a survey. IJCSMC 2(6):216–224

    Google Scholar 

  33. Patterson D, Brown A, Broadwell P, Candea G, Chen M, Cutler J, Enriquez P, Fox A, Kiciman E, Merzbacher M, Oppenheimer D (2002) Recovery-oriented computing (ROC): motivation, definition, techniques, and case studies. Technical report UCB//CSD-02–1175, UC Berkeley Computer Science, pp 1–25.

  34. Astley M, Bhola S, Saccone R (1997) The Gryphon project. IBM. www.research.ibm.com/distributedmessaging/gryphon.html. Accessed 2015

  35. Zhang R (2007) Autonomic performance recuperation for service-oriented systems. In: IEEE International Conference on Services Computing

  36. Stillger M, Lohman GM, Markl V (2001) LEO-DB2's learning optimizer. VLDB 1:19–28

    Google Scholar 

  37. Lohman GM, Lightstone SS (2002) SMART: making DB2 (more) autonomic. In: 28th International Conference on Very Large Data Bases

  38. Menon J, Pease DA, Reese R, Duyanovich L, Hillsberg B (2003) IBM storage tank—a heterogeneous scalable SAN file system. IBM Syst J 42(2):250

    Article  Google Scholar 

  39. JangraA, Bishla D, Bhatia K, Priyanka P (2010) Functionality and security analysis of ORACLE, IBM-DB2 & SQL server. Glob J Comput Sci Technol 10(7)

  40. Mateen A, Raza B, Hussain T, Awais MM (2008) Autonomic computing in SQL server. In: Seventh IEEE/ACIS International Conference on Computer and Information Science (ICIS 2008). IEEE, pp 113–118

  41. RazaB, Mateen A, Sher M, Awais MM, Hussain T (2010) Autonomic view of query optimizers in database management systems. In: 2010 Eighth ACIS International Conference on Software Engineering Research, Management and Applications (SERA). IEEE, pp 3–8

  42. Oracle Corporation: Technical Comparison of Oracle database Vs IBM DB2 UDB: Focus on performance, Oracle White Paper. https://www.oracle.com/technetwork/database/database10g/twp-perf-oracledb10gr2vsibmdb2udb-159510.pdf. Accessed 15 Sept 2019

  43. Herodotou H, Babu S (2010) Xplus: a SQL-tuning-aware query optimizer. Proc VLDB Endow 3(1–2):1149–1160

    Article  Google Scholar 

  44. DehrajP Sharma A (2019) An empirical assessment of autonomicity for autonomic query optimizers using F-AHP approach. Appl Soft Comput J 90:106137

    Article  Google Scholar 

  45. Pfannemüller M, Krupitzer C, Weckesser M, Becker C (2017) A dynamic software product line approach for adaptation planning in autonomic computing systems. In: 2017 IEEE International Conference on Autonomic Computing (ICAC). IEEE, pp 247–254

  46. Sharma A, Chauhan S, Grover P (2011) Autonomic computing: paradigm shift for software development. CSI Commun 35

  47. Chauhan S, Sharma A, Grover P (2013) Developing self managing software systems using agile modeling. ACM SIGSOFT Softw Eng Notes 38(6):1–3

    Article  Google Scholar 

  48. Shuaib H, Anthony R, Pelc M (2011) A framework for certifying autonomic computing systems. In: The Seventh International Conference on Autonomic and Autonomous Systems

  49. Holler J, Tsiatsis V, Mulligan C, Karnouskos S, Boyle D (2014) From machine-to-machine to the Internet of Things: introduction to a new age of intelligence. Academic Press, New York

    Google Scholar 

  50. Oreizy P, Gorlick MM, Taylor RN, Heimhigner D, Johnson G, Medvidovic N, Wolf AL (1999) An architecture-based approach to self-adaptive software. IEEE Intell Syst Appl 14(3):54–62

    Article  Google Scholar 

  51. Wang M, Suda T (2001) The bio-networking architecture: a biologically inspired approach to the design of scalable, adaptive, and survivable/available network applications. In: Proceedings. 2001 Symposium on Applications and the Internet. IEEE

  52. Sterritt R, Hinchey M (2005) Tutorial proposal: autonomic computing in real-time systems. www.artes.uu.se/events/summer05/Hinchey_tutorial.pdf

  53. Solomon B, Ionescu D, Litoiu M, Iszlai G, Prostean O (2010) Measurements and identification of autonomic computing processes. In: 2010 IEEE International Conference Computational Intelligence for Measurement Systems and Applications (CIMSA), pp 72–77

  54. Portela AER, Perdomo JG (2011) Survey: termites system with self-healing based on autonomic computing. In 2011 6th Colombian Computing Congress (CCC), pp 1–6

  55. Kurian D, Chelliah PR (2012) An autonomic computing architecture for business applications. In IEEE, Information and Communication Technologies (WICT), 2012 World Congress, pp 442–447

  56. De Nicola R, Ferrari G, Loreti M, Pugliese R (2013) A language-based approach to autonomic computing. Formal methods for components and objects. Springer, Berlin

    Google Scholar 

  57. Nhane ALO, Song MAJ (2014) Self-optimization in autonomic computing systems based on the methodology of bees swarm intelligence. The Steering Committee of the World Congress in Computer Science, Computer Engineering and Applied Computing (WorldComp)

  58. Schneider C, Barker A, Dobson S (2015) Autonomous fault detection in self-healing systems using restricted boltzmann machines. In: IEEE Conference. arXiv preprint arXiv:1501.01501

  59. Manzalini A, Deussen PH, Nechifor S, Mamei M, Minerva R, Moiso C, Zambonelli F (2010) Self-optimized cognitive network of networks. Comput J 54(2):189–196

    Article  Google Scholar 

  60. Raza B, Mateen A, Sher M, Awais MM, Hussain T (2010) Autonomic view of query optimizers in database management systems. In: 2010 Eighth ACIS International Conference on Software Engineering Research, Management and Applications (SERA). IEEE, pp 3–8

  61. Sharma A, Dehraj P (2016) Towards autonomicity: from man to machine and its challenges. In: CTICON- Conference, Delhi, India, May 27–28

  62. Al-Oqily I, Alzboon M, Al-Shemery H, Alsarhan A (2013) Towards autonomic overlay self-load balancing. In: 2013 10th International Multi-Conference on Systems, Signals & Devices (SSD). IEEE, pp 1–6

  63. Atif Y, Badr Y, Maamar Z (2010) Towards a new-digital learning ecosystem based on autonomic Web services. In: 2010 4th IEEE International Conference on Digital Ecosystems and Technologies (DEST). IEEE

  64. Alaya MB, Monteil T (2012) Frameself: a generic context-aware autonomic framework for self-management of distributed systems. In: 2012 IEEE 21st International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE). IEEE

  65. Exposito E, Chassot C, Diaz M (2010) New generation of transport protocols for autonomous systems. In: 2010 IEEE GLOBECOM Workshops (GC Wkshps). IEEE

  66. Dehraj P, Sharma A, Grover PS (2018) Incorporating autonomicity and trustworthiness aspects for assessing software quality. IJET 7(1.1):421–425

    Article  Google Scholar 

  67. Smith D, Guan Q, Fu S (2010) An anomaly detection framework for autonomic management of compute cloud systems. In: 2010 IEEE 34th Annual Computer Software and Applications Conference Workshops (COMPSACW). IEEE

  68. Wu Q, Zhu L, Cao J, Zheng R (2012) Proactive intrusion detection model based on autonomic computing. In: International Conference on Automatic Control and Artificial Intelligence (ACAI 2012), IET, pp 1601–1604

  69. Singh S, Chana I, Singh M (2017) The journey of QoS-aware autonomic cloud computing. IT Prof 19(2):42–49

    Article  Google Scholar 

  70. Berekmeri M, Serrano D, Bouchenak S, Marchand N, Robu B (2016) Feedback autonomic provisioning for guaranteeing performance in mapreduce systems. IEEE Trans Cloud Comput 6(4):1004–1016

    Article  Google Scholar 

  71. Nazir S, Patel S, Patel D (2017) Autonomic computing meets SCADA security. In: Proceedings of 2017 IEEE 16th International Conference on Cognitive Informatics and Cognitive Computing, ICCI* CC 2017. London South Bank University, pp 498–502

  72. Golchay R, Mouël FL, Frénot S, Ponge J (2011) Towards bridging IOT and cloud services: proposing smartphones as mobile and autonomic service gateways. arXiv preprint arXiv:1107.4786

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pooja Dehraj.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Dehraj, P., Sharma, A. A review on architecture and models for autonomic software systems. J Supercomput 77, 388–417 (2021). https://doi.org/10.1007/s11227-020-03268-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-020-03268-0

Keywords

Navigation