Suchen

Blick ins Gehirn: Wie Softwareentwickler denken und verstehen

Redakteur: Martina Hafner

Der Informatik-Professor Sven Apel hat untersucht, was in Köpfen von Software-Entwicklern vorgeht, wenn sie sich mit Programmcode beschäftigen. Die Ergebnisse könnten weitreichende Folgen für das Programmieren haben.

Der Saarbrücker Informatik-Professor Sven Apel: „Unsere Forschung legt nahe, dass das Sprachverständnis eine zentrale Rolle beim Programmieren spielt.“
Der Saarbrücker Informatik-Professor Sven Apel: „Unsere Forschung legt nahe, dass das Sprachverständnis eine zentrale Rolle beim Programmieren spielt.“
(Bild: Saar-Uni)

Sven Apel will von berufs wegen wissen, was in den Köpfen von Softwareentwicklern während ihrer Arbeit vorgeht. Der Informatik-Professor der Universität des Saarlandes verwendet dafür bildgebende Verfahren aus den Neurowissenschaften. Er untersucht, welche Hirnareale beim Lesen und Verstehen von Computerprogrammen aktiviert werden.

Mit seinem Team fand Apel heraus, dass vor allem Hirnregionen aktiv sind, die auch bei der Verarbeitung natürlicher Sprache relevant sind. „Unser Ziel war es, einen völlig neuen Ansatz zu entwickeln, damit wir die kognitiven Prozesse, die beim Programmieren ablaufen, besser verstehen“, sagte Apel. Als erster Wissenschaftler der Welt hat er gemeinsam mit einem Team aus Informatikern und Neurobiologen die Hirnaktivität von Programmierern sichtbar gemacht und ausgewertet, während diese komplizierte Codezeilen analysiert haben. Die Forscher verwendeten dafür funktionale Magnetresonanztomographie.

Die Bilddaten zeigen deutlich, dass bei den Versuchspersonen die Areale der linken Hirnhälfte aktiviert wurden, welche vor allem mit Sprachverständnis assoziiert sind.„Zu unserer Überraschung konnten wir keine Aktivität in Richtung mathematischen oder logischen Denkens beobachten“, fasst Sven Apel die Ergebnisse zusammen. „Unsere Forschung legt nahe, dass das Sprachverständnis eine zentrale Rolle beim Programmieren spielt. Diese Vermutung äußerte der renommierte niederländische Informatiker Edsger W. Dijkstra bereits in den 1980er Jahren.“ Ihre Erkenntnisse könnten weitreichende Folgen für das Programmieren haben, beispielsweise beim Design von Programmiersprachen, in der Programmierausbildung oder bei der Beantwortung grundlegender Fragen, etwa, was komplizierten oder einfachen Programmcode ausmacht.

Apel und sein Team wendeten bei ihrer Studie die in der Neurowissenschaft bewährte Subtraktionsmethode an: Die Probanden bearbeiteten im Magnetresonanztomographen zuerst eine Aufgabe, zu deren Lösung sie einen Programmcode-Auszug verstehen mussten. Nach einer kurzen Ruhepause sollten sie einen Code-Schnipsel auf einfache Syntaxfehler überprüfen, was für Programmierer eine Routineaufgabe darstellt, also keine Verständnisfrage war. Dieser Ablauf wurde mehrfach wiederholt. Im Anschluss wurden die Bilder der Hirnaktivität während des Bearbeitens der Routineaufgabe von den Bildern des Verständnistests subtrahiert – was übrigblieb, waren die Hirnregionen, die für den Prozess des Programmverstehens von besonderer Bedeutung sind.

Das von Apel entwickelte Forschungsdesign wurde inzwischen von diversen Forschungsgruppen weltweit aufgegriffen und um zusätzliche Aspekte erweitert. Der Saarbrücker Informatiker geht davon aus, dass die Forschungsergebnisse auch in die Neurowissenschaft rückkoppeln könnten, indem neue kognitive Prozesse entdeckt werden, die sich beispielsweise vom Leseverständnis und logischem Schließen unterscheiden.

Apel und sein Team wollen jetzt herausfinden, worin sich das Programmverständnis bei Experten und Anfängern unterscheidet, also ob sie Programmcode auf verschiedene Weise lesen und interpretieren.

Originalveröffentlichung in der Communications of the ACM: „Studying Programming in the Neuroage: Just a Crazy Idea?“,

(ID:46628094)