Abstract
Software engineering must cope with a more and more increasing need for evolutivity of software systems in order to make their administration easier. However, evolution and especially dynamic evolution in a system must not be done at the expense of its reliability, that is to say its ability to deliver the expected functionalities. Actually runtime modifications in a given system may lead to inconsistent states and so it can have an impact on its reliability. The aim of this paper is to guarantee reliability of dynamic reconfigurations used to make component-based systems evolve at runtime while preserving their availability. We propose a definition of consistency for configurations and reconfigurations in Fractal component architectures with a model based on integrity constraints like for example structural invariants. Reliability of reconfigurations is ensured thanks to a transactional approach which allows us both to deal with error recovery and to manage distributed and concurrent reconfigurations in Fractal applications.
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
Abowd, G., Allen, R., Garlan, D.: Using style to understand descriptions of software architecture. SIGSOFT Softw. Eng. Notes 18(5) (1993)
Avizienis, A., Laprie, J.-C., Randell, B., Landwehr, C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secur. Comput. 1(1), 11–33 (2004)
Batista, T., Joolia, A., Coulson, G.: Managing dynamic reconfiguration in component-based systems. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527. Springer, Heidelberg (2005)
Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.-B.: An open component model and its support in java. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 7–22. Springer, Heidelberg (2004)
Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.): Software Engineering for Self Adaptive Systems. LNCS, vol. 5525. Springer, Heidelberg (2009)
Coulson, G., Blair, G., Grace, P., Taiani, F., Joolia, A., Lee, K., Ueyama, J., Sivaharan, T.: A generic component model for building systems software. ACM Trans. Comput. Syst. 26(1), 1–42 (2008)
Dashofy, E.M., van der Hoek, A., Taylor, R.N.: A highly extensible, XML-based architecture description language. In: Proceedings of Working IEEE/IFIP Conference on Software Architecture (WICSA 2001), Amsterdam, Netherlands (2001)
David, P.-C., Ledoux, T., Léger, M., Coupaye, T.: FPath and FScript: Language support for navigation and reliable reconfiguration of Fractal architectures. Annals of Telecommunications 64(1), 45–63 (2009)
Garlan, D., Cheng, S.-W., Huang, A.-C., Schmerl, B., Steenkiste, P.: Rainbow: Architecture based self-adaptation with reusable infrastructure. Computer 37(10), 46–54 (2004)
Garlan, D., Monroe, R.T., Wile, D.: Acme: architectural description of component-based systems. In: Foundations of component-based systems, pp. 47–67. Cambridge University Press, New York (2000)
Jackson, D.: Alloy: a lightweight object modelling notation. ACM Trans. Softw. Eng. Methodol. 11(2), 256–290 (2002)
Kephart, J., Chess, D.M.: The vision of autonomic computing. IEEE Computer 36(1), 41–50 (2003)
Léger, M., Ledoux, T., Coupaye, T.: Reliable dynamic reconfigurations in the fractal component model. In: Proceedings of Workshop on Adaptive and Reflective Middleware (ARM 2007), pp. 1–6. ACM, New York (2007)
Lehman, M.M., Parr, F.N.: Program evolution and its impact on software engineering. In: Proceedings of International Conference on Software Engineering (ICSE 1976), pp. 350–357. IEEE Computer Society Press, Los Alamitos (1976)
Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)
Mezini, M., Ostermann, K.: Variability management with feature-oriented programming and aspects. SIGSOFT Softw. Eng. Notes 29(6), 127–136 (2004)
Monroe, R.T.: Capturing software architecture design expertise with armani. Technical Report CMU-CS-98-163, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, USA (January 2001)
Moreira, R.S., Blair, G.S., Carrapatoso, E.: Supporting adaptable distributed systems with FORMAware. In: Proceedings of International Conference on Distributed Computing Systems Workshops (ICDCSW 2004), Washington, DC, USA, pp. 320–325. IEEE Computer Society, Los Alamitos (2004)
Morin, B., Barais, O., Nain, G., Jezequel, J.-M.: Taming dynamically adaptive systems using models and aspects. In: Proceedings of International Conference on Software Engineering (ICSE 2009), Washington, DC, USA, pp. 122–132. IEEE Computer Society Press, Los Alamitos (2009)
OCL 2.0 Specification (2005), http://www.omg.org/docs/ptc/05-06-06.pdf
Oreizy, P.: Issues in the runtime modification of software architectures. Technical Report UCI-ICS-TR-96-35, Department of Information and Computer Science University of California, Irvine (August 1996)
Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture based runtime software evolution. In: Proceedings of International Conference on Software Engineering (ICSE 1998), Washington, DC, USA, pp. 177–186. IEEE Computer Society, Los Alamitos (1998)
Roshandel, R., Van Der Hoek, A., Mikic-Rakic, M., Medvidovic, N.: Mae — a system model and environment for managing architectural evolution. ACM Trans. Softw. Eng. Methodol. 13(2), 240–276 (2004)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)
Traiger, I.L., Gray, J., Galtieri, C.A., Lindsay, B.G.: Transactions and consistency in distributed database systems. ACM Trans. Database Syst. 7(3), 323–342 (1982)
Weikum, G., Schek, H.-J.: Concepts and applications of multilevel transactions and open nested transactions, pp. 515–553. Morgan Kaufmann Publishers Inc., San Francisco (1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Léger, M., Ledoux, T., Coupaye, T. (2010). Reliable Dynamic Reconfigurations in a Reflective Component Model. In: Grunske, L., Reussner, R., Plasil, F. (eds) Component-Based Software Engineering. CBSE 2010. Lecture Notes in Computer Science, vol 6092. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13238-4_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-13238-4_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-13237-7
Online ISBN: 978-3-642-13238-4
eBook Packages: Computer ScienceComputer Science (R0)