Summary
A formal functional specification of a serializable interface for an interactive database is given and refined into two different versions with distinct strategies for solving read/write conflicts. The formalization is based on techniques of algebraic specification for defining the basic data structures and functional system specification by streams and stream processing functions for defining the properties concerning interaction. It is especially demonstrated how different specification techniques can be used side by side.
Similar content being viewed by others
References
Bergstra JA, Tucker JV: Top-down design and the algebra of communicating processes. Sci Comput Program 5:171–199 (1985)
Broy M: Fixed point theory for communication and concurrency. In: Björner D (ed): IFIP TC2 Working Conference on formal description of programming concepts II, Garmisch, June 1982. North Holland, Amsterdam-New York-Oxford 1983, pp 125–147
Broy M: Algebraic methods for program construction: the project CIP. In: Pepper P (ed) Program transformation and programming environments. NATO ASI Series. Series F: 8 Springer, Berlin Heidelberg New York 1984, pp 199–222
Broy M: Specification and top down design of distributed programs. In: Ehrig H (eds) TAPSOFT 85. Lect. Notes Comput. Sci., vol 185. Springer, Berlin Heidelberg New York 1985, pp 4–28
Broy M: Predicative specifications for functional programs describing communicating networks. Inf Process Lett 25(2):93–101
Eswaran KP, Gray JN, Lorie RA, Traiger IL: The notions of consistency and predicate locks in a database system. Comm ACM 19(11):624–633 (1976)
Ginzburg A: Algebraic theory of automata. Academic Press 1968
Hoare CAR: Communicating sequential programs. Prentice Hall International 1985
Kaplan S, Pnueli A: Specification and implementation of concurrently accessed data structures: an abstract data type approach. In: Brandenburg FJ, Vidal-Naquet G, Wirsing M (eds) STACS 87. Lect Notes Comput. Sci., vol. 247. Springer, Berlin Heidelberg New York 1987, pp 220–244
Lamport L: A simple approach to specifying concurrent systems. DIGITAL Systems Research Report 15, December 1986
Lamport L: A serializable database interface. Lake Arrowhead Workshop 1987
Lynch NA, Tuttle MR: Hierarchical correctness proofs for distributed systems. Proceedings of the ACM Symposium on Principles of Distributed Computing, Vancouver, B.C., August 1987
Milner R: A calculus of communicating systems. Lect. Notes Comput. Sci. 82 (1980)
Owicki S: Specifications and proofs for abstract data types in concurrent programs. In: Bauer FL, Broy M (eds) Program construction. Lect. Notes Comput. Sci., vol 69. Springer, Berlin Heidelberg New York 1979, pp 174–197
Wirsing M, Pepper P, Partsch H, Dosch W, Broy M: On hierarchies of abstract data types. Acta Inf. 20:1–33 (1983)
Author information
Authors and Affiliations
Additional information
Manfred Broy finished his studies with the Diplom in Mathematics and Computer Science at the Technical University of Munich. Till 1983 he was research and teaching assistant at the Institut für Informatik and the Sonderforschungsbereich 49 “Programmiertechnik”. At the Technical University of Munich he also did his Ph.D. (in February 1980 with the subject: “Transformation parallel ablaufender Programme”) and qualified as an university lecturer (in 1982 with the subject: “A Theory for Nondeterminism, Parallelism, Communication and Concurrency”). In April 1983 he became a Full Professor for Computer Science at the Faculty of Mathematics and Computer Science at the University of Passau. Since October 1989 he has been Full Professor for Computer Science at the Technical University of Munich. His fields of interests are: Programming languages, program development, programming methodology and distributed systems.
This work was supported by the DFG Project “Transformation paralleler Programme” and by the Sonderforschungsbereich 342 “Werkzeuge und Methoden für die Nutzung paralleler Architekturen”
Rights and permissions
About this article
Cite this article
Broy, M. Algebraic and functional specification of an interactive serializable database interface. Distrib Comput 6, 5–18 (1992). https://doi.org/10.1007/BF02276638
Received:
Accepted:
Issue Date:
DOI: https://doi.org/10.1007/BF02276638