Academia.eduAcademia.edu

Outline

Survey of Knowledge Based Approaches to Automating

digital.library.ksu.edu.sa

https://doi.org/10.1016/S1319-1578(96)80003-6

Abstract

The paper presents a critical overview of the development in the area of automating the program formation. seen in a broader perspecti ve from automatic program synthesis to computer aided software engineering. The fundamental problems are identified in the area of automatic program synthesis, intelligent support of software development, computer aided software engineering. The trends in related fields, e&pecially in artificial intelligence are surveyed and the possible influence is evaluated. Need for urgent development of theory of programming is recognised. In parallel, knowledge engineering methods should be considered because they allow building models of the respective domain.

References (56)

  1. Office of Naval Research. "Symposium on Automatic Programming for Digital Computers." Washington, D.C.: Office of Naval Research. Dept. of Navy, 1954.
  2. AsIen, MJ. "A Knowledge Based Approach to Softwere Development". Amsterdam. The Netherlands: North Holland Publishing Co., (1991).
  3. Navrat. P. "Intelligent Support for Software Construction. and Higher Education in Informatics at The Slovak TU : teh DEC Connection." In : Proc. DECSYM 92 Latest Trmds in Computing, Side- Antalya. (1992), 253-263.
  4. 4J Spivey,J.M. "TheZNofarion." Hemel Hampstead: Prentice Ha1I,1989.
  5. Milnes. B.G.: Peiton, G.; Doorenhos, R. : Hucka, M.; Rosenbloom. P., and Newell. A. "A Specification of The Soar Cognitive Architecture in Z." Rept. CMU-CS-92-J69. School oj Computer Science, Carnegie Mellon University, Pittsburgh, (1992).
  6. Fiekas, S. "A Knowledge Based Approach 10 Specification Acquisition and Construction." TR -85- 13. Dept. of CIS, University of Oregon, (1985).
  7. Biermann, A.W. and Krishnaswamy, R. "Constructing Programs from Example Computations." IEEE Transactions on Computers. C-24, No.2 (1976), 141-153.
  8. Siklossy, L. and Sykes, D.A. "Automatic Program Synthesis from Example Problems." In: Advance Papers llCA14, Tbilisi, (1975). 268-273.
  9. 9J Manna, Z. and Waldinger. R. "A Deductive Approach to Program Synthesis." ACM Trans. on Programming Languages and Symms. 2. No.1 (1980),90-121.
  10. Bursta11, R.M. and Darlington. J. " A Transformation System for Developing Recursive Programs." Journal afthe ACM, 24, No.l(1977), 44-67.
  11. II] Hewitt, C.and Smith, B. "Towards a Programming Apprenlice." IEEE Transactions on Software Engineering, SE-l, No.1 (1975), 26-45.
  12. I 2] Vojtek, V. ; Molnar, L. and Navrat, P. "Automatic Program Synthesis Using Heuristics and Interaction." Computers and Artijieiallnfelligence, 5. No.5 (1986), 427-442.
  13. Green. C. and Barstow, D.R." On Program Synthesis Knowledge." Artifleiallntelligence. 10, (1978), 241-279.
  14. Molnar. L.; Navrat, P.and Vojtek, V. "Heuristic Search with Global and Local Heuristics." Computers and Artificiai lnreliigence, 5, 417-126.
  15. Cacace, F. : Ceri, S. ; Tanca, L. and Crespi; Reghizzi, S. "Designing and Prototyping Data-Intensive Applications in The Logres and Algres Programming Environment", IEEE Transactions on Software Engineering, 18, No.6 (1992). 534-546.
  16. Molnar, L. and Navrat, P. "Automation of Program Creation and Methodology of Programming." (Tn Slovak). Elektrotechnicky Ca.wpi.t, 36, No.4 (1985), 316-323.
  17. Navrat. P.; Molnar, L. and Vojtek, V. "Using Automatic Program Synthesizer to Generate Solutions from Diverse Problem Environments." Computers and Arrijiciallnlelligence, 7, No.2 (1988).
  18. Navrat, P.;• Molnar, L. and Vojtek, V. "Using Automatic Program Synthesizer as a Problem Solver; Some Interesting Experiments."In: J. Davenport (Ed.) Proc. EUROCAL'S7, LNCS 378, Berlin: Springer, (1989).
  19. 19J Molnar, L. ; Navrat, P. and Vojtek, V. "A System for Automatic Implementation of Abstract Data Types." Computers and Artificial Intelligence. 6, No.5 (1987), 481-488.
  20. Setliff, D. and Rutenbar, R. A. " Knowledge Representation and Reasoning in a Software Synthesis Architecture." IEEE Transactions on Sofrware Engineering, 18. No.6 (1992), 523-533.
  21. Neighbors. 1.M. "The Draco Approach to Constructing Software from Reusable Components." IEEE Transactions on Software Engineering, SE-lO, No.9 (1984). 564-574.
  22. Wile, D.S. "Program Developments: Formal Explanations of Implementations" Communications Of the ACM: 26. No.ll (1983), 902-911.
  23. Bhansa1i, S. and Harandi, M.T. "Synthesis of UNIX Programs Using Derivational Analogy." Machine Learning, 10, No.1 (1993).
  24. Navrat, P. and Klaudiny, M. "A Syntax Directed Editor of Pascal Programs." (In Slovak) In: Proc. Modern Programming 1983, Part 2, Zilina (1983),125-136.
  25. Teitelman, W. "INTERLISP Reference Manual." Xerox Palo Alto Research Center, Palo Alto ( 1978).
  26. Rich, C. and Feldman. Y.A. "Seven Layers of Knowledge Representation and Reasoning in Support of Software Development." IEEE Transactions on Software Engineering, 18, No.6 (1992), 451-469.
  27. Fickao;, S. and Helm, B.R."Knowledge Representation and Rea<;oning in The Design of Composite Systems." EEE Transactions on Software Engineering, 18, No.6 (1992), 470-487.
  28. Keiser, G.E. and Feiler, P.H. "An Architecture for Intelligent Assistance in Software Development." In: Proc. ACM, (1987).
  29. Krieg-Bruckner, B ... The PROSPECTRA Methodology of Program Development." In ; J. Zalewski, and W. Ehrenberger (Ed.) : lFlP 1989, Amsterdam: Elsevier, (1989).
  30. Fisher, G. ; Girgensohn, A. ; Nakakoji, K. and Redmiles, D. "Supporting Software Designers with Integrated Domain Oriented Design Environments." IEEE Transactions on Software Engineering, 18, No.6 (1992), 511-522.
  31. Navrat, P. and Miada, I. "What Knowledge is The Knowledge Based Programming Based On? : An Inquiry into Knowledge Sources." In:1. Plander (Ed.) Proc. Artificial Intelligence and Information- Control Systems of Robots 89, Amsterdam: North-Holland, (1989).
  32. Navrat, P. and Fric, P. "A Tool for Knowledge-Based Systems Development." In: V. Marik (Ed.) Proc. Artificial Intelligence ApplicatiOns Conference A/'9J, Prague, (1991).
  33. Gasparovic, L. and Navrat, P. "Extalk -Smalltalk Based Expen Systems Development Tool." In: A. Mrazik (Ed.): Proc. EaST EurooPe'9J, Short Papers, Bratislava (1991).
  34. Anderson, J.R.: Farrell, R, and Sauers, R. "Learning to Program in LISP." Cognitive Science, 8, (1984), 87-129.
  35. Soloway, E. and Ehrlich, K.nEmpirical Studies of Programming Knowledge." IEEE TransactioTlS on Software Engineering, 10, No.5 (1984).305-321.
  36. Boyle. T. and Margetts, S. "The CORE Guided Discovery Approach to Acquiring Programming Sills." Computers and Educalion. 18, No. J-3 (1992),127-133.
  37. Anderson. l.R. and Skwarecki. E. "The Automated Tutoring of Introductory Computer Progranuning."Communications o/the ACM, 29, (1986), 842-849.
  38. Johnson, W. L. and Soloway, E.M, "PROUST: An Automatic Debugger for PascaJ Programs." Byte, 10, No.4 (1985),179-190.
  39. Anderson, J.R.The Architecture o/Cognitio, Combridge: Harvard University Press, 1983.
  40. Davies, S.P. and Castell, A.M. "Embodying Theory In Intelligent Tutoring Systems." An Evaluation of Plan-Based Accounts of Programming Skill, Computers and Education, 20, No.1 ( 1993), 89•96.
  41. Bma, P. " Teaching Prolog Techniques. "Computers and Education, 20, No.1 (1993), /11-117.
  42. Bertels, K.; Vanneste, P., and De Backer. C. "A Cognitive Model of Programming Knowledge for Procedural Languages." In: I. Tomek (Ed.) Computer Assisted Learnings 92, Proceedings of ICCAL 92, Springer Verlage, (1992), 124-135.
  43. Jonckers, V, "A Framework for Modeling Programming Knowledge." PhD. Thesis. Vrije Universiteit Brusel, Dienst Artificiele Intelligentie, (1987).
  44. Brusilovsky, P.L. "Towards an Intelligent Environmentt for Learning Introductory Programming." In: E. Lemut; B. du Boulay, and G. Dettori (Eds.) Cognitive Modesls and Intelligent Enviornments for Learnign Programming. Springer -Verlag, (1992).
  45. Molnar, L. and Navrat, P. "Problem Solving Aspects in The Education of Programming." In: Proc. 27. Internlll.ionales Wissenschaftliches Kolloquium, Ilmenau, Technische Hochschule. (1982).
  46. Navrat, P. "Towards a Master Programmer: A Paradigm for Automated Tutoring of Programming." In : I. Plander (Ed.) Proc. Arlijiciallntelligence and Information-Control Systems of Robots 87, Amsterdam: North-Holland, (1987).
  47. Navrat, P. and Rozinajova, V. "Making Programming Knowledge Explicit." Computers and Education. 21. NO.4 (1993). 281-299.
  48. Dijkstra. E. W. "On Cruelty of Really Teaching Computing Science." Communications of 'he A eM, 32. No.12 (1989), 1398-1404.
  49. 49J Turski. W.M. and Maibaum. T.S.E. "The Specification (if Computer Programs." Wokingham: Addison Wesley, (1987), 287.
  50. Smith. D.R. and Lowry. M.R. "Algorithm Theories and Design Tactics." Science of Computer Programming, ]4, (1990), 305-321.
  51. 51J Reddy, U.S. "Formal Methods in Transformational Derivation of Programs." In: Proc. ACM SIGSOFT Intern. Workshop on Formal Methods in Software Development, Napa, (1990). 104-114.
  52. Cooke, D.E. "Towards a Formalism to Produce a Programmer Assistant CASE Tool." IEEE Trans. on Know/taRt and Dutu Engineering, 2, No.3 (I990), 320-326.
  53. -1-, o.J~ ~.,r,ll ~ J4---.j .,:.,IJ}a:JJ rls. JJI,; e:--tiJ"J1 ~ ,~1 ~ 4,;
  54. "JI ,)..L.>.; LJ . '-:'-' ..,......WI ii..Ls-~ .,:.,~ ~I .i..,......l;..a ~1 ~\.r.U ~'-" y.J'i I ~~\ IJ" ~I~I .r-"l:d ,j'..ul ~JJI ,~Iy-:lJ ~I-.i .;"}\ if~1 ,.;.N~ .j L;.-L.... \1\ JSL!-JI • '-:'-' J""" WI o.Js.~ ~ "r.l' 4......1.: .. 11-, J~ ~\...:-~ .tJ')lJI ~I,) ~ )' G:-JI ~ ~ WI .,:.,LA ~')IJ ~."z J ~ ti J"JI r .".z io!.lJ.l.S
  55. J ~ c.i ..r.!)a.:.lI .i-'-" ~ I...>-.!l\.;...t. ,:,l .u;)1 ~ y ~ LI.J...\l\ J')l;.:. (f . ifl.:..k.,.:r'l \ ~.L.5.il' .j ~ ;-'~-' ij.r---JI;"""..l.:-a> ~L....l J~":JI ~ .1;.\11 ~ ..,;
  56. 1 ~,; loS ~ ,.r.1'..:.o~)a; . 4i Jl..-JI ..:J I,) 0.:,.1 ":J 6.-J \ c.i (,,) ~ "#,,k;