Abstract
Dynamic reconfiguration allows adding or removing components of component-based systems without incurring any system downtime. To satisfy specific requirements, adaptation policies provide the means to dynamically reconfigure the systems in relation to (events in) their environment. This paper extends event-based adaptation policies by integrating temporal requirements into them. The challenge is to reconfigure component-based systems at runtime while considering both their functional and non-functional requirements. We illustrate our theoretical contributions with an example of an autonomous vehicle location system. An implementation using the Fractal component model constitutes a practical contribution. It enables dynamic reconfigurations guided by either enforcement or reflection adaptation policies.
This work has been partially funded by the Labex ACTION, ANR-11-LABX-01-01.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
qMEDL is a flavor of MEDL used to express quantity of resource properties.
- 4.
FTPL stands for TPL (Temporal Pattern Language) prefixed by ‘F’ to denote its relation to Fractal-like components and to first-order integrity constraints over them.
- 5.
- 6.
For any \((p,q)\in Parent\), we say that \(q\) has a sub-component \(p\), i.e., \(p\) is a child of \(q\). Shared components (sub-components of multiple enclosing composite components) can have more than one parent.
- 7.
Since \({\mathbb B}_2 \subset {\mathbb B}_4\), the evaluation \([\![c \models cp ]\!]\) of the configuration proposition \(cp \in CP\) on the configuration \(c\) detailed on p. 5 is considered to be valued in \({\mathbb B}_4\).
- 8.
- 9.
In AdaptEnfor Algorithm, \(\equiv \) can be implemented by various (pre-)congruence relations—set equality for \(Elem\) and \(Rel\) in Definition 1, structural refinement in [19], or other relations compatible with the reconfiguration relation.
References
Chauvel, F., Barais, O., Plouzeau, N., Borne, I., Jézéquel, J.: Composition et expression qualitative de politiques d’adaptation pour les composants Fractal. In: Actes des Journées nationales du GDR GPL 2009 (2009)
Dormoy, J., Kouchnarenko, O.: Event-based adaptation policies for fractal components. In: IEEE/ACS International Conference on Computer Systems and Applications 2010, AICCSA 2010, pp. 1–8. IEEE (2010)
Dormoy, J., Kouchnarenko, O., Lanoix, A.: Using temporal logic for dynamic reconfigurations of components. In: Barbosa, L.S., Lumpe, M. (eds.) FACS 2010. LNCS, vol. 6921, pp. 200–217. Springer, Heidelberg (2012)
Gonnord, L., Babau, J.P.: Quantity of resource properties expression and runtime assurance for embedded systems. In: IEEE/ACS International Conference on Computer Systems and Applications 2009, AICCSA 2009, pp. 428–435. IEEE (2009)
Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE, pp. 411–420 (1999)
Bauer, A., Leucker, M., Schallhart, C.: Comparing LTL semantics for runtime verification. J. Log. Comput. 20, 651–674 (2010)
Lanoix, A., Dormoy, J., Kouchnarenko, O.: Combining proof and model-checking to validate reconfigurable architectures. ENTCS 279, 43–57 (2011)
Baille, G., Garnier, P., Mathieu, H., Pissard-Gibollet, R.: The INRIA Rhône-Alpes CyCab. Technical Report RT-0229, INRIA (1999)
Hamilton, A.G.: Logic for Mathematicians. Cambridge University Press, Cambridge (1978)
Bauer, A., Falcone, Y.: Decentralised LTL monitoring. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 85–100. Springer, Heidelberg (2012)
Bacchus, F., Kabanza, F.: Planning for temporally extended goals. Ann. Math. Artif. Intell. 22, 5–27 (1998)
Dormoy, J., Kouchnarenko, O., Lanoix, A.: Runtime verification of temporal patterns for dynamic reconfigurations of components. In: Arbab, F., Ölveczky, P.C. (eds.) FACS 2011. LNCS, vol. 7253, pp. 115–132. Springer, Heidelberg (2012)
Kim, M., Lee, I., Shin, J., Sokolsky, O., et al.: Monitoring, checking, and steering of real-time systems. ENTCS 70, 95–111 (2002)
Manna, Z., Pnueli, A.: A hierarchy of temporal properties (invited paper, 1989). In: Proceedings of the 9th ACM Symposium on Principles of Distributed Computing, pp. 377–410. ACM (1990)
Chang, E., Manna, Z., Pnueli, A.: Characterization of temporal property classes. In: Kuich, W. (ed.) Automata, Languages and Programming. LNCS, vol. 623, pp. 474–486. Springer, Heidelberg (1992)
Falcone, Y., Fernandez, J.-C., Mounier, L.: Runtime verification of safety-progress properties. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 40–59. Springer, Heidelberg (2009)
Ligatti, J., Bauer, L., Walker, D.: Run-time enforcement of nonsafety policies. ACM TISSEC 12, 19:1–19:41 (2009)
Bloom, B., Istrail, S., Meyer, A.R.: Bisimulation can’t be traced. In: Ferrante, J., Mager, P. (eds.) POPL, pp. 229–239. ACM Press (1988)
Dormoy, J., Kouchnarenko, O., Lanoix, A.: When structural refinement of components keeps temporal properties over reconfigurations. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 171–186. Springer, Heidelberg (2012)
Ligatti, J., Bauer, L., Walker, D.: Edit automata: enforcement mechanisms for run-time security policies. Int. J. Inf. Secur. 4, 2–16 (2005)
Jantsch, A.: Modeling Embedded Systems and SoC’s: Concurrency and Time in Models of Computation. Morgan Kaufmann, San Francisco (2004)
Trentelman, K., Huisman, M.: Extending JML specifications with temporal logic. In: Kirchner, H., Ringeissen, Ch. (eds.) AMAST 2002. LNCS, vol. 2422, pp. 334–348. Springer, Heidelberg (2002)
Biere, A., Cimatti, A., Clarke, E.M., Strichman, O., Zhu, Y.: Bounded model checking. Adv. Comput. 58, 117–148 (2003)
Falcone, Y., Jaber, M., Nguyen, T.-H., Bozga, M., Bensalem, S.: Runtime verification of component-based systems. In: Barthe, G., Pardo, A., Schneider, G. (eds.) SEFM 2011. LNCS, vol. 7041, pp. 204–220. Springer, Heidelberg (2011)
Kähkönen, K., Lampinen, J., Heljanko, K., Niemelä, I.: The LIME interface specification language and runtime monitoring tool. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 93–100. Springer, Heidelberg (2009)
Seinturier, L., Merle, P., Rouvoy, R., Romero, D., Schiavoni, V., Stefani, J.B.: A component-based middleware platform for reconfigurable service-oriented architectures. Softw. Pract. Exper. 42, 559–583 (2012)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Kouchnarenko, O., Weber, JF. (2014). Adapting Component-Based Systems at Runtime via Policies with Temporal Patterns. In: Fiadeiro, J., Liu, Z., Xue, J. (eds) Formal Aspects of Component Software. FACS 2013. Lecture Notes in Computer Science(), vol 8348. Springer, Cham. https://doi.org/10.1007/978-3-319-07602-7_15
Download citation
DOI: https://doi.org/10.1007/978-3-319-07602-7_15
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-07601-0
Online ISBN: 978-3-319-07602-7
eBook Packages: Computer ScienceComputer Science (R0)