Abstract
Although runtime validation and verification are critical for ensuring reliability in autonomic software, research in these areas continues to lag behind other aspects of system development. Few researchers have tackled the problem of testing autonomic software at runtime, and the current state-of-the-art only addresses localized validation of self-adaptive changes. Such approaches fall short because they cannot reveal faults which may occur at different levels of the system. In this paper, we describe an approach that enables system-wide runtime testing of behavioral adaptations in autonomic software. Our approach applies a dependency-based test order strategy at runtime to facilitate integration and system-level regression testing in autonomic software. Since validation occurs on-line during system operations, we perform testing as part of a safe approach to adaptation. To investigate the feasibility of our approach, we apply it to an autonomic communication virtual machine.
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
Allen, A.A., Wu, Y., Clarke, P.J., King, T.M., Deng, Y.: An autonomic framework for user-centric communication services. In: CASCON 2009, pp. 203–215. ACM Press, New York (2009)
Briand, L.C., Labiche, Y., Wang, Y.: An investigation of graph-based class integration test order strategies. IEEE Trans. Software Eng. 29(7), 594–607 (2003)
Da Costa, A.D., Nunes, C., Da Silva, V.T., Fonseca, B., De Lucena, C.J.P.: JAAF+T: a framework to implement self-adaptive agents that apply self-test. In: SAC 2010, pp. 928–935. ACM, New York (2010)
Deng, Y., Sadjadi, S.M., Clarke, P.J., Hristidis, V., Rangaswami, R., Wang, Y.: CVM-a communication virtual machine. J. Syst. Softw. 81(10), 1640–1662 (2008)
Doliner, M., Lukasik, G., Thomerson, J.: Cobertura 1.9 (2002), http://cobertura.sourceforge.net/ (June 2011)
Gamma, E., Beck, K.: JUnit 3.8.1 (2005), http://www.junit.org/ (June 2011)
IBM Autonomic Computing Architecture Team: An architectural blueprint for autonomic computing. Tech. rep., IBM, Hawthorne, NY (June 2006)
Jive Software: Smack API (November 2008), http://www.igniterealtime.org/projects/smack/ (June 2011)
Kephart, J., Chess, D.: The vision of autonomic computing. Computer 36(1), 41–52 (2003)
King, T.M., Babich, D., Alava, J., Stevens, R., Clarke, P.J.: Towards self-testing in autonomic computing systems. In: ISADS 2007, pp. 51–58. IEEE Computer Society Press, Washington, DC, USA (2007)
King, T.M., Ramirez, A., Clarke, P.J., Quinones-Morales, B.: A reusable object-oriented design to support self-testable autonomic software. In: SAC 2008, pp. 1664–1669. ACM, New York (2008)
Liu, H., Parashar, M., Hariri, S.: A component-based programming model for autonomic applications. In: ICAC 2004, pp. 10–17. IEEE, Los Alamitos (2004)
Ma, Y.S., Kwon, Y.R., Offutt, J.: Mu Java 3 (November 2008), http://cs.gmu.edu/~offutt/mujava/ (June 2011)
Patouni, E., Alonistioti, N.: A framework for the deployment of self-managing and self-configuring components in autonomic environments. In: WOWMOM 2006, pp. 480–484. IEEE Computer Society, Washington, DC, USA (2006)
Ramirez, A., Morales, B., King, T.M.: A self-testing autonomic job scheduler. In: ACM-SE 46, pp. 304–309. ACM Press, New York (2008)
van Renesse, R., Birman, K.P.: Autonomic Computing – A System-Wide Perspective. In: Parashar, M., Hariri, S. (eds.), Taylor & Francis, Inc., Bristol (2007)
Rocha, C.R., Martins, E.: A strategy to improve component testability without source code. In: SOQUA/TECOS, pp. 47–62 (2004)
Salehie, M., Tahvildari, L.: Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst. 4(2), 1–42 (2009)
Skype Limited: Skype API (February 2007), https://developer.skype.com/ (June 2011)
Stevens, R., Parsons, B., King, T.M.: A self-testing autonomic container. In: ACM-SE 45, pp. 1–6. ACM Press, New York (2007)
The Eclipse Foundation: Test and Performance Tools Platform (November 2001), http://www.eclipse.org/tptp/ (June 2011)
Walls, C., Breidenbach, R.: Spring in Action. Manning Publications Co., Greenwich (2005)
Zhang, C., Sadjadi, S.M., Sun, W., Rangaswami, R., Deng, Y.: A user-centric network communication broker for multimedia collaborative computing, pp. 1–5 (November 2006)
Zhang, J., Cheng, B.H.C., Yang, Z., McKinley, P.K.: Enabling safe dynamic component-based software adaptation. In: WADS, pp. 194–211 (2004)
Zhang, J., Goldsby, H.J., Cheng, B.H.: Modular verification of dynamically adaptive systems. In: AOSD 2009, pp. 161–172. ACM, New York (2009)
Zhao, Y., Kardos, M., Oberthür, S., Rammig, F.J.: Comprehensive verification framework for dependability of self-optimizing systems. In: Peled, D.A., Tsay, Y.-K. (eds.) ATVA 2005. LNCS, vol. 3707, pp. 39–53. Springer, Heidelberg (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
King, T.M., Allen, A.A., Cruz, R., Clarke, P.J. (2011). Safe Runtime Validation of Behavioral Adaptations in Autonomic Software. In: Calero, J.M.A., Yang, L.T., Mármol, F.G., GarcÃa Villalba, L.J., Li, A.X., Wang, Y. (eds) Autonomic and Trusted Computing. ATC 2011. Lecture Notes in Computer Science, vol 6906. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23496-5_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-23496-5_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-23495-8
Online ISBN: 978-3-642-23496-5
eBook Packages: Computer ScienceComputer Science (R0)