Integrated Model-Checking for the Design of Safe and Efficient Distributed Software Commissioning

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11918)


We present MADA, a deployment approach to facilitate the design of efficient and safe distributed software commissioning. MADA is built on top of the Madeus formal model that focuses on the efficient execution of installation procedures. Madeus puts forward more parallelism than other commissioning models, which implies a greater complexity and a greater propensity for errors. MADA provides a new specific language on top of Madeus that allows the developer to easily define the properties that should be ensured during the commissioning process. Then, MADA automatically translates the description to a time Petri net and a set of TCTL formulae. MADA is evaluated on the OpenStack commissioning.


Distributed software commissioning Deployment Model checking Safety Liveness Efficiency Component models Petri nets 


  1. 1.
    Alur, R., Courcoubetis, C., Dill, D.: Model-checking in dense real-time. Inf. Comput. 104(1), 2–34 (1993)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Barros, T., Cansado, A., Madelaine, E., Rivera, M.: Model-checking distributed components: the vercors platform. Electron. Notes Theor. Comput. Sci. 182, 3–16 (2007). Proceedings of the Third International Workshop on Formal Aspects of Component Software (FACS 2006)CrossRefGoogle Scholar
  3. 3.
    Basu, A., Bozga, M., Sifakis, J.: Modeling heterogeneous real-time components in BIP. In: Proceedings of the Fourth IEEE International Conference on Software Engineering and Formal Methods, SEFM 2006, pp. 3–12. IEEE Computer Society, Washington, DC (2006)Google Scholar
  4. 4.
    Beer, I., Ben-David, S., Chockler, H., Orni, A., Trefler, R.: Explaining counterexamples using causality. Form. Methods Syst. Des. 40(1), 20–40 (2012)CrossRefGoogle Scholar
  5. 5.
    Berthomieu, B., Diaz, M.: Modeling and verification of time dependent systems using time Petri nets. IEEE Trans. Soft. Eng. 17(3), 259–273 (1991)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Boucheneb, H., Lime, D., Parquier, B., Roux, O.H., Seidner, C.: Optimal reachability in cost time Petri nets. In: Abate, A., Geeraerts, G. (eds.) FORMATS 2017. LNCS, vol. 10419, pp. 58–73. Springer, Cham (2017). Scholar
  7. 7.
    Brockmeyer, U., Wittich, G.: Tamagotchis need not die—verification of statemate designs. In: Steffen, Bernhard (ed.) TACAS 1998. LNCS, vol. 1384, pp. 217–231. Springer, Heidelberg (1998). Scholar
  8. 8.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. C–35(8), 677–691 (1986)CrossRefGoogle Scholar
  9. 9.
    Chardet, M., Coullon, H., Pertin, D., Pérez, C.: Madeus: a formal deployment model. In: 4PAD 2018 - 5th International Symposium on Formal Approaches to Parallel and Distributed Systems (Hosted at HPCS 2018) (2018)Google Scholar
  10. 10.
    Cimatti, A., Griggio, A.: Software model checking via IC3. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 277–293. Springer, Heidelberg (2012). Scholar
  11. 11.
    Di Cosmo, R., Eiche, A., Mauro, J., Zacchiroli, S., Zavattaro, G., Zwolakowski, J.: Automatic deployment of services in the cloud with aeolus blender. In: Barros, A., Grigori, D., Narendra, N.C., Dam, H.K. (eds.) ICSOC 2015. LNCS, vol. 9435, pp. 397–411. Springer, Heidelberg (2015). Scholar
  12. 12.
    Di Cosmo, R., Mauro, J., Zacchiroli, S., Zavattaro, G.: Aeolus: a component model for the cloud. Inf. Comput. 239, 100–121 (2014)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Dijkman, R.M., Dumas, M., Ouyang, C.: Formal semantics and analysis of BPMN process models using Petri nets. Technical report, Queensland University of Technology (2007)Google Scholar
  14. 14.
    Henrio, L., Kulankhina, O., Li, S., Madelaine, E.: Integrated environment for verifying and running distributed components. In: Stevens, P., Wąsowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 66–83. Springer, Heidelberg (2016). Scholar
  15. 15.
    Hinz, S., Schmidt, K., Stahl, C.: Transforming BPEL to Petri nets. In: van der Aalst, W.M.P., Benatallah, B., Casati, F., Curbera, F. (eds.) BPM 2005. LNCS, vol. 3649, pp. 220–235. Springer, Heidelberg (2005). Scholar
  16. 16.
    Holzmann, G.J., Peled, D.: An improvement in formal verification. Formal Description Techniques VII. IAICT, pp. 197–211. Springer, Boston, MA (1995). Scholar
  17. 17.
    Jezequel, L., Lime, D.: Lazy reachability analysis in distributed systems. In: Desharnais, J., Jagadeesan, R. (eds.) CONCUR 2016. LIPIcs. Dagstuhl Publishing, Québec City (2016)Google Scholar
  18. 18.
    Killian, C.E., Anderson, J.W., Braud, R., Jhala, R., Vahdat, A.M.: Mace: language support for building distributed systems. In: Proceedings of the 28th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2007. ACM (2007)Google Scholar
  19. 19.
    Kobeissi, S., Utayim, A., Jaber, M., Falcone, Y.: Facilitating the implementation of distributed systems with heterogeneous interactions. In: Furia, C.A., Winter, K. (eds.) IFM 2018. LNCS, vol. 11023, pp. 255–274. Springer, Cham (2018). Scholar
  20. 20.
    Lime, D., Roux, O.H., Seidner, C., Traonouez, L.-M.: Romeo: a parametric model-checker for petri nets with stopwatches. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol. 5505, pp. 54–57. Springer, Heidelberg (2009). Scholar
  21. 21.
    Merlin, P.M.: A study of the recoverability of computing systems. Ph.D. thesis, Department of Information and Computer Science, University of California, Irvine, CA (1974)Google Scholar
  22. 22.
    Petri, C.A.: Kommunikation mit Automaten. Dissertation, schriften des iim, Rheinisch-Westfälisches Institut für Instrumentelle Mathematik an der Universität Bonn, Bonn (1962)Google Scholar
  23. 23.
    Xu, T., Zhou, Y.: Systems approaches to tackling configuration errors: a survey. ACM Comput. Surv. 47(4), 70:1–70:41 (2015)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.IMT Atlantique, InriaNantesFrance
  2. 2.École Centrale de NantesNantesFrance
  3. 3.Université de NantesNantesFrance
  4. 4.LS2N, CNRSNantesFrance

Personalised recommendations