Abstract
Experience shows that it is not economically feasible to formally specify all parts of a system in an industrial application. Either one already has a number of existing components which are trusted and therefore desirable for reuse, or components are so simple that there is no gain in formally specifying their behavior. In both cases it may be felt that it is not worth spending time on developing a detailed formal specification of the entire system. This raises the question what tools should be provided for the analysis of the entire system in which actual code is combined with specifications. In this paper we propose an approach which enables integration of code into a formal specification for prototyping facilities. The integration of code is supported by an extension to the IFAD VDM-SL Toolbox such that heterogeneous models can be interpreted.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Silberschatz A., Peterson J., and Galvin P. Operating System Concepts. Addison Wesley, 1991.
D.J. Andrews, H. Bruun, B.S. Hansen, P.G. Larsen, N. Plat, et al. Information Technology — Programming Languages, their Environments and System Software Interfaces — Vienna Development Method-Specification Language Part 1: Base language. ISO, 1995.
E. Astesiano and M. Cerioli. Multiparadigm Specification Languages: A First Attempt at Foundations. In J.F.Groote D.J.Ãndrews and C.A. Middelburg, editors, Semantics of Specification Languages, pages 168–185, 25–27 October 1993, Utrecht Springer-Verlag 1994.
D. Bjøner and C.B. Jones, editors. Formal Specification and Software Development. Prentice-Hall International, 1982.
S. Kapplan C. Choopy. Mixing abstract and concret Modules: Specification, Development and Prototyping. In 12th IEEE-ACM International Conference on Software Engineering, Nice 1990, pages 173–184, 1990.
Christine Choppy. Formal Specifications, Prototyping and Integrations Tests. In D. Simpson H.K. Nichols, editor, ESEC'87 1.st European Software Engineering Conference, Strasbourg, 1987, Lecture Notes in Computer Science 289, pages 172–179. Springer Verlag, September 1987.
John Dawes. The VDM-SL Reference Guide. Pitman, 1991.
Kees de Bruin. Towards an Interpreter for Full VDM-SL. Master's thesis, Delft University, June 1993.
Margaret A. Ellis and Bjarne Stroustrup. The Annotated C++ Reference Manual. Addison-Wesley Publishing Company, 1990.
René Elmstrøm, Peter Gorm Larsen, and Poul Bøgh Lassen. The IFAD VDM-SL Toolbox: A Practical Approach to Formal Specifications. ACM Sigplan Notices, 29(9):77–80, September 1994.
B. Fischer, M. Kievernagel, and W. Struckmann. VCR: A VDM-based Software Component Retrieval Tool. Technical Report 94–08, Technische Universität Braunsweig, November 1994.
The VDM-SL Tool Group. The IFAD VDM-SL Language. Technical report, IFAD, December 1994.
The VDM-SL Tool Group. The VDM C++ Library. Technical report, IFAD, October 1995.
Michael G. Hinchey and Jonathan P. Bowen, editors. Applications of Formal Methods. Prentice Hall, 1995.
Iain Houston and Steve King. CICS Project Report: Experiences and Results from the Use of Z in IBM. In S. Prehn and W.J. Toetenel, editors, VDM'91 — Formal Software Development Methods, pages 588–696. Springer-Verlag, October 1991.
Cliff B. Jones. Systematic Software Development Using VDM. Prentice-Hall International, Englewood Cliffs, New Jersey, second edition, 1990.
J.J. Horning J.V. Guttag and J.M. Wing. Larch in Five Easy Pieces. Technical report, Digital Systems Research Center, July 1985.
Peter Gorm Larsen, John Fitzgerald, and Tom Brookes. Lessons Learned from Applying Formal Specification in Industry. Submitted to IEEE Software, August 1995.
Peter Gorm Larsen and Poul Bøgh Lassen. An Executable Subset of Meta-IV with Loose Specification. In VDM '91: Formal Software Development Methods. VDM Europe, Springer-Verlag, March 1991.
Yves Ledru. Proof-Based Development of Specifications with KIDS/VDM. In M. Bertran M. Naftalin, T. Denvir, editor, FME'94: Industrial Benefit of Formal Methods, pages 214–232. Springer-Verlag, October 1994.
Paul Mukherjee. Computer-aided Validation of Formal Specifications. Software Engineering Journal, pages 133–140, July 1995.
B. Stroustrup. The C++ Programming Language, 2nd edition. Addison Wesley Publishing Company, 1991.
SUN-OS. Programmer's Overview Utilities & Libraries. Technical report, Sun Microsystems, Inc., 27 March 1990.
Larry Wall and Randal L. Schwartz. Programming Perl. O'Reilly and Associates, Inc, 1992.
M.-H. Liégeois Y. Ledru. Integrating REFINE prototypes in a VDM development framework. In Constructing Programs from Specifications, pages 236–258, 1991.
Nabil Zakhama. Run-Time Adaptation System — Target Code Procedures Activate (RTAS-TCPACT) — User's Guide. Technical report, Télésystèmes, March 1993. IPTES Doc.id.: IPTES-TS-53-V2.1.
Pamela Zave. A Compositional Approach to Multiparadigm Programming. IEEE Software, pages 15–25, September 1989.
Pamela Zave and Michael Jackson. Conjunction as Composition. ACM Transactions on Software Engineering and Methology, 2(4):379–411, October 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fröhlich, B., Larsen, P.G. (1996). Combining VDM-SL specifications with C++ code. In: Gaudel, MC., Woodcock, J. (eds) FME'96: Industrial Benefit and Advances in Formal Methods. FME 1996. Lecture Notes in Computer Science, vol 1051. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60973-3_87
Download citation
DOI: https://doi.org/10.1007/3-540-60973-3_87
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60973-5
Online ISBN: 978-3-540-49749-3
eBook Packages: Springer Book Archive