Advertisement

Verifying System-Wide Properties of Industrial Component-Based Software

  • Thomas NeeleEmail author
  • Marijn Rol
  • Jan Friso Groote
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11761)

Abstract

Analytical Software Design (ASD) enables model-based development of component software systems. Until now, functional verification of ASD systems is only possible on a per-component basis. There is no functional verification engine for ASD itself, so this verification relies on a translation of individual components to mCRL2, a process-algebraic model checker. We show how to extend the ASD-mCRL2 translation to support multiple components in order to enable checking of system wide functional properties. With our extended translation, we perform a case-study on a newly developed industrial system consisting of 26 communicating components. The results indicate that it is feasible to model check functional properties on this scale.

References

  1. 1.
    Bartholomeus, M., Luttik, B., Willemse, T.: Modelling and analysing ERTMS hybrid level 3 with the mCRL2 toolset. In: Howar, F., Barnat, J. (eds.) FMICS 2018. LNCS, vol. 11119, pp. 98–114. Springer, Cham (2018).  https://doi.org/10.1007/978-3-030-00244-2_7CrossRefGoogle Scholar
  2. 2.
    van Beusekom, R., et al.: Formalising the Dezyne modelling language in mCRL2. In: Petrucci, L., Seceleanu, C., Cavalcanti, A. (eds.) FMICS/AVoCS -2017. LNCS, vol. 10471, pp. 217–233. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-67113-0_14CrossRefGoogle Scholar
  3. 3.
    Broadfoot, G.H.: ASD case notes: costs and benefits of applying formal methods to industrial control software. In: Fitzgerald, J., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 548–551. Springer, Heidelberg (2005).  https://doi.org/10.1007/11526841_39CrossRefzbMATHGoogle Scholar
  4. 4.
    Broadfoot, G.H., Hopcroft, P.J.: Analytical software design. Technical report, Verum Consultants B.V. (2003)Google Scholar
  5. 5.
    Bunte, O., et al.: The mCRL2 toolset for analysing concurrent systems. In: Vojnar, T., Zhang, L. (eds.) TACAS 2019. LNCS, vol. 11428, pp. 21–39. Springer, Cham (2019).  https://doi.org/10.1007/978-3-030-17465-1_2CrossRefGoogle Scholar
  6. 6.
    Cranen, S., Groote, J.F., Reniers, M.A.: A linear translation from CTL* to the first-order modal \(\mu \)-calculus. Theor. Comput. Sci. 412(28), 3129–3139 (2011).  https://doi.org/10.1016/j.tcs.2011.02.034MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Evrard, H., Lang, F.: Automatic distributed code generation from formal models of asynchronous processes interacting by multiway rendezvous. J. Log. Algebraic Methods Program. 88, 121–153 (2017).  https://doi.org/10.1016/j.jlamp.2016.09.002MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Garavel, H., Lang, F., Mateescu, R., Serwe, W.: CADP 2011: a toolbox for the construction and analysis of distributed processes. STTT 15(2), 89–107 (2013).  https://doi.org/10.1007/978-3-540-73368-3_18CrossRefzbMATHGoogle Scholar
  9. 9.
    Groote, J.F., Jansen, D.N., Keiren, J.J.A., Wijs, A.J.: An O(m log n) algorithm for computing stuttering equivalence and branching bisimulation. ACM Trans. Comput. Logic 18(2) (2017).  https://doi.org/10.1007/978-3-662-49674-9_40CrossRefGoogle Scholar
  10. 10.
    Groote, J.F., Kouters, T.W.D.M., Osaiweran, A.: Specification guidelines to avoid the state space explosion problem. Softw. Test. Verif. Reliab. 25(1), 4–33 (2015).  https://doi.org/10.1002/stvr.1536CrossRefGoogle Scholar
  11. 11.
    Groote, J.F., Mousavi, M.R.: Modeling and Analysis of Communicating Systems. MIT Press, Cambridge (2014)CrossRefGoogle Scholar
  12. 12.
    Jonk, R.: The semantics of ALIAS defined in mCRL2. Master’s thesis, Eindhoven University of Technology (2016)Google Scholar
  13. 13.
    Kozen, D.: Results on the propositional \(\mu \)-calculus. Theor. Comput. Sci. 27(3), 333–354 (1982).  https://doi.org/10.1007/BFb0012782MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Osaiweran, A., Schuts, M., Hooman, J., Groote, J.F., van Rijnsoever, B.J.: Evaluating the effect of a lightweight formal technique in industry. STTT 18(1), 93–108 (2016).  https://doi.org/10.1007/s10009-015-0374-1CrossRefGoogle Scholar
  15. 15.
    Remenska, D., et al.: From UML to process algebra and back: an automated approach to model-checking software design artifacts of concurrent systems. In: Brat, G., Rungta, N., Venet, A. (eds.) NFM 2013. LNCS, vol. 7871, pp. 244–260. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-38088-4_17CrossRefGoogle Scholar
  16. 16.
    Remenska, D., Willemse, T.A.C., Templon, J., Verstoep, K., Bal, H.: Property specification made easy: harnessing the power of model checking in UML designs. In: Ábrahám, E., Palamidessi, C. (eds.) FORTE 2014. LNCS, vol. 8461, pp. 17–32. Springer, Heidelberg (2014).  https://doi.org/10.1007/978-3-662-43613-4_2CrossRefGoogle Scholar
  17. 17.
    Roscoe, A.W.: On the expressive power of CSP refinement. Form. Asp. Comput. 17(2), 93–112 (2005).  https://doi.org/10.1007/s00165-005-0065-xCrossRefzbMATHGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2019

Authors and Affiliations

  1. 1.Eindhoven University of TechnologyEindhovenThe Netherlands

Personalised recommendations