Skip to main content

Building an Integrated Persistent Application

  • Conference paper
Database Programming Languages (DBPL-4)

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

The major motivation for database programming language (DBPL) research is to facilitate the construction and maintenance of large dataintensive applications. To fully benefit from DBPLs, supporting methodologies and tools are needed. This paper describes the construction of a multi-author, multi-level thesaurus application (TA). Some tools and methodologies were used in the TA construction, and requirements for other tools and methodologies are identified as the result of our experiences. Although built in a specific language (Napier88), the principles discovered apply to other DBPLs.

The TA comprises several loosely-integrated components constructed by different programmers. The components were themselves implemented using general purpose sub-components, including libraries. A principle result is that a realistic application could be constructed quickly in a DBPL. Rapid construction was facilitated by the use of libraries, code reuse and an incremental construction methodology supported by the persistent store. Language features such as a polymorphic type system and structural type equivalence were important. Nevertheless, some problems were encountered with code reuse, with integrating independently constructed components, with the lack of concurrency and with build management such as installation and recompilation. Our experiences lead us to suggest several improvements, including models, methodologies and supporting tools for persistent application construction and maintenance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M.P. Atkinson, P.J. Bailey, K.J. Chisholm, W.P. Cockshott, and R. Morrison. An approach to persistent programming. The Computer Journal, 26 (4): 360–365, November 1983.

    Article  MATH  Google Scholar 

  2. M.P. Atkinson, P.J. Bailey, N. Jackson, and P.C. Philbrow. Napier88 libraries. Technical report, in preparation, Department of Computing Science, University of Glasgow, 1993.

    Google Scholar 

  3. M.P. Atkinson, K.J. Chisholm, and W.P. Cockshott. PS-algol: An algol with a persistent heap. ACM SIGPLAN Notices, 17 (7): 24–31, July 1982.

    Article  Google Scholar 

  4. M.P. Atkinson, C. Lécluse, P.C. Philbrow, and P. Richard. Maps as bulk types for data base programming languages. In Proceedings of the Annual Esprit Conference (1991), 1991.

    Google Scholar 

  5. M.P. Atkinson and R. Morrison. Procedures as persistent data objects. ACM Transactions on Programming Languages and Systems, 4 (7): 539–559, October 1985.

    Article  Google Scholar 

  6. M.P. Atkinson. Lecture notes in Napier88 programming. Department of Computing Science, University of Glasgow, 1993.

    Google Scholar 

  7. M.P. Atkinson, P.W. Trinder, and D.A. Watt. Bulk type constructors. Technical Report FIDE/93/61, ESPRIT Basic Research Action, Project Number 3070—FIDE, 1993.

    Google Scholar 

  8. C. Batini, M Lenzerini, and S.B. Navathe. A comparative analysis of methodologies for database schema integration. ACM Computing Surveys, 18 (4): 323–364, April 1986.

    Article  Google Scholar 

  9. Q.I. Cutts, A. Dearle, and G.N. Kirby. WIN programmers’ manual. Technical Report CS/90/17, Department of Computational Science, University of St Andrews, 1990.

    Google Scholar 

  10. Con91] R.C.H. Connor. Types and Polymorphism in Persistent Programming Systems. PhD thesis, Department of Computational Science, University of St Andrews, 1991.

    Google Scholar 

  11. Q.I. Cutts. Delivering the Benefits of Persistence to System Construction and Execution. PhD thesis, Department of Computational Science, University of St Andrews, 1993.

    Google Scholar 

  12. Q.I. Cutts. Private communication, 1993.

    Google Scholar 

  13. L.L. Constantine and E. Yourdon. Structured Design. Englewood Cliffs, NJ, 1979.

    MATH  Google Scholar 

  14. A. Dearle, Q.I. Cutts, and R.C.H. Connor. An application architecture using type-safe incremental linking. Technical Report FIDE/92/56, ESPRIT Basic Research Action, Project Number 6309—FIDE2, 1992.

    Google Scholar 

  15. O.J. Dahl, E.W. Dijkstra, and C.A.R. Hoare. Structured Programming. Number 8 in A.P.I.C. Studies in Data Processing. Academic Press, 1972.

    Google Scholar 

  16. A. Dearle. Constructing compilers in a persistent environment. In R. Carrick and R.L. Cooper, editors, Proceedings of the Second International Workshop on Persistent Object Systems: Their Design, Implementation and Use (Appin, Scotland, 25th-28th August 1987), pages 443–455, 1987. Technical Report PPRR-44–87, Universities of Glasgow and St Andrews.

    Google Scholar 

  17. A. Farkas, A. Dearle, G. Kirby, Q. Cutts, R. Morrison, and R. Connor. Persistent program construction trough browsing and user gesture with some typing. In A. Albano and R. Morrison, editors, Fifth International Workshop on Persistent Object Systems. Design, Implementation and Use (San Miniato, Italy, 1st-4th September 1992), Workshops in Computing. Springer-Verlag in collaboration with the British Computer Society, 1992.

    Google Scholar 

  18. S.I. Feldman. Make — a program for maintaining computer programs. Software Practice and Experience, 9 (4): 255–265, April 1979.

    Article  MATH  Google Scholar 

  19. Peter Gray. Logic, Algebra and Databases. Ellis Horwood Limited, Chichester, 1984.

    MATH  Google Scholar 

  20. M.A. Jackson. Principles of Program Design. Number 12 in A.P.I.C. Studies in Data Processing. Academic Press, 1975.

    Google Scholar 

  21. G. Kirby, R. Connor, Q. Cutts, A. Dearle, A. Farkas, and R. Morrison. Persistent hyper-programs. In A. Albano and R. Morrison, editors, Fifth International Workshop on Persistent Object Systems. Design, Implementation and Use (San Miniato, Italy, 1st-4th September 1992), Workshops in Computing. Springer-Verlag in collaboration with the British Computer Society, 1992.

    Google Scholar 

  22. G.N.C. Kirby and A. Dearle. An adaptive graphical browser for Napier88. Technical Report CS/90/16, Department of Computational Science, University of St Andrews, 1990.

    Google Scholar 

  23. G.N.C. Kirby. Reflection and Hyper-Programming in Persistent Programming Systems. PhD thesis, Department of Computational Science, University of St Andrews, 1993.

    Google Scholar 

  24. C.W. Krueger. Software reuse. ACM Computing Surveys,24(2):131183, June 1992.

    Google Scholar 

  25. J.C. Lopes. ShTH — Show Thesaurus User Interface. Technical Report FIDE/93/76, ESPRIT Basic Research Action, Project Number 6309 FIDE2, 1993.

    Google Scholar 

  26. R. Morrison, F. Brown, R. Connor, and A. Dearle. The Napier88 reference manual. Technical Report PPRR-77–89, Universities of Glasgow and St Andrews, June 1989.

    Google Scholar 

  27. R. Morrison, A.L. Brown, A. Dearle, and M.P. Atkinson. An integrated graphics programming environment. Computer Graphics Forum, 5(2):147–157, June 1986. Also available as PPRR-14–86.

    Google Scholar 

  28. R. Morrison, A.L. Brown, A. Dearle, and M.P. Atkinson. Flexible incremental binding in a persistent object store. ACM SIGPLAN Notices, 23 (4): 27–34, April 1988.

    Article  Google Scholar 

  29. R. Morrison, A.L. Brown, A. Dearle, and M.P. Atkinson. On the classification of binding mechanisms. Information Processing Letters, 34: 51–55, February 1990.

    Article  MATH  Google Scholar 

  30. Members of the FIDE types club with M.P. Atkinson and P. Richard as editors. Types for large scale systems. Club report of meeting in Pisa, 5th-6th July 1990. Technical Report FIDE/90/1, ESPRIT Basic Research Action, Project Number 3070 FIDE, October 1990.

    Google Scholar 

  31. D. Munro. On the Integration of Persistence, Concurrency and Distribution. PhD thesis, submited, Department of Computational Science, University of St Andrews, 1993.

    Google Scholar 

  32. D. Sjoberg. Measuring name and identifier usage in Napier88 applications. Technical Report FIDE/92/37, ESPRIT Basic Research Action, Project Number 3070—FIDE, 1992.

    Google Scholar 

  33. D. Sjoberg. Quantifying schema evolution. Information and Software Technology, 35 (1): 35–44, January 1993.

    Article  Google Scholar 

  34. D. Sjoberg. Thesaurus-Based Methodologies and Tools for Maintaining Persistent Application Systems. PhD thesis, Department of Computing Science, University of Glasgow, 1993.

    Google Scholar 

  35. P.W. Trinder. Comprehensions, a query notation for DBPLs. In P. Kanellakis and J.W. Schmidt, editors, Proceedings of the Third International Workshop on Database Programming Languages (Nafplion, Greece, 27th-30th August 1991). San Mateo, CA: Morgan Kaufmann Publishers, 1991.

    Google Scholar 

  36. Qin Zhenzhou. Second year report. Department of Computing Science, University of Glasgow, 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sjøberg, D., Atkinson, M., Lopes, J., Trinder, P. (1994). Building an Integrated Persistent Application. In: Beeri, C., Ohori, A., Shasha, D.E. (eds) Database Programming Languages (DBPL-4). Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3564-7_20

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3564-7_20

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19853-6

  • Online ISBN: 978-1-4471-3564-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics