Go to page

Bibliographic Metadata

Links
Abstract

Das Lesen von Quelltext ist ein essentieller Teil des Programmverstehens. Während die Analyse von Blickbewegungen seit Jahrzehnten wertvolle Einblicke in das Verstehen von natürlichsprachlichem Text liefert, ist sie beim Programmverstehen relativ neu und es ergeben sich eine Reihe methodischer Probleme. Diese Arbeit evaluiert und adaptiert methodische Ansätze, so werden u.a. eine spezifische Ereignisdetektion und ein neues Korrekturverfahren für räumliche Fehler entwickelt. Die Eignung der beschriebenen Methodik wird mit zwei exemplarischen Forschungsfragen demonstriert. Zunächst wird analysiert, ob natürlichsprachlicher Text und Quelltext unterschiedlich gelesen werden. Die zweite Frage betrifft die Unterschiede zwischen Anfänger:innen und Expert:innen. Für ein umfassendes Bild wird ein breites Spektrum etablierter als auch speziell entwickelter Analysemaße eingesetzt, z.B. Sequenzalignment zur Beschreibung von Leseansätzen. Bereits Anfänger:innen lesen Quelltext teilweise anders als natürlichsprachlichen Text, bei Expert:innen sind die Unterschiede noch ausgeprägter. Bei natürlichsprachlichem Text werden mehr Bereiche betrachtet als bei Programmen. Anfänger:innen lesen Quelltext zum Teil anders als Expert:innen, so befassen sich letztere viel früher mit der main-Methode. Blickbewegungen liefern reichhaltige Informationen über das Quelltextlesen. Die entwickelte Methodik lässt sich auf viele Fragen im Bereich der Softwaretechnik und der Programmierausbildung anwenden.

Abstract

Code reading is a fundamental part of program comprehension. While studying eye movements has provided valuable insights into natural-language text comprehension for decades, its application in program comprehension is fairly recent and brings about many methodological challenges. This work evaluates and adapts existing methodological approaches, resulting in a customized event detection and a novel correction for spatial error. The suitability of the proposed methodology is demonstrated with two exemplary research questions. First, it is analyzed whether natural-language text and source code are read differently. The second question concerns differences in how novices and experts read programs. To obtain a comprehensive picture of code reading, a wide range of established as well as specifically devised measures is used for analysis, e.g. sequence alignment is adapted into an instrument for examining reading approaches. In some regards novices already read source code differently than natural-language text, for experts the differences are even more pronounced. Participants look at a greater proportion of natural-language text than of source code. Novices partly exhibit a different code reading behavior than experts, e.g. the latter attend to the main-method much sooner. Eye movements provide manifold information to deepen the understanding of code reading. The developed methodology can be applied to many questions in software engineering and programming education.

Stats