Dem Gehirn beim Programmieren zuschauen
Informatik-Professor Sven Apel © Universität des Saarlandes
Forschungsteam unter Federführung von Professorin der TU Chemnitz analysiert erstmalig Hirnaktivität beim Verstehen von Programmcode – Erstklassige Veröffentlichung in Fachmagazin „Communications of the ACM“
Pressemitteilung der Universität des Saarlandes mit Material der TU Chemnitz.
Was geht in den Köpfen von Programmiererinnen und Programmierern vor, wenn sie Software schreiben? Diese Frage stellten sich Prof. Dr. Janet Siegmund, Professur Software Engineering an der TU Chemnitz, Prof. Dr. Sven Apel, Lehrstuhl für Software Engineering der Universität des Saarlandes und Dr. André Brechmann, Leiter des Speziallabors für nicht-invasive Bildgebung am Leibniz-Institut für Neurobiologie in Magdeburg. Um das herauszufinden, verwendeten die Forscherin und Forscher bildgebende Verfahren aus den Neurowissenschaften und untersuchten, welche Hirnareale beim Lesen und Verstehen von Computerprogrammen aktiviert werden. Ihr verblüffendes Ergebnis: programmieren ist wie sprechen. Denn sie fanden heraus, dass vor allem die Hirnregionen aktiv sind, die auch bei der Verarbeitung natürlicher Sprache relevant sind.
Die Ergebnisse ihrer Grundlagenforschung veröffentlichten sie jetzt in der renommierten Fachzeitschrift „Communications of the ACM“, die von der weltgrößten Fachgesellschaft für Informatik herausgegeben wird. Federführend mit Erstautorenschaft war Janet Siegmund von der TU Chemnitz. Die 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. Gefördert wurde das Projekt von der Deutschen Forschungsgemeinschaft (DFG).
Neuer Forschungsansatz – Erstmalige Gehirnanalyse beim Programmieren
„Die Idee für unsere Forschungsfrage entstand in Magdeburg bei einem gemeinsamen Treffen von Forscherinnen und Forschern des Leibniz-Instituts für Neurobiologie und der Fakultät für Informatik in Magdeburg“, sagt Janet Siegmund. „Durch die Unterstützung meines Doktorvaters Prof. Saake (Universität Magdeburg) und Prof. Leich (Hochschule Harz) konnten wir die grundlegende Arbeit der Entwicklung des Forschungsdesigns beginnen.“ In mehreren kleinen und großen Pilotstudien entstand so eine vielseitige methodische Grundlage. Ein Aufwand, der sich gelohnt hat, denn inzwischen ist die von Siegmund und ihren Kollegen entwickelte Methodik auf dem Weg zum Standard und hat sich bereits in internationalen Studien bewährt.
„Unser Ziel war es, einen völlig neuen Ansatz zu entwickeln, damit wir die kognitiven Prozesse, die beim Programmieren ablaufen, besser verstehen“, sagt Sven Apel aus Saarbrücken. Siegmund, Apel und Brechmann machten erstmalig die Hirnaktivität von Programmiererinnen und Programmieren sichtbar, während diese mehrere Codezeilen analysierten. Dabei arbeiteten die Wissenschaftler wie eine Einheit zusammen, die sich gegenseitig ergänzt. Während Brechmann als versierter Neurowissenschaftler seine Erfahrung für Experimente in der Funktionellen Magnetresonanztomographie (fMRI) und Apel als erfahrener Forscher seine Expertise im Bereich Softwareentwicklung einbrachte, fungierte Siegmund mit ihrer interdisziplinären Expertise in Psychologie und Informatik als Bindeglied.
Forschungsdesign auf dem Weg zum Standard
Das Team nutzte für die Studie die in der Neurowissenschaft bewährte Subtraktionsmethode: Dabei bearbeiten die Probandinnen und Probanden im Magnetresonanztomographen zuerst eine Aufgabe, zu deren Lösung sie einen Programmcode-Auszug verstehen müssen. Nach einer kurzen Ruhepause sollten sie einen Code-Schnipsel auf einfache Syntaxfehler überprüfen, was für Programmiererinnen und 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.
Um zu sehen, was während dieses Prozesses im Gehirn passiert, verwendete das Team einen funktionalen Magnetresonanztomographen. Die Bilddaten zeigten 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“, fassen die Forscher 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“, ergänzt Apel.
Das entwickelte Forschungsdesign wurde inzwischen von diversen Forschungsgruppen weltweit aufgegriffen und um zusätzliche Aspekte erweitert. Das Forschungsteam geht davon aus, dass die Ergebnisse 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.
Das Team um Siegmund, Apel und Brechmann wollen jetzt herausfinden, worin sich das Programmverständnis bei Experten und Anfängern unterscheidet, also ob sie Programmcode auf verschiedene Weise lesen und interpretieren. Unterstützt werden sie dabei von Doktorand Norman Peitek, der bereits wesentlich an der vorliegenden Studie beteiligt war.
Originalpublikation:
Studying Programming in the Neuroage: Just a Crazy Idea? By Janet Siegmund, André Brechmann, Sven Apel et al. Communications of the ACM, June 2020, Vol. 63 No. 6, Pages 30-34. DOI 10.1145/3347093. https://bit.ly/2U7ir8T
Weitere Informationen:
Professorship Software Engineering, TU Chemnitz: www.mytuc.org/lpgg
Chair of Software Engineering, Universität des Saarlandes: www.se.cs.uni-saarland.de
Combinatorial NeuroImaging Core Facility, Leibniz-Institute for Neurobilogy Magdeburg: https://www.lin-magdeburg.de/cni
Kontakt:
Prof. Dr.-Ing. Janet Siegmund
Professur Software Engineering
E-Mail: janet.siegmund@informatik.tu-chemnitz.de
Tel.: +49 (0)371 531 34310
Prof. Dr. Sven Apel
Lehrstuhl für Software Engineering
E-Mail: apel@cs.uni-saarland.de
Tel.: +49 (0)681 302-57211
Dr. André Brechmann
Combinatorial NeuroImaging Core Facility
Leibniz-Institute for Neurobiology
Tel: +49 (0)391/62639-2161
E-Mail: andre.brechmann@lin-magdeburg.de
Hintergrund Saarland Informatics Campus:
800 Wissenschaftlerinnen und Wissenschaftler und rund 2000 Studierende aus mehr als 80 Nationen machen den Saarland Informatics Campus (SIC) zu einem der führenden Standorte für Informatik in Deutschland und Europa. Fünf weltweit angesehene Forschungsinstitute, nämlich das Deutsche Forschungszentrum für Künstliche Intelligenz (DFKI), das Max-Planck-Institut für Informatik, das Max-Planck-Institut für Softwaresysteme, das Zentrum für Bioinformatik und das Cluster für „Multimodal Computing and Interaction“ sowie die Universität des Saarlandes mit drei vernetzten Fachbereichen und 21 Studiengänge decken das gesamte Themenspektrum der Informatik ab.
Die Öffentlichkeitsarbeit am Saarland Informatics Campus wird unterstützt durch das Kompetenzzentrum Informatik Saarland, gefördert aus Mitteln des Europäischen Fonds für regionale Entwicklung (EFRE) und Mitteln der Staatskanzlei Saarland.