skip to main content
research-article

Adaptability checking in complex systems

Published: 01 January 2016 Publication History

Abstract

A hierarchical approach for modelling the adaptability features of complex systems is introduced. It is based on a structural level S, describing the adaptation dynamics of the system, and a behavioural level B accounting for the description of the admissible dynamics of the system. Moreover, a unified system, called S B, is defined by coupling S and B. The adaptation semantics is such that the S level imposes structural constraints on the B level, which has to adapt whenever it no longer can satisfy them. In this context, we introduce weak and strong adaptability, i.e. the ability of a system to adapt for some evolution paths or for all possible evolutions, respectively. We provide a relational characterisation for these two notions and we show that adaptability checking, i.e. deciding if a system is weakly or strongly adaptable, can be reduced to a CTL model checking problem. We apply the model and the theoretical results to the case study of a motion controller of autonomous transport vehicles. Hierarchical model for multi-level adaptive systems.Relational characterisation of strong and weak adaptability.Adaptability checking is reduced to a CTL model checking problem.Application to the case study of ATVs motion control.

References

[1]
N. Baas, Emergence, hierarchies, and hyperstructures, in: Artificial Life III, vol. 17, Addison Wesley, 1994, pp. 515-537.
[2]
C. Baier, J.P. Katoen, Principles of Model Checking, The MIT Press, 2008.
[3]
E. Bartocci, D. Cacciagrano, M. Di Berardini, E. Merelli, L. Tesei, Timed operational semantics and well-formedness of shape calculus, Sci. Ann. Comput. Sci., 20 (2010) 33-52.
[4]
E. Bartocci, F. Corradini, M. Di Berardini, E. Merelli, L. Tesei, Shape calculus. A spatial mobile calculus for 3D shapes, Sci. Ann. Comput. Sci., 20 (2010) 1-31.
[5]
B. Becker, D. Beyer, H. Giese, F. Klein, D. Schilling, Symbolic invariant verification for systems with dynamic structural adaptation, in: Proceedings of the 28th International Conference on Software Engineering, ACM, 2006, pp. 72-81.
[6]
A. Bouchachia, N. Nedjah, Introduction to the special section on self-adaptive systems: models and algorithms, ACM Trans. Auton. Adapt. Syst., 7 (2012) 13.
[7]
J. Bradbury, J. Cordy, J. Dingel, M. Wermelinger, A survey of self-management in dynamic software architecture specifications, in: Proceedings of the 1st ACM SIGSOFT Workshop on Self-Managed Systems, ACM, 2004, pp. 28-33.
[8]
R. Bruni, A. Bucchiarone, S. Gnesi, D. Hirsch, A.L. Lafuente, Graph-based design and analysis of dynamic software architectures, in: Lect. Notes Comput. Sci., vol. 6065, Springer, 2008, pp. 37-56.
[9]
R. Bruni, A. Corradini, F. Gadducci, A.L. Lafuente, A. Vandin, Adaptable transition systems, in: Lect. Notes Comput. Sci., vol. 7841, Springer, 2013, pp. 95-110.
[10]
R. Bruni, A. Corradini, F. Gadducci, A. Lluch Lafuente, A. Vandin, A conceptual framework for adaptation, in: Lect. Notes Comput. Sci., vol. 7212, Springer, 2012, pp. 240-254.
[11]
R. Bruni, A. Lluch-Lafuente, U. Montanari, E. Tuosto, Style-based architectural reconfigurations, Bull. Eur. Assoc. Theor. Comput. Sci., 94 (2008) 161-180.
[12]
B. Cheng, R. de Lemos, H. Giese, P. Inverardi, J. Magee, J. Andersson, B. Becker, N. Bencomo, Y. Brun, B. Cukic, Software engineering for self-adaptive systems: a research roadmap, in: Software Engineering for Self-Adaptive Systems, 2009, pp. 1-26.
[13]
A. Cimatti, E. Clarke, E. Giunchiglia, F. Giunchiglia, M. Pistore, M. Roveri, R. Sebastiani, A. Tacchella, NuSMV 2: an opensource tool for symbolic model checking, in: Computer Aided Verification, Springer, 2002, pp. 359-364.
[14]
E. Clarke, E. Emerson, A. Sistla, Automatic verification of finite-state concurrent systems using temporal logic specifications, ACM Trans. Program. Lang. Syst., 8 (1986) 244-263.
[15]
E.M. Clarke, E.A. Emerson, Design and synthesis of synchronization skeletons using branching time temporal logic, in: Lect. Notes Comput. Sci., vol. 131, Springer-Verlag, 1981, pp. 52-71.
[16]
E.M. Clarke, O. Grumberg, K.L. McMillan, X. Zhao, Efficient generation of counterexamples and witnesses in symbolic model checking, in: Proceedings of the 32nd Annual ACM/IEEE Design Automation Conference, 1995, pp. 427-432.
[17]
E.M. Clarke, O. Grumberg, D.A. Peled, Model Checking, The MIT Press, 1999.
[18]
M. Clavel, F. Durán, S. Eker, P. Lincoln, N. Martı-Oliet, J. Meseguer, J.F. Quesada, Maude: specification and programming in rewriting logic, Theor. Comput. Sci., 285 (2002) 187-243.
[19]
F. Corradini, P. Inverardi, A. Wolf, On relating functional specifications to architectural specifications: a case study, Sci. Comput. Program., 59 (2006) 171-208.
[20]
L. De Alfaro, T. Henzinger, Interface automata, ACM SIGSOFT Softw. Eng. Notes, 26 (2001) 109-120.
[21]
R. De Nicola, F. Vaandrager, Action versus state based logics for transition systems, in: Semantics of Systems of Concurrent Processes, 1990, pp. 407-419.
[22]
N. D'Ippolito, V. Braberman, N. Piterman, S. Uchitel, The modal transition system control problem, in: Lect. Notes Comput. Sci., vol. 7436, 2012, pp. 155-170.
[23]
A. Ehresmann, J. Vanbremeersch, Memory Evolutive Systems: Hierarchy, Emergence, Cognition, Elsevier Science, 2007.
[24]
S. Feferman, Applications of many-sorted interpolation theorems, in: Proc. Symp. Pure Math., vol. XXV, Univ. of California, Berkeley, CA, 1971, pp. 205-223.
[25]
P. Feiler, R. Gabriel, J. Goodenough, R. Linger, T. Longstaff, R. Kazman, M. Klein, L. Northrop, D. Schmidt, K. Sullivan, Ultra-Large-Scale Systems: The Software Challenge of the Future, Software Engineering Institute, 2006.
[26]
D. Harel, Statecharts: a visual formalism for complex systems, Sci. Comput. Program., 8 (1987) 231-274.
[27]
D. Jackson, Software Abstractions: Logic, Language, and Analysis, The MIT Press, 2011.
[28]
G. Karsai, A. Ledeczi, J. Sztipanovits, G. Peceli, G. Simon, T. Kovacshazy, An approach to self-adaptive software based on supervisory control, in: Self-Adaptive Software: Applications, 2003, pp. 77-92.
[29]
N. Khakpour, S. Jalili, M. Sirjani, U. Goltz, B. Abolhasanzadeh, HPobSAM for modeling and analyzing IT ecosystems-through a case study, J. Syst. Softw., 85 (2012) 2770-2784.
[30]
N. Khakpour, S. Jalili, C. Talcott, M. Sirjani, M. Mousavi, Formal modeling of evolving self-adaptive systems, Sci. Comput. Program., 78 (2011) 3-26.
[31]
N. Khakpour, R. Khosravi, M. Sirjani, S. Jalili, Formal analysis of policy-based self-adaptive systems, in: Proceedings of the 2010 ACM Symposium on Applied Computing, ACM, 2010, pp. 2536-2543.
[32]
J. Kramer, J. Magee, Self-managed systems: an architectural challenge, in: Future of Software Engineering, IEEE, 2007, pp. 259-268.
[33]
S. Kripke, Semantical considerations on modal logic, Acta Philos. Fenn., 16 (1963) 83-94.
[34]
S. Kulkarni, K. Biyani, Correctness of component-based adaptation, in: Component-Based Software Engineering, 2004, pp. 48-58.
[35]
R. Laddaga, Self-adaptive software, DARPA BAA, 1997.
[36]
D. Le Métayer, Describing software architecture styles using graph grammars, IEEE Trans. Softw. Eng., 24 (1998) 521-533.
[37]
F. Maraninchi, Y. Rémond, Mode-automata: a new domain-specific construct for the development of safe critical systems, Sci. Comput. Program., 46 (2003) 219-254.
[38]
E. Merelli, N. Paoletti, L. Tesei, A multi-level model for self-adaptive systems, Electron. Proc. Theor. Comp. Sci., 91 (2012) 112-126.
[39]
E. Merelli, M. Pettini, M. Rasetti, Topology driven modeling: the IS metaphor, Nat. Comput. (2014).
[40]
A. Pnueli, The temporal logic of programs, in: 18th IEEE Symposium on Foundations of Computer Science (FOCS), IEEE Computer Society, 1977, pp. 46-67.
[41]
K. Poyias, E. Tuosto, Enforcing architectural styles in presence of unexpected distributed reconfigurations, Electron. Proc. Theor. Comp. Sci., 104 (2012) 67-82.
[42]
F. Sagasti, A conceptual and taxonomic framework for the analysis of adaptive behavior, Gen. Syst., 15 (1970) 151-160.
[43]
M. Salehie, L. Tahvildari, Self-adaptive software: landscape and research challenges, ACM Trans. Auton. Adapt. Syst., 4 (2009).
[44]
M. Shin, Self-healing components in robust software architecture for concurrent and distributed systems, Sci. Comput. Program., 57 (2005) 27-44.
[45]
M. Viroli, M. Casadei, S. Montagna, F. Zambonelli, Spatial coordination of pervasive services through chemical-inspired tuple spaces, ACM Trans. Auton. Adapt. Syst., 6 (2011).
[46]
J. Zhang, B. Cheng, Model-based development of dynamically adaptive software, in: Proceedings of the 28th International Conference on Software Engineering, ACM, 2006, pp. 371-380.
[47]
J. Zhang, H. Goldsby, B. Cheng, Modular verification of dynamically adaptive systems, in: Proceedings of the 8th ACM International Conference on Aspect-Oriented Software Development, ACM, 2009, pp. 161-172.
[48]
Y. Zhao, D. Ma, J. Li, Z. Li, Model checking of adaptive programs with mode-extended linear temporal logic, in: 8th IEEE International Conference and Workshops on Engineering of Autonomic and Autonomous Systems (EASe), IEEE, 2011, pp. 40-48.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Science of Computer Programming
Science of Computer Programming  Volume 115, Issue C
January 2016
245 pages

Publisher

Elsevier North-Holland, Inc.

United States

Publication History

Published: 01 January 2016

Author Tags

  1. Adaptability checking
  2. Adaptability relations
  3. Adaptive systems
  4. SB model
  5. State machine

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 02 Feb 2025

Other Metrics

Citations

Cited By

View all

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media