Combining VDM with Executable Code
Formal methods have been used and successfully applied to a wide range of industrial applications for many years. However formal methods can be difficult to comprehend for outsiders and the link of formal models and external subsystems which are not modelled can be unclear. In this paper we present an approach which allows formal models to be more easily shared with external stakeholders and enables integration with external code. We demonstrate how an existing interpreter for an executable subset of VDM is extended enabling the combination of formal models with executable code. This eases the way in which a formal model can communicate with an external implementation or be used in graphical prototyping. A small case study is used to demonstrate how the approach can be utilized. In this paper the technique is used to combine VDM and Java, but the principles presented can be seen as a general approach for expanding the capabilities of formal modelling tools with interpretation capabilities.
KeywordsExecutable Code Java Implementation External Library External Code Vienna Development Method
Unable to display preview. Download preview PDF.
- 1.Breuer, P., Bowen, J.: Towards Correct Executable Semantics for Z. In: Bowen, J., Hall, J. (eds.) Z User Workshop, pp. 185–209. Springer (1994)Google Scholar
- 3.Fitzgerald, J.S., Larsen, P.G., Verhoef, M.: Vienna Development Method. In: Wah, B. (ed.) Wiley Encyclopedia of Computer Science and Engineering. John Wiley & Sons, Inc. (2008)Google Scholar
- 7.Gallasch, G., Kristensen, L.M.: Comms/CPN: A Communication Infrastructure for External Communication with Design/CPN. In: 3rd Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools (CPN 2001), pp. 75–90. DAIMI PB-554, Aarhus University (August 2001)Google Scholar
- 8.Group, T.V.T.: VDM Toolbox API. Tech. rep., CSK Systems (January 2008)Google Scholar
- 10.Larsen, P.G., Battle, N., Ferreira, M., Fitzgerald, J., Lausdahl, K., Verhoef, M.: The Overture Initiative – Integrating Tools for VDM. ACM Software Engineering Notes 35(1) (January 2010)Google Scholar
- 13.Reenskaug, T.: Models - Views - Controllers. Tech. rep., Xerox Parc (December 1979)Google Scholar