skip to main content
article
Free Access

A software tool for modular database design

Published:01 May 1991Publication History
Skip Abstract Section

Abstract

A modularization discipline for database schemas is first described. The dicipline incorporates both a strategy for enforcing integrity constraints and a tactic for organizing large sets of database structures, integrity constraints, and operations. A software tool that helps the development and maintenance of database schemas modularized according to the discipline is then presented. It offers a user-friendly interface that guides the designer through the various stages of the creation of a new module or through the process of changing objects of existing modules. The tool incorporates, in a declarative style, a description of the design and redesign rules behind the modularization discipline, hence facilitating the incremental addition of new expertise about database design.

References

  1. 1 ALBANO, A, CARDELLI, L, OCCHIUTO, M E , AND ORSINI, R. A modularization mechanism for conceptual modeling. In Proceedings of the 9th I, ternatmnal Conference on Very Large Data Bases (Florence, 1983), 232-240 Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 ALBANO, A, CAm~ELLI, L, AND ORSINI, R. Galileo: A strongly-typed, interactive conceptual language. ACM Trans. Database Syst. 10, 2 (June 1985), 230-260 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 A~mLE, T., BRATBERGSEN(~EN, K., AND RISNES, O. ASTRAL--A structured and unified approach to data base design and manipulation. In Data Base Arquttecture, G. Bracchl and G. M N1jssen, Eds , North-Holland, Amsterdam, 1979, 257-274Google ScholarGoogle Scholar
  4. 4 ANSI/X3/SPARC. Study Group on Data Base Management Systems: Interim Report, FDT 7:2, ACM (1975).Google ScholarGoogle Scholar
  5. 5 BORGIDA, A. Features of languages for the development of information systems at the conceptual level. IEEE Sofiw. (Jan. 1985), 63-72.Google ScholarGoogle Scholar
  6. 6 BOUZEGHOUB, M., GARDARIN, G., AND METAIS, E. Database design tools: An expert system approach. In Proceedings of the llth International Conference on Very Large Dc'~to Bases (Stockholm, 1985), 436-447.Google ScholarGoogle Scholar
  7. 7 BRODm, M. On modelling behavioral semantics of databases. In Proceedings of the 7tk International Conference on Very Large Data Bases (Cannes, 1981), 32-43.Google ScholarGoogle Scholar
  8. 8 BURSTALL, R. M., AND GOGUEN, J. A. An informal introduction to specifications using CLEAR. In The Correctness Problem in Computer Science, R. S Boyer and J. S. Moore, Eds., Academic Press, New York, 1981, 185-213.Google ScholarGoogle Scholar
  9. 9 CASANOVA, M. A., DE CASTILHO, J. M. V., AND FURTADO, A.L. Properties of conceptual and external database schemas. In Formal Description of Programming Concepts II, D Bjorner, Ed., North Holland, Amsterdam, 1983, 409-430.Google ScholarGoogle Scholar
  10. 10 CLARX, K. L., AND McCABE, F.G. Micro-PROLOG: Programming in Logic. Prentice-Hall, Englewood Cliffs, N.J., 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11 DAYAL, U., AND BERNSTEIN, P. A. On the correct translation of update operations on relational views. ACM Trans. Database Syst. 7, 3 (1982), 381-416. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12 ESWA~AN, K.P. Specification, implementation and interaction of a trigger subsystem in an integrated data base system. IBM Res. Rep. RJ1820, Aug. 1976.Google ScholarGoogle Scholar
  13. 13 ESWARAN, K. P., AND CHAMBERLIN, D.D. Functional specification of a subsystem for data base integrity. In Proceedings of the 1st International Conference on Very Large Data Bases (Framingham, Mass. Sept. 1975).Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14 FURTADO, A. L., AND CASANOVA, M.A. Updating relational views. In Query Processing in Database Systems, W. Kim, D. S. Reiner, and D. S. Batory, Eds., Springer Ver}lag, New York, 1985, 127-142.Google ScholarGoogle ScholarCross RefCross Ref
  15. 15 FURTADO, A. L., CASANOVA, M. A., AND TUCHERMAN, L. Transforming constraints into logic programs: A case study. In Proceedings of the TC-2 Working Conference on Knowledge and Data DS-2 (Albuferia, Portugal, Nov. 1986).Google ScholarGoogle Scholar
  16. 16 FURTADO, A. L., AND MOURA, C M.O. Expert helpers to data-based information systems. In Proceedings of the First International Workshop on Expert Database Systems (1984), 298-313. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17 FURTADO, A. L., SEVCIK, K. C., AND SANTOS, C. S. Permitting updates through views of data bases. Inf. Syst. 4 (1979), 269-283.Google ScholarGoogle ScholarCross RefCross Ref
  18. 18 GOGUEN, J. A., AND BURSTALL, R. M. Introducing institutions. In Logics of Programs, LNCS 164, Springer-Verlag, New York, 1984, 221-256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19 HAMMER, M., AND BERKOWITZ, B. Dial: A programming language for data intensive applications. In Proceedings of the 1980 ACM SIGMOD International Conference on the Management of Data (Santa Monica, Calif., May 1980), ACM, New York, 1980, 75-92. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20 HAMMOND, P., AND SEaGOT, M. Apes: Augmented PROLOG for Expert Systems--Reference Manual. Logic Based Systems Ltd., 1984.Google ScholarGoogle Scholar
  21. 21 LISKOV, B., AND ZmLES, S. Specification techniques for data abstractions. IEE~ Trans Sofiw. Eng. SE-1 (1975).Google ScholarGoogle Scholar
  22. 22 MYLOPOULOS, J., BERNSTEIN, P. A., AND WONG, H. K.T. A language facility for designing database-intensive applications. ACM Trans. Database Syst. 5, 2 (1980), 185-207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23 PARNAS, D. On the criteria to be used in decomposing systems into modules. Commun. ACM 15, 12 (1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 24 ROWE, L. A., AND SC~O~NS, K. A. Data abstraction, views and updates in R}GEL. In Proceedings of the 1979 ACM SIGMOD International Conferer~ce on the Management of Data (Boston, May 1979), ACM, New York, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25 SCHMIDT, J.W. Some high level language constructs for data of type relation. ACM Trans. Database Syst. 2, 3 (Sept. 1977). Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. 26 SHIPMAN, D.W. The functional data model and the data language DAPLEX. AC,VI Trans. Database Syst. 6, I (Mar. 1981), 140-173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 27 SHoPmo, J. E. Theseus--A programming language for relational databases. ACM Trans. Database Syst. 4, 4 (Dec. !979), 493-517. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 28 SMIT~, J M., Fox, S., AND LANCERS, T. Reference Manual for ADAPLEX TR CCA-81-02, Computer Corporation of Amemca, May 1981.Google ScholarGoogle Scholar
  29. 29 SMITH, J. M , ANn SMITH D. C P. Database abstractions Agga'egatlon and generalization ACM Trarls. Database Syst. 2, 2 (1977). Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. 30 TEOREY, T J., AND FRY, J. P. Design of Database Structures, Prentice-Hall, Englewood Cliffs, N J, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. 31 TUCHERMAN, L., CASANOVA, M. A., AND FUR*ADO, A.L. A pragmatic approach to modular database design. In Proceedings of the 9th Internatzonal Conference on Very Large Data Bases (Florence, 1983), 219 231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. 32 TUCHERMAN, L, FURTADO, A. L., AND CASANOVA, M. A A tool for modular database design In Proceedings of the 11th Internatzonal Conference oT~ Very Large Data Bases (Stockholm, 1985), 436 447.Google ScholarGoogle Scholar
  33. 33 TsuR, S, AND ZANIOLO, C An ~mplementation of GEM--Supporting a semantm data model on a relational back-end. In Procee&ngs of the 1984 ACM SIGMOD Internatzonal Conference on the Management of Data (Boston, June 1984) ACM, New York, 1984 Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. 34 VELOSO, P A. S , AND FURTADO, A.L. Towards mmpler and yet complete formal spemfications. In IzTformat~on Systems: Theoretical and Formal Aspects, A. Sernadas, J. Bubenko, and A. Ohve Eds., North-Holland, Amsterdam, 1985, 175-189. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. 35 WASSERMAN, A I The data management facilities of PLAIN. In Procee&,gs of the 1979 ACM SIGMOD Internatmnal Conference on the Management of Data (Boston, May 1979). ACM, New York, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. 36 WEBEa, H. Modularity in data base systems demgn. In Proceedings of the Joznt IBM/Unzversity Newcastle upon Tyne Semznar, 1979Google ScholarGoogle Scholar
  37. 37 ZmLES, S N. Types, algebras and modelling. In Proceedi,gs of the Workshop on Data Abstractions, Databases and Conceptual Modelhng (Pingree Park, Colo , 1980). Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. 38 ZmLES, S N, L~JCAS, P., AND THATCHER, J.W. A look at algebraic specifications Res. Rep RJ3568, IBM Thomas J Watson Research Center, 1982.Google ScholarGoogle Scholar

Index Terms

  1. A software tool for modular database design

            Recommendations

            Reviews

            Alfs T. Berztiss

            Although the title of this paper puts emphasis on a software tool, the paper should be read by all software engineers interested in database modularization. Proper modularization is essential for the management of large databases. In the case of functional databases, it seems natural to separate a database into data types and consider each data type as a module. Under a relational data model, however, modularization criteria are more difficult to establish, and the authors of this paper do not go beyond stating that “close relation” of a collection of structures, integrity constraints, and operations is their modularization criterion. They do, however, solve the important problem of how to maintain integrity efficiently when new modules are added to a database. They do this by grouping modules into conceptual and external modules, where the latter define database views. Conceptual modules are organized into a hierarchy in such a way that lower-level modules are hidden from the user. This allows for the development of efficient mechanisms for maintaining integrity, and for the engineering of a tool that is to assist a database designer in the initial design of a database and in subsequent redesign activities. The tool has been implemented.

            Access critical reviews of Computing literature here

            Become a reviewer for Computing Reviews.

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader