Abstract
Database application programs may be considered as good candidates for the application of formal specification methods, because much of the database and transaction semantics can be captured in terms of integrity constraints as well as pre- and postconditions. Furthermore, the use of current transaction models as units of database state transitions favours the use of Dijkstra’s substitutions.
Traditional DBMS solutions guarantee database integrity by expensive tests at transaction commit time. In the DAIDA project a different approach was taken interpreting database constraints as parts of formal specifications and by extracting correct database programs from such specifications. Database and transaction constraints are captured by an expressive semantic data model in the style of TAXIS, transformed into Abstract Machines and finally refined into AM versions that are equivalent to programs written in the strongly-typed database programming language DBPL.
The work reported in this paper evaluates the DAIDA experience and addresses the shortcomings of DAIDA. A new formal specification language SAMT is proposed that essentially allows to structure and modularize specifications and to capture particular classes of constraints by its type system. Moreover, SAMT is considered as a framework for both the specification of database applications as well as the refinement of specifications into executable programs, thus eliminating some of the complexity issues found in the multi-language approach of DAIDA.
This work has been supported in part by research grants from the E.E.C. Basic Research Action 3070 FIDE: “Formally Integrated Data Environments”.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
J.R. Abrial: A Formal Approach to Large Software Construction, in J.L.A. van de Snepscheut (Ed.): Mathematics of Program Construction, Proc. Int. Conf. Groningen, The Netherlands, June 89, LNCS 375, Springer-Verlag, 1989
J.R. Abrial: Abstract Machines,Parts 1–3, Technical Reports, January 90
D. Bjorner: The Vienna Development Method VDM: The Meta Language, Springer LNCS 61, 1978
A. Borgida, J. Mylopoulos, J. W. Schmidt: Final Version on TDL Design, DAIDA deliverable Proceedings of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon, June 1989
A. Borgida, J. Mylopoulos, J. W. Schmidt, I. Wetzel: Support for Data-Intensive Applications: Conceptual Design and Software Development in
M. Broy: Equational Specification of Partial Higher Order Algebras,in F. L. Bauer et al. (Eds.): Logic of Programming and Calculi of Discrete Design, Springer, NATO ASI Series F, vol. 36, 1986, pp. 185–242
E.W. Dijkstra: A Discipline of Programming, Prentice Hall, 1976
E.W. Dijkstra, C.S. Scholten: Predicate Calculus and Program Semantics, Springer-Verlag, 1989
H. Ehrig, B. Mahr: Fundamentals of Algebraic Specification, vol.1, Springer 1985
E.C.R. Hehner: The Logic of Programming, Prentice Hall, 1984
C.B. Jones: Systematic Software Development using VDM, Prentice-Hall International, London 1986.
C. Morgan, K. Robinson, P. Gardiner: On the Refinement Calculus, Technical Monograph PRG-70, Oxford University Computing Labaratory, Oktober 1988
K.-D. Schewe, J. W. Schmidt, I. Wetzel, N. Bidoit, D. Castelli, C. Meghini: Abstract machines revisited, FIDE technical report 1991/11
K.-D. Schewe, B. Thalheim, I. Wetzel, J. W. Schmidt: Formal Database Specifications Using Structured Persistent Modules, DBIS memo 062–91
J. W. Schmidt, H. Eckhardt, F. Matthes: DBPL Report, DBPL-Memo 111–88, University of Frankfurt, 1988
S.A. Schuman, D.H. Pitt: Object-Oriented Subsystem Specification, in L. Meertens, (Ed.): Program Specifiation and Transformation, The IFIP TC2/WG2.1 Working Conference, Bad Tôlz, FRG, April 15–17, 1986, North Holland Publishing Co, Amsterdam, 1987
J.M. Spivey: Understanding Z, A Specification language and its Formal Semantics, Cambridge University Press, 1988
I. Wetzel, Klaus-Dieter Schewe, J. W. Schmidt: Specification and Refinement in an Integrated Database Application Environment, to appear in Proc. VDM 91, Noordwijkerhout, October 1991
M. Wirsing: Structured Algebraic Specifications - A Kernel Language, Passau University Reports, MIP 8511, 1985
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1992 Springer-Verlag London
About this paper
Cite this paper
Schewe, KD., Wetzel, I., Schmidt, J.W. (1992). Towards a Structured Specification Language for Database Applications. In: Harper, D.J., Norrie, M.C. (eds) Specifications of Database Systems. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3864-8_14
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3864-8_14
Publisher Name: Springer, London
Print ISBN: 978-3-540-19732-4
Online ISBN: 978-1-4471-3864-8
eBook Packages: Springer Book Archive