Skip to main content
Log in

Encapsulating Formal Methods within Domain Specific Languages: A Solution for Verifying Railway Scheme Plans

  • Published:
Mathematics in Computer Science Aims and scope Submit manuscript

Abstract

The development and application of formal methods is a long standing research topic within the field of computer science. One particular challenge that remains is the uptake of formal methods into industrial practices. This paper introduces a methodology for developing domain specific languages for modelling and verification to aid in the uptake of formal methods within industry. It illustrates the successful application of this methodology within the railway domain. The presented methodology addresses issues surrounding faithful modelling, scalability of verification and accessibility to modelling and verification processes for practitioners within the domain.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Barnes, J.E.: Experiences in the industrial use of formal methods. In: Romanovsky, A., Jones, C., Bendiposto, J., Leuschel, M. (eds.) AVoCS’11. Electronic Communications of EASST (2011)

  2. Bjørner, D.: Dynamics of Railway Nets: On an Interface between Automatic Control and Software Engineering. CTS2003: 10th IFAC Symposium on Control in Transportation Systems (2003)

  3. Bjørner D.: Domain Engineering Technology Management, Research and Engineering. Japan Advanced Institute of Science and Technology, Ishikawa (2009)

    Google Scholar 

  4. Boulanger J., Gallardo M.: Validation and verification of METEOR safety software. In: Allen, J., Hill, R.J., Brebbia, C.A., Sciutto, G., Sone, S. (eds) Computers in Railways VII. vol. 7., pp. 189–200. WIT Press, Southampton (2000)

    Google Scholar 

  5. Bowen J.P., Hinchey M.G.: Ten commandments of formal methods...ten years later. IEEE Comput. 39(1), 40–48 (2006)

    Article  Google Scholar 

  6. Cengarle M.V., Knapp A., Tarlecki A., Wirsing M.: A heterogeneous approach to UML semantics. In: Degano, P., De Nicola, R., Meseguer, J. (eds) Concurrency, Graphs and Models LNCS 5065, pp. 383–402. Springer, New York (2008)

    Chapter  Google Scholar 

  7. dos Santos, O.M., Woodcock, J., Paige, R.F.: Using model transformation to generate graphical counter-examples for the formal analysis of xUML models. In: ICECCS, pp. 117–126. IEEE Computer Society (2011)

  8. ERTMS User Group. ERTMS/ETCS system requirements specification, 2002

  9. Gronback, R.C.: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Addison-Wesley Professional, New Jersey (2009)

  10. Haxthausen, A., Peleska, J.: A domain-oriented, model-based approach for construction and verification of railway control systems. In: Formal Methods and Hybrid Real-Time Systems, vol. 4700 of LNCS, pp. 320–348. Springer, New York (2007)

  11. Iliasov, A., Romanovsky, A.: The SafeCap toolset for improving railway capacity while ensuring its safety. Technical report, Newcastle University (2012)

  12. Invensys Rail: Invensys Rail Data Model, Version 1A (2010)

  13. Isobe Y., Moller F., Nguyen H.N., Roggenbach M.: Safety and line capacity in railways: an approach in timed CSP. In: Derrick, J., Gnesi, S., Latella, D., Treharne, H. (eds) IFM, vol. 7321 of Lecture Notes in Computer Science, pp. 54–68. Springer, New York (2012)

    Google Scholar 

  14. Jacquart, R.(ed.): IFIP 18th World Computer Congress, Topical Sessions (2004)

  15. James, P.: SAT-based Model Checking and its applications to Train Control Software. Master’s thesis, Swansea University (2010)

  16. James, P.: Designing Domain Specific Languages for Verification and Applications to the Railway Domain. Ph.D. thesis, Swansea University (2014). Available at: http://cs.swan.ac.uk/~cspj/Papers/thesis.pdf

  17. James, P., Beckmann, A., Roggenbach, M.: Using domain specific languages to support verification in the railway domain. In: Hardware and Software: Verification and Testing, vol. 7857 of LNCS. Springer, New York (2013)

  18. James, P., Kanso, K., Lawrence, A., Moller, F., Roggenbach, M., Seisenberger, M., Setzer, A.: Verification of solid state interlocking programs. In: FM-RAIL-BOK 2013, To Appear (2013)

  19. James, P., Knapp, A., Mossakowski, T., Roggenbach, M.: Designing domain specific languages: a craftsman’s approach for the railway domain using Casl. In: WADT 2012, vol. 7841 of LNCS. Springer, New York (2013)

  20. James, P., Moller, F., Nguyen, H.N., Roggenbach, M., Schneider, S., Treharne, H., Trumble, M., Williams, D.: Verification of Scheme Plans using CSPB. In: FM-RAIL-BOK 2013, To Appear (2013)

  21. James, P., Roggenbach, M.: Automatically verifying railway interlockings using SAT-based model checking. In: Bendispoto, J., Leuschel, M., Roggenbach, M. (eds.) AVoCS’10. Electronic Communications of EASST (2010)

  22. James, P., Roggenbach, M.: Designing domain specific languages for verification: first steps. In: Peter Hofner, G.S., McIver, A. (eds.) ATE-2011, vol. 760 of CEUR Workshop Proceedings. CEUR-WS.org (2011)

  23. James, P., Trumble, M., Treharne, H., Roggenbach, M., Schneider, S.: OnTrack: an open tooling environment for railway verification. In: Proceedings of NFM’13 (2013)

  24. Kanso, K.: Formal verification of ladder logic. Master’s thesis, Swansea University (2008)

  25. Kanso, K., Moller, F., Setzer, A.: Verification of safety properties in railway interlocking systems defined with ladder logic. In: Calder, M., Miller, A. (eds.) AVoCS’08. Glasgow University (2008)

  26. Kerr, D., Rowbotham, T.: Introduction To Railway Signalling. Institution of Railway Signal Engineers (2001)

  27. Kolovos, D., Rose, L., Paige, R., Polack, F.: The Epsilon Book (2013)

  28. Lawrence, A.: Verification of railway interlockings in scade. Master’s thesis, Swansea University (2011)

  29. Mernik M., Heering J., Sloane A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)

    Article  Google Scholar 

  30. Mewes, K.: Domain-specific Modelling of Railway Control Systems with Integrated Verification and Validation. Ph.D. thesis, University of Bremen (2010)

  31. Mirabadi, A., Yazdi, B.: Automatic generation and verification of railway interlocking control tables using FSM and NuSMV. Signal 3 (2009)

  32. Moller, F., Nguyen, H.N., Roggenbach, M., Schneider, S., Treharne, H.: CSPB modelling for railway verification: the double junction case study. In: AVoCS’12. Electronic Communications of EASST (2012)

  33. Moller F., Nguyen H.N., Roggenbach M., Schneider S., Treharne H.: Defining and model checking abstractions of complex railway models using CSPB. In: Biere, A., Nahir, A., Vos, T. (eds) Hardware and Software: Verification and Testing vol. 7857 of LNCS., Springer, New York (2013)

  34. Mossakowski T.: Relating Casl with other specification languages: The institution level. Theor. Comput. Sci. 286(2), 367–475 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  35. Mossakowski, T.: ModalCasl: Specification with Multi-Modal Logics. Language Summary (2004)

  36. Mossakowski, T., Maeder, C., Lüttich, K.: The Heterogeneous Tool Set, Hets. In: TACAS, vol. 4424 of LNCS, pp. 519–522. Springer, New York (2007)

  37. Mosses P.D. (ed.): Casl Reference Manual, vol. 2960. Springer, New York (2004)

  38. Object Managment Group: Unified Modeling Language (UML), v2.4.1 (2011)

  39. Oladimeji, P., Masci, P., Thimbleby, H.: Pvsio-web: a tool for rapid prototyping device user interfaces in PVS. In: Proceedings of the 5th International Workshop on Formal Methods for Interactive Systems (FMIS 2013). Electronic Communications of EASST (2013)

  40. Peleska, J., Große, D., Haxthausen, A.E., Drechsler, R.: Automated verification for train control systems. In: Schnieder, E., Tarnai, G. (eds.) Proceedings of Formal Methods for Automation and Safety in Railway and Automotive Systems. Technical University of Braunschweig (2004)

  41. Schneider S., Treharne H.: CSP theorems for communicating B machines. Formal Aspects Comput. 17(4), 390–422 (2005)

    Article  MATH  Google Scholar 

  42. Schulz S.: E-a brainiac theorem prover. AI Commun. 15(2), 111–126 (2002)

    MATH  Google Scholar 

  43. Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework. Pearson Education, New York (2008)

  44. Weidenbach, C., Brahm, U., Hillenbrand, T., Keen, E., Theobalt, C., Topic, D.: SPASS version 2.0. In: Voronkov A., (ed) Automated Deduction–CADE-18, vol. 2392 of LNCS, pp. 275–279. Springer, New York (2002)

  45. Winter K.: Model checking railway interlocking systems. Aust. Comput. Sci. Commun. 24(1), 303–310 (2002)

    Google Scholar 

  46. Winter K., Robinson, N.J.: Modelling large railway interlockings and model checking small ones. In: Oudshoorn, M.J. (ed.) ACSC ’03: Proceedings of the 26th Australasian computer science conference. Australian Computer Society (2003)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Phillip James.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

James, P., Roggenbach, M. Encapsulating Formal Methods within Domain Specific Languages: A Solution for Verifying Railway Scheme Plans. Math.Comput.Sci. 8, 11–38 (2014). https://doi.org/10.1007/s11786-014-0174-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11786-014-0174-0

Keywords

Mathematics Subject Classification (2010)

Navigation