The ASSL Approach to Formal Specification of Self-managing Systems

  • Emil Vassev
  • Mike HincheyEmail author
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11200)


ASSL (Autonomic System Specification Language) is a framework dedicated to the development of self-managing systems whereby developers are helped with problem formation, system design, system analysis and evaluation, and system implementation. The bottom line is a special multi-tier approach to specification exposing a rich set of constructs allowing a system to be modeled by emphasizing different key aspects, but centering the model around special self-management policies. This article presents in detail the aforementioned mechanism together with the underlying semantics. As a case study, we also present ASSL specifications of self-managing behavior of prospective autonomous NASA space exploration missions.


Autonomic computing Formal specification 



This work was supported, in part, by Science Foundation Ireland grant 13/RC/2094 and co-funded under the European Regional Development Fund through the Southern & Eastern Regional Operational Programme to Lero - the Irish Software Research Centre (


  1. 1.
    Horn, P.: Autonomic computing: IBM’s perspective on the state of information technology, Technical report, IBM T. J. Watson Laboratory, 15 October 2001Google Scholar
  2. 2.
    IBM Corporation: An architectural blueprint for autonomic computing, white paper, Fourth edition, IBM Corporation (2006)Google Scholar
  3. 3.
    Kephart, J.O., Chess, D.M.: The vision of autonomic computing. IEEE Comput. 36(1), 41–50 (2003)CrossRefGoogle Scholar
  4. 4.
    Murch, R.: Autonomic Computing: On Demand Series. IBM Press, Prentice Hall (2004)Google Scholar
  5. 5.
    Vassev, E.: Towards a framework for specification and code generation of autonomic systems, Ph.D. thesis, Department of Computer Science and Software Engineering, Concordia University, Montreal, Canada, November 2008Google Scholar
  6. 6.
    Vassev, E.: ASSL: autonomic system specification language - a framework for specification and code generation of autonomic systems, LAP Lambert Academic Publishing, Germany, November 2009Google Scholar
  7. 7.
    Vassev, E., Hinchey, M.: Modeling the image-processing behavior of the NASA Voyager mission with ASSL. In: Proceedings of the 3rd IEEE International Conference on Space Mission Challenges for Information Technology (SMC-IT 2009), pp. 246–253 IEEE Computer Society (2009)Google Scholar
  8. 8.
    Vassev, E., Hinchey, M., Paquet, J.: Towards an ASSL specification model for NASA swarm-based exploration missions. In: Proceedings of the 23rd Annual ACM Symposium on Applied Computing (SAC 2008) - AC Track, pp. 1652–1657. ACM (2008)Google Scholar
  9. 9.
    Vassev, E., Mokhov, S.A.: Towards autonomic specification of distributed MARF with ASSL: self-healing. In: Lee, R., Ormandjieva, O., Abran, A., Constantinides, C. (eds.) Software Engineering Research, Management and Applications 2010. Studies in Computational Intelligence, vol. 296, pp. 1–15. Springer, Heidelberg (2010). Scholar
  10. 10.
    Vassev, E., Hinchey, M., Nixon, P.: Prototyping home automation wireless sensor networks with ASSL. In: Proceedings of the 7th IEEE International Conference on Autonomic Computing and Communications (ICAC2010). IEEE Computer Society (2010 to appear)Google Scholar
  11. 11.
    Srivas, M., Miller, S.: Formal verification of the AAMP5 microprocessor: a case study in the industrial use of formal methods. In: Proceedings of the Workshop on Industrial-Strength Formal Specification Techniques (WIFT 1995), pp. 2–6. IEEE Computer Society (1995)Google Scholar
  12. 12.
    National Aeronautics and Space Administration: Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems, I: Planning and Technology Insertion. NASA, Washington, DC (1998)Google Scholar
  13. 13.
    Kowalsky, R., Sergot, M.: A logic-based calculus of events. New Gener. Comput. 4(1), 67–95 (1986)CrossRefGoogle Scholar
  14. 14.
    IBM Corporation. Defining service-level objectives, Tivoli Software. IBM Tivoli. Accessed 19 Aug 2009
  15. 15.
    IBM Corporation: Policy Management for Autonomic Computing - Version 1.2, Tutorial. IBM Tivoli (2005)Google Scholar
  16. 16.
    The International Engineering Consortium, Specification and Description Language (SDL), Web ProForum Tutorials. Accessed 2 Feb 2009
  17. 17.
    Cheng, S.W., Garlan, D., Schmerl, B.: Architecture-based self-adaptation in the presence of multiple objectives. In: Proceedings of ICSE 2006 Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2006), China (2006)Google Scholar
  18. 18.
    Read, D.: Utility theory from Jeremy Bentham to Daniel Kahneman, Working Paper No: LSEOR 04-64, Department of Operational Research, London School of Economics, London (2004)Google Scholar
  19. 19.
    Leavens, G.T., Cheon, Y.: Design by contract with JML, Technical report, Formal Systems Laboratory (FSL) at UIUC (2006)Google Scholar
  20. 20.
    Banatre, J.P., Fradet, P., Radenac, Y.: Programming self-organizing systems with the higher-order chemical language. Int. J. Unconv. Comput. 3(3), 161–177 (2007)Google Scholar
  21. 21.
    Andrei, O., Kirchner, H.: A higher-order graph calculus for autonomic computing. In: Lipshteyn, M., Levit, Vadim E., McConnell, Ross M. (eds.) Graph Theory, Computational Intelligence and Thought. LNCS, vol. 5420, pp. 15–26. Springer, Heidelberg (2009). Scholar
  22. 22.
    Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., Lowe, M.: Algebraic approaches to graph transformation - Part I: basic concepts and double pushout approach. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph Transformations. Foundations, vol. 1, pp. 163–246. World Scientific, Singapore (1997)CrossRefGoogle Scholar
  23. 23.
    Knuth, D.E.: Backus normal form vs. Backus Naur form. Commun. ACM 7(12), 735–773 (1964)CrossRefGoogle Scholar
  24. 24.
    Truszkowski, W., Hinchey, M., Rash, J., Rouff, C.: NASA’s swarm missions: the challenge of building autonomous software. IT Prof. 6(5), 47–52 (2004)CrossRefGoogle Scholar
  25. 25.
    Vassev, E., Hinchey, M.: ASSL specification and code generation of self-healing behavior for NASA swarm-based systems. In: Proceedings of the 6th IEEE International Workshop on Engineering of Autonomic and Autonomous Systems (EASe 2009), pp. 77–86. IEEE Computer Society (2009)Google Scholar
  26. 26.
    Vassev, E., Hinchey, M., Paquet, J.: A self-scheduling model for NASA swarm-based exploration missions using ASSL. In: Proceedings of the 5th IEEE International Workshop on Engineering of Autonomic and Autonomous Systems (EASe 2008), pp. 54–64. IEEE Computer Society (2008)Google Scholar
  27. 27.
    Vassev, E., Hinchey, M.: ASSL specification of emergent self-adapting for NASA swarm-based exploration missions. In: Proceedings of the 2nd IEEE International Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW 2008), pp. 13–18. IEEE Computer Society (2008)Google Scholar
  28. 28.
    Plotkin, G.D.: A structural approach to operational semantics, Report DAIMI FN-19, Computer Science Department, Aarhus University, Aarhus, Denmark (1981)Google Scholar
  29. 29.
    Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press, Cambridge (2008)zbMATHGoogle Scholar
  30. 30.
    Vassev, E, Hinchey, M., Quigley, A: Model checking for autonomic systems specified with ASSL. In: Proceedings of the First NASA Formal Methods Symposium (NFM 2009), pp. 16–25. NASA (2009)Google Scholar
  31. 31.
    Bakera, M., Wagner, C., Margaria, T., Vassev, E., Hinchey, M., Steffen, B.: Component-oriented behavior extraction for autonomic system design. In: Proceedings of the First NASA Formal Methods Symposium (NFM 2009), pp. 66–75. NASA (2009)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Concordia UniversityMontrealCanada
  2. 2.Lero-The Irish Software Research CentreUniversity of LimerickLimerickIreland

Personalised recommendations