Building data base management systems through formal specification

  • E. J. Neuhold
  • Th. Olnhoff
Invited Lectures
Part of the Lecture Notes in Computer Science book series (LNCS, volume 107)


Using the ANSI/SPARC concept of a three level architecture for data base management systems, a relational data base system is formally specified. The formal specification technique used is VDM and it is illustrated how the various VDM features contribute to a concise but in its abstraction level easily adjustable description. At first the external conceptual and internal levels and their data manipulation languages are discussed separately. Then the mapping properties of the data base management system which has to transform external user requests into their internal executable form are investigated. In practice many restrictions are placed on the insert and update operations that can be used on the external view of the data base system. Through our formal specification, we are able to show that many of these restrictions can be relaxed without violating the integrity, security and consistency constraints of the DBMS.


Data Base Conceptual Level Relational Algebra Abstract Data Type Data Base System 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. / 1/.
    Anderson, E.R., Bell, F.C., Blum, E.K.: SEMANOL (73), A Meta-language for Programming the Semantics of Programming Languages.— Acta Informatica, 6, pp. 109–131 (1976).Google Scholar
  2. / 2/.
    Bekic, H., Bjoerner, D., Henhapl, W., Jones, C.B., Lucas, P.: A Formal Definition of a PL/I Subset.— IBM Vienna, Technical Report TR 25.139, parts I and II, (1974).Google Scholar
  3. / 3/.
    Bjoerner, D., Jones, C.B. (eds.): The Vienna Development method: The Meta Language.— Lecture Notes in Computer Science, No. 61, Springer Verlag (1978).Google Scholar
  4. / 4/.
    Bjoerner, D., Haff, P.L.: The Formal Definition of CHILL.— C.C.I.T.T. Recommendation Z200 Supplement, ITU Geneva (1981).Google Scholar
  5. / 5/.
    Bjoerner, D., Oest, O.N. (eds.): Towards a Formal Description of Ada.— Lecture Notes in Computer Science, No. 98, Springer Verlag (1980).Google Scholar
  6. / 6/.
    Bjoerner, D.: Formalization of Data Base Models.— In: Bjoerner, D. (ed.): Abstract Software Specification.— Lecture Notes in Computer Science, No. 86, Springer Verlag (1980).Google Scholar
  7. / 7/.
    Chamberlin, D.D. et al.: SEQUEL2: A Unified Approach to Data Definition, Manipulation and Control.— IBM Journal of Res. and Development 20, No. 6 (1976).Google Scholar
  8. / 8/.
    Codd, E.F.: A Relational Data Model of Data for Large Shared Data Banks.— Comm. of ACM 13, No. 6 (1970).Google Scholar
  9. / 9/.
    Codd, E.F.: Relational Completeness of Data Base Sublanguages.— In: Data Base Systems, Courant Comp. Science Symposium Series 6, Prentice Hall (1972).Google Scholar
  10. /10/.
    Floyd, R.W.: Assigning Meanings to Programs.— In: Schwartz, J.T. (ed.): Mathem. Aspects of Computer Science, Proc. Symposia in Applied Mathematics, 19, Amer. Math. Soc. (1967).Google Scholar
  11. /11/.
    Goguen, J.A., Thatcher, J.W., Wagner, F.G.: An Initial Algebra Approach to the Specification, Correctness, and Implementation of Abstract Data Types.— In: Yeh, R.T. (ed.): Current Trends in Programming Methodology, Vol. IV, Prentice Hall 78.Google Scholar
  12. /12/.
    Guttag, J.V.: Abstract Data Types and the Development of Data Structures.— Comm. of ACM 20 (1977).Google Scholar
  13. /13/.
    Henhapl, W., Jones, C.B.: A Formal Definition of ALGOL 60 as Described in the 1975 Modified Report.— In: /3/Google Scholar
  14. /14/.
    Hoare, C.A.R.: An Axiomatic Basis for Computer Programming.— Comm. ACM 12, (1967).Google Scholar
  15. /15/.
    Hoare, C.A.R.: Communicating Sequential Processes, Comm. ACM, Vol. 21, No.8, August 1978Google Scholar
  16. /16/.
    Jones, C.B.: Software Development: A Rigorous Approach.— Prentice Hall Int. (1980).Google Scholar
  17. /17/.
    Liskov, B., Zilles, S.: Programming with Abstract Data Types.— ACM SIGPLAN 9, No. 4 (1974).Google Scholar
  18. /18/.
    Lucas, P., Walk, K.: On the Formal Description of PL/I.— Annual Review in Automata Programming, 6, Part 3, (1970).Google Scholar
  19. /19/.
    Neuhold, E.J. et al.: POREL Design Specification.— Inst. fuer Informatik, Univ. of Stuttgart (1978).Google Scholar
  20. /20/.
    Neuhold, E.J., Olnhoff, Th.: The Vienna Development Method (VDM) and its Use for the Specification of a Relational Data Base System.— Proc. of the IFIP Congress 1980, North Holland Publ. Comp. (1980).Google Scholar
  21. /21/.
    Nijssen, G.M.: A Gross Architecture for Next Generation DBMS.— In: Nijssen, G.M. (ed.): Modelling in Data Base Management Systems, North Holland, Amsterdam (1976).Google Scholar
  22. /22/.
    Olnhoff, Th.: Funktionale Semantikbeschreibung einer Anfragesprache in einem drei-schichtigen relationalen Datenbank-system.— Dissertation, Univ. of Hamburg (1981).Google Scholar
  23. /23/.
    Scott, D.S., Strachey C.: Towards a Mathematical Semantics for Computer Languages.— In: Fox, J. (ed.): Proc. of the Symposium on Computers and Automata, Polyt. Inst. of Brooklyn (1971).Google Scholar
  24. /24/.
    Stoy, J.E.: Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory.— MIT Press (1977).Google Scholar
  25. /25/.
    Tsichritzis, D., Klug, A.: The ANSI/SPARC DBMS Framework.— Information Systems, Vol. 3 (1978).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1981

Authors and Affiliations

  • E. J. Neuhold
    • 1
  • Th. Olnhoff
    • 1
  1. 1.Institut fuer InformatikUniversity of StuttgartStuttgartFed. Rep. of Germany

Personalised recommendations