Framework for a knowledge-based programming environment

  • Wolfgang Polak
Knowledge-Based And Future Programming Environments
Part of the Lecture Notes in Computer Science book series (LNCS, volume 244)


We develop a formal model describing the basic objects and operations of the software development process. This model allows us to characterize functions performed by support environments and to formally define the semantics of environment tools. Representing information about available tools, administrative procedures, and constraints in a knowledge base allows automated support for many software development and life-cycle activities. Constraint maintenance within a knowledge base takes over many routine administrative tasks; program synthesis techniques can be used to generate complex plans.


Software Development Program Module Software Development Process Multiple Version Automate Support 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    R. Balzer, D. Dyer, M. Fehling, S. Saunders, Specification-Based Computing Environments, Information Sciences Institute, April 1982Google Scholar
  2. [2]
    J.A. Bergstra, J.W. Klopp, J.V. TuckerAlgebraic Tools for System Construction in Proc. Logics of Programs, LNCS 164, Springer Verlag, 1983Google Scholar
  3. [3]
    David R. Barstow, Howard E. Shrobe, Erik Sandewall, Interactive Programming Environments, McGraw-Hill, 1984Google Scholar
  4. [4]
    Jan Chomicki, Naftaly H. Minsky, Towards a Programming Environment for Large Prolog Programs, Rutgers University, May 1985Google Scholar
  5. [5]
    V. Donzeau-Gouge, G. Huet, G. Kahn, Programming Environments Based on Structured Editors: The MENTOR Experience, in [3]Google Scholar
  6. [6]
    Peter H. Feiler, Raul Medina-Mora, An Incremental Programming Environment, Carnegie-Mellon University, April 1980Google Scholar
  7. [7]
    Peter Fritzson, Architecture of an Incremental Programming Environment and some Notions of Consistency, Report LITH-IDA-R-84-02, Linköping University, 1984Google Scholar
  8. [8]
    Cordell Green, David Luckham, Robert Balzer, Thomas Cheatham, Charles Rich, Report on a Knowledge-Based Software Assistent, KES.U.83.2, Kestrel Institute, Palo Alto, 1983Google Scholar
  9. [9]
    Habermann, A., The Gandalf Research Project, Computer Science Research Review, Carnegie-Mellon University, 1978–79.Google Scholar
  10. [10]
    Jean-Marie Hullot, CEYX, A Multiformalism Programming Environment, Institut National de Recherche en Informatique et en Automatique, May, 1983Google Scholar
  11. [11]
    Karen E. Huff, Victor R. Lesser, Knowledge-Based Command Understanding: An Example for the Software Development Environment, University of Massachusetts, Amherst, June 1982Google Scholar
  12. [12]
    R. H. Katz, T.J.Lehman, Database Support for Versions and Alternatives of Large Design Files, IEEE Transactions on Software Engineering, SE-10/2, March 1984Google Scholar
  13. [13]
    Kernighan, B. and Mashey, J., The Univ Programming Environment, IEEE Computer, Vol 14 No 4:12–24, April 1981.Google Scholar
  14. [14]
    Paul Klint, Survey of Three Language-Independent Programming Environments, INRIA, December 1983Google Scholar
  15. [15]
    H.C. Kuo, J. Ramanathan, D. Soni, M. Suni, System Architecture of an Adaptable Software Environment, Ohio State University, 1983Google Scholar
  16. [16]
    H. J. Komorowski, Interactive and Incremental Programming Environments: Experience, Foundations and Future, Report HARV-TR-09-83, Harvard University, 1983Google Scholar
  17. [17]
    Raul Medina-Mora, Syntax-Directed Editing: Towards Integrated Programming Environments, Dept. of Computer Science, Carnegie-Mellon University, 1982Google Scholar
  18. [18]
    George Milne, Robin Milner, Concurrent Processes and their Syntax, J.ACM 26/2, pp. 302–321, April 1979Google Scholar
  19. [19]
    Robin Milner, Flowgraphs and Flow Algebras, J.ACM 26/4, pp. 794–818, October 1979Google Scholar
  20. [20]
    Matthew Morgenstern, Active Databases as a Paradigm for Enhanced Computing Environments, Information Sciences Institute, USC, October, 1983Google Scholar
  21. [21]
    Thomas W. Reps, Generating Language-Based Environments, MIT Press, 1984Google Scholar
  22. [22]
    Rich, C., Shrobe, H. and Waters, R.,Programmer's Apprentice Project, MIT, Outline of Research, 1979–80.Google Scholar
  23. [23]
    Eric E. Schmidt, Controlling Large Software Development in a Distributed Environment, XEROX Palo Alto Research Center, Ph.D Thesis, December 1982Google Scholar
  24. [24]
    Marshall I. SchorDeclarative Knowledge Programming: Better than Procedural?, IEEE Expert, Vol. 1/1, Spring 1986, pp 36–43Google Scholar
  25. [25]
    Sintzoff, M., Understanding and Expressing Software Construction, in NATO ASI Series, Vol. F8, Program Transformation and Programming Environments, P. Pepper (ed.), Springer Verlag, 1984Google Scholar
  26. [26]
    Sintzoff, M., Exploratory Proposals for a Calculus of Software Development, Rapport 84/2, Universite Catholique de Louvain, September, 1984Google Scholar
  27. [27]
    Sintzoff, M., Desiderata for a design calculus, RM 85–13, Universite Catholique de Louvain, June, 1985Google Scholar
  28. [28]
    Warren Teitelman, Larry Masinter, The Interlisp Programming Environment, in [3]Google Scholar
  29. [29]
    Anthony Wasserman, Martin L. Kersten, Relational Database Environment for Software Development, Vrije University, Amsterdam, October 1983Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • Wolfgang Polak
    • 1
  1. 1.Kestrel InstitutePalo Alto

Personalised recommendations