Skip to main content

Emerging Techniques for the Engineering of Self-Adaptive High-Integrity Software

  • Chapter
Assurances for Self-Adaptive Systems

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7740))

Abstract

The demand for cost effectiveness and increased flexibility has driven the fast-paced adoption of software systems in areas where requirement violations may lead to financial loss or loss of life. Many of these software systems need to deliver not only high integrity but also self adaptation to the continual changes that characterise such application areas. A challenge long solved by control theory for continuous-behaviour systems was thus reopened in the realm of software systems. Software engineering needs to embark on a quest for self-adaptive high-integrity software. This paper explains the growing need for software capable of both self-adaptation and high integrity, and explores the starting point for the quest to make it a reality. We overview emerging techniques for the engineering of self-adaptive high-integrity software, propose a service-based architecture that aims to integrate these techniques, and discuss opportunities for future research.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aijaz, A., Bochow, B., Dotzer, F., Festag, A., Gerlach, M., Kroh, R., Leinmuller, T.: Attacks on inter vehicle communication systems - an analysis. In: Proc. 3nd Intl. Workshop Intelligent Transportation, pp. 189–194 (2006)

    Google Scholar 

  2. Allan, C., Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhoták, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Adding trace matching with free variables to AspectJ. In: Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2005), pp. 345–364. ACM (2005)

    Google Scholar 

  3. Anliker, U., et al.: AMON: a wearable multiparameter medical monitoring and alert system. IEEE Transactions on Information Technology in Biomedicine 8(4), 415–427 (2004)

    Article  Google Scholar 

  4. Barringer, H., Havelund, K.: TraceContract: A Scala DSL for Trace Analysis. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 57–72. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  5. Barringer, H., Havelund, K., Rydeheard, D., Groce, A.: Rule Systems for Runtime Verification: A Short Tutorial. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 1–24. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  6. Bauer, A., Leucker, M., Schallhart, C.: Model-based methods for the runtime analysis of reactive distributed systems. In: Proc. Australian Software Engineering Conference, pp. 243–252 (2006)

    Google Scholar 

  7. Bennaceur, A., Howar, F., Issarny, V., Johansson, R., Moschitti, A., Spalazzese, R., Steffen, B., Sykes, D.: Machine Learning for Emergent Middleware. In: Proceedings of the Joint Workshop on Intelligent Methods for Software System Engineering (2012)

    Google Scholar 

  8. Bertolino, A., Inverardi, P., Pelliccione, P., Tivoli, M.: Automatic synthesis of behavior protocols for composable web-services. In: Proceedings of the 7th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering, pp. 141–150. ACM (2009)

    Google Scholar 

  9. Burton, S., Clark, J., Galloway, A., McDermid, J.: Automated V&V for high integrity systems, a targeted formal methods approach. In: NASA Langley Formal Methods Workshop (January 2000), ftp://ftp.cs.york.ac.uk/pub/hise/NASALangley.pdf (last retrieved on September 10, 2012)

  10. Calinescu, R.: Run-time connector synthesis for autonomic systems of systems. Journal On Advances in Intelligent Systems 2(2-3), 376–386 (2009)

    Google Scholar 

  11. Calinescu, R.: When the requirements for adaptation and high integrity meet. In: Proceedings of the 8th Workshop on Assurances for Self-Adaptive Systems (ASAS 2011), pp. 1–4. ACM, New York (2011)

    Chapter  Google Scholar 

  12. Calinescu, R., Grunske, L., Kwiatkowska, M., Mirandola, R., Tamburrelli, G.: Dynamic QoS management and optimisation in service-based systems. IEEE Transactions on Software Engineering 37(3), 387–409 (2011)

    Article  Google Scholar 

  13. Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Communications of the ACM 55(9), 69–77 (2012)

    Article  Google Scholar 

  14. Calinescu, R., Johnson, K., Rafiq, Y.: Using observation ageing to improve Markovian model learning in QoS engineering. In: Proceedings 2nd ACM/SPEC International Conference on Performance Engineering, pp. 505–510 (2011)

    Google Scholar 

  15. Calinescu, R., Kikuchi, S.: Formal Methods @ Runtime. In: Calinescu, R., Jackson, E. (eds.) Monterey Workshop 2010. LNCS, vol. 6662, pp. 122–135. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  16. Calinescu, R., Kwiatkowska, M.: CADS*: Computer-Aided Development of Self-* Systems. In: Chechik, M., Wirsing, M. (eds.) FASE 2009. LNCS, vol. 5503, pp. 421–424. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  17. Calinescu, R., Kwiatkowska, M.: Using quantitative analysis to implement autonomic IT systems. In: Proceedings of the 31st International Conference on Software Engineering (ICSE 2009), pp. 100–110 (2009)

    Google Scholar 

  18. Calinescu, R., Kikuchi, S., Johnson, K.: Using Compositional Verification to Manage Change in Large-Scale Complex IT Systems. In: Large-Scale Complex IT Systems - Development, Operation and Management. LNCS, vol. 7539, pp. 303–329. Springer (2012)

    Google Scholar 

  19. Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J., Andersson, J., Becker, B., Bencomo, N., Brun, Y., Cukic, B., Di Marzo Serugendo, G., Dustdar, S., Finkelstein, A., Gacek, C., Geihs, K., Grassi, V., Karsai, G., Kienle, H.M., Kramer, J., Litoiu, M., Malek, S., Mirandola, R., Müller, H.A., Park, S., Shaw, M., Tichy, M., Tivoli, M., Weyns, D., Whittle, J.: Software Engineering for Self-Adaptive Systems: A Research Roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  20. Cavallaro, L., Di Nitto, E., Pelliccione, P., Pradella, M., Tivoli, M.: Synthesizing adapters for conversational web-services from their WSDL interface. In: ICSE 2010 SEAMS: Workshop on Software Engineering for Adaptive and Self-Managing Systems, pp. 104–113 (2010)

    Google Scholar 

  21. Collins, J., Ketter, W., Gini, M.: Flexible decision control in an autonomous trading agent. Electronic Commerce Research & Appl. 8(2), 91–105 (2009)

    Article  Google Scholar 

  22. COM(2011) 144: European Commission. Roadmap to a Single European Transport Area Towards a competitive and resource efficient transport system (2011), http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=COM:2011:0144:FIN:EN:PDF (last retrieved on September 10, 2012)

  23. Crow, J., Rushby, J.: Model-based reconfiguration: Diagnosis and recovery. NASA Contractor Report 4596, NASA Langley Research Center, Hampton, VA (Work performed by SRI International) (May 1994)

    Google Scholar 

  24. Easley, D., de Prado, M.M.L., O’Hara, M.: The microstructure of the ‘Flash Crash’: Flow toxicity, liquidity crashes and the probability of informed trading. Journal of Portofolio Management 37(2), 118–128 (2011)

    Article  Google Scholar 

  25. Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model evolution by run-time adaptation. In: Proceedings of the 31st International Conference on Software Engineering, pp. 111–121. IEEE Computer Society Press (2009)

    Google Scholar 

  26. Feng, G., Lozano, R.: Adaptive Control Systems. Elsevier (1999)

    Google Scholar 

  27. Filieri, A., Ghezzi, C., Tamburrelli, G.: Run-time efficient probabilistic model checking. In: Proceedings of the 33rd International Conference on Software Engineering, IEEE Computer Society (2011)

    Google Scholar 

  28. Future Internet Assembly. Research Roadmap Towards Framework 8: Research Priorities for the Future Internet (2011), http://fisa.future-internet.eu/images/0/0c/Future_Internet_Assembly_Research_Roadmap_V1.pdf

  29. Floch, J., Hallsteinsen, S., Stav, E., Eliassen, F., Lund, K., Gjorven, E.: Using architecture models for runtime adaptability. IEEE Software 23, 62–70 (2006)

    Article  Google Scholar 

  30. Fritsch, S., Senart, A., Schmidt, D.C., Clarke, S.: Time-bounded adaptation for automotive system software. In: Proceedings of the 30th International Conference on Software Engineering, ICSE 2008, pp. 571–580. ACM, New York (2008)

    Google Scholar 

  31. Garlan, D., Schmerl, B.R.: Using architectural models at runtime: Research challenges. In: European Workshop Software Architecture, pp. 200–205 (2004)

    Google Scholar 

  32. Ghezzi, C.: Evolution, adaptation and the quest for incrementality. In: Preproceedings of the 17th Monterey Workshop on Development, Operation and Management of Large-Scale Complex IT Systems, pp. 79–88 (2012)

    Google Scholar 

  33. Ghini, V., Ferretti, S., Panzieri, F.: M-Hippocrates: Enabling Reliable and Interactive Mobile Health Services. IT Professional 14(3), 29–35 (2012)

    Article  Google Scholar 

  34. Hartenstein, H., Laberteaux, K.P. (eds.): VANET: Vehicular Applications and Inter-Networking Technologies. John Wiley & Sons (2009)

    Google Scholar 

  35. Huebscher, M.C., McCann, J.A.: A survey of autonomic computing—degrees, models, and applications. ACM Comp. Surveys 40(3), 1–28 (2008)

    Article  Google Scholar 

  36. Issarny, V., Bennaceur, A., Bromberg, Y.-D.: Middleware-Layer Connector Synthesis: Beyond State of the Art in Middleware Interoperability. In: Bernardo, M., Issarny, V. (eds.) SFM 2011. LNCS, vol. 6659, pp. 217–255. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  37. Izumi, K., Toriumi, F., Matsui, H.: Evaluation of automated-trading strategies using an artificial market. Neurocomputing 72(16-18), 3469–3476 (2009)

    Article  Google Scholar 

  38. Kephart, J.O., Chess, D.M.: The vision of autonomic computing. IEEE Computer Journal 36(1), 41–50 (2003)

    Article  Google Scholar 

  39. Kovatchev, B.: Closed loop control for type 1 diabetes. British Medical Journal 342, d1911 (2011)

    Google Scholar 

  40. Kramer, G.C., Kinsky, M.P., Prough, D.S., Salinas, J., Sondeen, J.L., Hazel-Scerbo, M.L., Mitchell, C.E.: Closed-loop control of fluid therapy for treatment of hypovolemia. Journal of Trauma-Injury Infection & Critical Care 64(4), S333–S341 (2008)

    Google Scholar 

  41. Kwiatkowska, M.: Quantitative verification: Models, techniques and tools. In: Proc. 6th Joint Meeting of the European Software Engineering Conf. and the ACM SIGSOFT Symp. Foundations of Software Engineering, pp. 449–458. ACM Press (2007)

    Google Scholar 

  42. Kwiatkowska, M., Parker, D., Qu, H.: Incremental quantitative verification for Markov decision processes. In: Proceedings 2011 IEEE/IFIP International Conference Dependable Systems and Networks (2011)

    Google Scholar 

  43. Kyas, M., Prisacariu, C., Schneider, G.: Run-Time Monitoring of Electronic Contracts. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 397–407. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  44. Lee, U., Cheung, R., Gerla, M.: Emerging vehicular applications. In: Olariu, S., Weigle, M.C. (eds.) Vehicular Networks: From Theory to Practice. Chapman and Hall/CRC (2009)

    Google Scholar 

  45. Leucker, M., Schallhart, C.: A brief account of runtime verification. Journal of Logic and Algebraic Programming 78(5), 293–303 (2009)

    Article  MATH  Google Scholar 

  46. Mastrototaro, J., Lee, S.: The Integrated MiniMed Paradigm Real-Time Insulin Pump and Glucose Monitoring System: Implications for Improved Patient Outcomes. Diabetes Technology & Therapeutics 11(s1), 37–43 (2009)

    Article  Google Scholar 

  47. Meredith, P., Roşu, G.: Runtime Verification with the RV System. In: Barringer, H., Falcone, Y., Finkbeiner, B., Havelund, K., Lee, I., Pace, G., Roşu, G., Sokolsky, O., Tillmann, N. (eds.) RV 2010. LNCS, vol. 6418, pp. 136–152. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  48. Meyer, B.: Dependable Software. In: Kohlas, J., Meyer, B., Schiper, A. (eds.) Dependable Systems: Software, Computing, Networks. LNCS, vol. 4028, pp. 1–33. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  49. Meyer, G.: Traders flummoxed by natural gas ‘flash crash’. Financial Times (June 9, 2011)

    Google Scholar 

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

    Article  Google Scholar 

  51. Networked European Software and Services Initiative. Research Priorities for the next Framework Programme for Research and Technological Development FP8 (May 2011), http://www.nessi-europe.com/files/Docs/NESSI%20SRA_update_May_2011_V1-0.pdf

  52. Wallace, D.R., Ippolito, L.M., Kuhn, D.R.: High Integrity Software Standards and Guidelines. NIST SP 500-204, National Institute of Standards and Technology, Gaithersburg, MD, 20899 (September 1992)

    Google Scholar 

  53. National Science Foundation. Cyberinfrastructure Framework for 21st Century Science and Engineering. A Vision and Strategy for Data in Science, Engineering, and Education (April 2012), http://www.nsf.gov/od/oci/cif21/DataVision2012.pdf

  54. Pnueli, A., Zaks, A.: PSL Model Checking and Run-Time Verification Via Testers. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 573–586. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  55. Rushby, J.: Runtime Certification. In: Leucker, M. (ed.) RV 2008. LNCS, vol. 5289, pp. 21–35. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

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

    Article  Google Scholar 

  57. Sommerville, I., Cliff, D., Calinescu, R., Keen, J., Kelly, J.T., Kwiatkowska, M., McDermid, J., Paige, R.: Large-scale complex IT systems. Communications of the ACM 55(7), 71–77 (2012)

    Article  Google Scholar 

  58. Food, U.S.: Drug Administration — Center for Devices and Radiological Health. Infusion pump improvement initiative, White paper (April 2010), http://www.fda.gov/MedicalDevices/ProductsandMedicalProcedures/GeneralHospitalDevicesandSupplies/InfusionPumps/ucm205424.htm (last retrieved on September 10, 2012)

  59. Zheng, T., Woodside, M., Litoiu, M.: Performance model estimation and tracking using optimal filters. IEEE Transactions on Software Engineering 34(3), 391–406 (2008)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Calinescu, R. (2013). Emerging Techniques for the Engineering of Self-Adaptive High-Integrity Software. In: Cámara, J., de Lemos, R., Ghezzi, C., Lopes, A. (eds) Assurances for Self-Adaptive Systems. Lecture Notes in Computer Science, vol 7740. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36249-1_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-36249-1_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-36248-4

  • Online ISBN: 978-3-642-36249-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics