Abstract
This paper presents a formal semantics of data flow diagrams as used in Structured Analysis, based on an abstract model for data flow transformations. The semantics consists of a collection of VDM functions, transforming an abstract syntax representation of a data flow diagram into an abstract syntax representation of a VDM specification. Since this transformation is executable, it becomes possible to provide a software analyst/designer with two ‘views’ of the system being modelled: a graphical view in terms of a data flow diagram, and a textual view in terms of a VDM specification. In this paper emphasis is on the motivation for the choices made in the transformation. The main aspects of the transformation itself are described using annotated VDM functions with some examples.
Similar content being viewed by others
References
Adler, M.: An Algebra for Data Flow Diagram Process Decomposition. IEEE Transactions on Software Engineering, SE-14(2):169–183, February 1988.
Alabiso, B.: Transformation of Data Flow Analysis Models to Object Oriented Design. In OOPSLA’88 Proceedings, pages 335–353, ACM, November 1988.
Bear, S.: Structuring for the VDM Specification Language. In R. Jones R. Bloomfield, L. Marshall, editor, VDM’88; VDM — The Way Ahead, pages 2–25, Springer-Verlag, March 1988. LNCS 328.
Bjørner, D. and Jones, C.B.: Formal Specification & Software Development. Prentice Hall International, 1982.
Bruza, P.D. and van der Weide, Th. P.: The Semantics of Data Flow Diagrams. Technical Report 89–16, University of Nijmegen, The Netherlands, October 1989.
Constantine, L.L. and Yourdon, E.: Structured Design. Prentice Hall International, 1979.
Dawes, J.: The VDM-SL Reference Guide. Pitman (London, UK), 1991.
DeMarco, T.: Structured Analysis and System Specification. Yourdon Press (New Jersey, USA), 1979.
Elmstrøm, R., Larsen, P.G. and Lassen, P.B.: The IFAD VDM-SL Toolbox: A Practical Approach to Formal Specifications. ACM Sigplan Notices, 29(9): 77–80, September 1994.
Elmstrøm, R., Lintulampi, R. and Pezzé, M.: Giving Semantics to SA/RT by Means of High Level Timed Petri Nets. Real-Time Systems, 5(2/3):249–272, May 1993.
Fraser, M.D., Kumar, K. and Vaishnavi V.K.: Informal and Formal Requirements Specification Languages: Bridging the Gap. IEEE Transactions on Software Engineering, SE-17(5):454–66, May 1991.
France, R.B.: Semantically Extended Data Flow Diagrams: A Formal Specification Tool. IEEE Transactions on Software Engineering, SE-18(4):329–346, April 1992.
Gane, C. and Sarson, T: Structured Systems Analysis: Tools and Techniques. Prentice Hall International, 1979.
Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall International, 1985.
Information Technology Programming Languages — VDM-SL. Technical report. First Committee Draft Standard: CD 13817-1, November 1993. ISO/IEC JTC1/SC22/WG19 N-20.
Jones, K.D.: A Formal Semantics for a Dataflow Machine. In C.B. Jones D. Bjørners, editor, VDM’87; VDM — A Formal Method at Work, pages 331–355, Springer-Verlag, March 1987. LNCS 252.
Jones, C.B.: Systematic Software Development using VDM (2nd edition). Prentice Hall International, 1990.
Gorm Larsen, P., Arentoft, M.M., Monahan, B.Q. and Bear, S.: Towards a Formal Semantics of The BSI/VDM Specification Language. In Ritter, editor, Information Processing 89, pages 95–100, IFIP, North-Holland, August 1989.
Bøgh Lassen, P.: IFAD VDM-SL Toolbox. In J.C.P. Woodcock and P.G. Larsen, editors, FME’93: Industrial-Strength Formal Methods, page 681, Springer-Verlag, Berlin Heidelberg, April 1993.
Longworth, G. and Nicholls, D.: SSADM Manual. NCC, December 1986.
Larsen, P.G., van Katwijk, J., Plat, N., Pronk K. and Toetenel, H.: SVDM: An Integrated Combination of SA and VDM. In Proc. of the Methods Integration Conference, Leeds, UK, September 1991 (to appear), 1993.
Milner, A.J.R.G.: A Calculus of Communicating Systems. Springer-Verlag, 1980. LNCS 92.
Peterson, J.L.: Petri Nets. ACM Computing Surveys, 9(3):223–252, September 1977.
Polack, F: Integrating Formal Notations and Systems Analysis: using Entity Relationship Diagrams. IEE/BCS Software Engineering Journal, 7(5):363–371, September 1992.
Plat, N., van Katwijk, J. and Pronk, G: A Case for Structured Analysis/Formal Design. In VDM’91; Formal Software Development Methods, pages 81–105, Springer-Verlag, 1991. LNCS 551.
Randell, G.P.: Translating Data Flow Diagrams into Z (and Vice Versa). Technical Report 90019, Procurement Executive, Ministry of Defence, RSRE, Malvern, Worcestershire, UK, October 1990.
Semmens, L.T., France, R.B. and Docker, T.W.G.: Integrated Strudtured Analysis and Formal Specification Techniques. The Computer Journal, 35(6):600–610, December 1992.
ter Hofstede, A.H.M. and van der Weide, T.P.: Formalization of Techniques: Chopping Down the Methodology Jungle. Journal of Information and Software Technology, 34(l):57–65, January 1992.
Tse, T.H. and Pong, L.: Towards a Formal Foundation for DeMarco Data Flow Diagrams. The Computer Journal, 32(1):1–12, January 1989.
Ward, P.T. and Mellor, S.J.: Structured Development for Real-Time Systems. Yourdon Press (New Jersey, USA), 1985.
Yourdon, E.: Techniques of Program Structure and Design. Prentice Hall International, 1975.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Larsen, P.G., Plat, N. & Toetenel, H. A Formal Semantics of Data Flow Diagrams. Form Asp Comp 6, 586–606 (1994). https://doi.org/10.1007/BF03259387
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF03259387