Skip to main content

Ansätze des Programmverstehens

  • Chapter
Softwarewartung und Reengineering

Part of the book series: Information Engineering und IV-Controlling ((IEIVC))

  • 130 Accesses

Zusammenfassung

Programmverstehen ist der Prozeß des Wissenserwerbs über ein Computerprogramm. Es ist die Voraussetzung für Fehlersuche, Erweiterung, Wiederverwendung und Dokumentation. Eine Reihe von Ansätzen versucht, das Programmverstehen maschinell zu unterstützen. Die gegenwärtigen Ansätze werden in diesem Artikel klassifiziert in grundlegende und wissensbasierte Analysen. Grundlegende Analysen verfugen über kein Wissen über die Anwendung und allgemeine Programmierung; sie basieren lediglich auf Programmiersprachensyntax und -Semantik. Grundlegende Analysen lassen sich weiter gliedern in grundlegende statische und grundlegende dynamische Analysen, abhängig davon, ob sie zur Übersetzungsszeit oder zur Laufzeit vorgenommen werden. Wissensbasierte Analysen verfügen über Anwendungswissen und allgemeines Programmierwissen. Wissensbasierte Analysen lassen sich unterscheiden in Parsing-Ansätze, falls sie sich ausschließlich auf formale und strukturelle Programmeigenschaften stützen, und informelles Schließen, falls sie darüber hinaus auch informelle Information in Betracht ziehen. Der Artikel gibt Beispiele zu den verschiedenen Analyseformen.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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.

Similar content being viewed by others

Literatur

  1. Adam, A; Laurent, J. : LAURA, a system to debug student programs. In: Artificial Intelligence, 15:75 122, 1980.

    Article  Google Scholar 

  2. Biggerstaff, Ted: The Concept Assignment Problem in Program Un derstanding. In: Proc. of the 15th ICSE, S. 482–488, April 1993.

    Google Scholar 

  3. Boehm, Barry W.: Software Engineering Economics, Prentice Hall, 1981.

    Google Scholar 

  4. Brook, Ruven: Towards a Theory of the Cognitive Processes in Computer Programming. In: International Journal of Man-Machine Studies, Vol. 9, No. 6, S. 737–742, 1977.

    Article  Google Scholar 

  5. Brook, Ruven: Towards a Theory of the Comprehension of Computer Programs. In: International Journal of Man-Machine Studies, Vol. 18, S. 543–554, 1983.

    Article  Google Scholar 

  6. Chikofsky, E.J.; Cross, James H.: Reverse engineering and design recovery: A taxonomy. In: IEEE Software, S. 13–17, January 1990.

    Google Scholar 

  7. Fjeldstad, R.K.; Hamlen, W.T.: Application Program Maintenance Study: Report to Our Respondents. In: Proceedings GUIDE 48, Philadelphia, PA, April 1983.

    Google Scholar 

  8. Hartman, J. : Automatic control understanding for natural programs. Technical Report AI 91–161, Univ. of Texas at Austin, 1991.

    Google Scholar 

  9. Kamkar, M.; Krajina, P.: Dynamic Slicing of Distributed Systems. In: Proceedings of ICSM’95, S. 222–229, Opio/Nice, October 1995.

    Google Scholar 

  10. Letovsky, S.: Plan analysis of programs. Research Report 662, Yale University, December 1988.

    Google Scholar 

  11. Lientz, B., Swanson, E., Tompkins, G.E.: Characteristics of Application Software Maintenance. In: Communications of the ACM, 21(6), June 1978.

    Google Scholar 

  12. von Mayrhauser, Anneliese; Vans, A. Marie: Program Comprehension During Software Maintenance and Evolution. In: IEEE Computer, S. 44–55, August 1995.

    Google Scholar 

  13. Rich, Charles; Wills, Linda Mary: Recognizing a programs design: Agraph-parsing approach. In: IEEE Software, 1990, January, S. 82–89.

    Google Scholar 

  14. Rich, Charles; Waters, R.C.: The Programmer’s Apprentice. Addison-Wesley, Reading, Massachusetts, 1990.

    Google Scholar 

  15. Rugaber, Spencer: Program Comprehension. Georgia Institute of Technology, April 1995.

    Google Scholar 

  16. Soloway, E; Ehrlich, K.: Empirical Studies of Programming Knowledge. In: IEEE Trans, on SE, 1984, Sept. S. 595–609.

    Google Scholar 

  17. Stasko, John T.: TANGO: A Framework and System for Algorithm Animation. In: IEEE Computer, Vol. 23, No. 9, S. 27–39, September 1990.

    Article  Google Scholar 

  18. Storey, Margaret-Anne D., Müller Hausi A.: Manipulating and Documenting Software Structures Using SHriMP Views. In: Proc. of ICSM, October 1995.

    Google Scholar 

  19. Weiser, Mark: Program Slicing. In: Proceedings of the 5th ICSE, March 1981.

    Google Scholar 

  20. Wills, Linda Mary: Automated Program Recognition by Graph Parsing. Technical Report 1358, July 1992, Massachusetts Institute of Technology — Artificial Intelligence Laboratory.

    Google Scholar 

Download references

Authors

Editor information

Franz Lehner

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer Fachmedien Wiesbaden

About this chapter

Cite this chapter

Koschke, R., Plödereder, E. (1996). Ansätze des Programmverstehens. In: Lehner, F. (eds) Softwarewartung und Reengineering. Information Engineering und IV-Controlling. Deutscher Universitätsverlag, Wiesbaden. https://doi.org/10.1007/978-3-663-08951-3_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-663-08951-3_11

  • Publisher Name: Deutscher Universitätsverlag, Wiesbaden

  • Print ISBN: 978-3-8244-6294-0

  • Online ISBN: 978-3-663-08951-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics