Zum Inhalt springen

LLMs beim Programmieren – was sie können und was nicht

Bedeuten große Sprachmodelle das Ende klassischer Programmierung? Ein Pro & Kontra von Prof. Dr. Gordon Fraser von der Universität Passau und seinem Gast aus der Praxis, Marko Ivankovic.

Programmiersprachen weisen einen hohen Grad an Regelmäßigkeit auf. Man möchte meinen, dass damit große Sprachmodelle, Large Language Models, besonders gut geeignet seien, um Source Code automatisch zu generieren. Doch bedeutet das wirklich das Ende von menschlichen Programmiererinnen und Programmieren? Nein, ist Prof. Dr. Gordon Fraser überzeugt. Er ist Inhaber des Lehrstuhls für Software Engineering II an der Universität Passau und forscht zur Qualität von Software. Das Testen von Code ist ein wichtiger Bestandteil im Prozess der Software-Entwicklung.

Im Rahmen der Ringvorlesung „Künstliche Intelligenz – zwischen Hype und Realität“ belegte Prof. Dr. Fraser seine Haltung unter anderem anhand einer Studie aus dem vergangenen Jahr, die untersuchte, wie EvoSuite im Vergleich mit dem Modell GPT-4o abschnitt. Bei EvoSuite handelt es sich um ein Tool, das Prof. Dr. Fraser vor 15 Jahren entwickelte, um die Qualität von Java-Software zu überprüfen. Das Tool generiert automatisch Unit-Test, die den Code möglichst zu 100 Prozent überprüfen sollen. Es arbeitet dazu mit einem sogenannten evolutionären Algorithmus, einem Optimierungsverfahren, das von biologischen oder physikalischen Vorbildern inspiriert ist. Die Studie zeigt, dass selbst ein aktuelles GPT-Modell nicht an die Präzision des 15 Jahre alten Werkzeugs heranreicht, wenn es um das Testen von Software-Code geht – für Prof. Dr. Fraser ein klarer Beleg dafür, dass LLMs zwar syntaktisch korrekten Programmiertext erzeugen können, aber ihnen noch semantisches Verständnis fehlt.

Ein weiterer Punkt sei, dass Software-Engineering nicht nur das Programmieren und Testen umfasse. „Es geht auch darum, ein kluges Design für Software-Systeme zu entwerfen.“ Anforderungen der Kundschaft müssten erfasst und analysiert werden. Das sei die Basis für ein nachhaltiges System und hier sei der Mensch der Maschine zumindest langfristig überlegen. Seine These ist, dass von Large Language Models generierte Software zwar zu Beginn überlegen sei. Aber im Laufe der Zeit würden sich von Menschen entwickelte Designs als deutlich robuster und ausdauernder herausstellen. Die These brachte er mit folgender, bewusst überspitzter Grafik auf den Punkt:

Blick aus der Praxis - wo LLMs den Menschen bereits ersetzen

Widerspruch kam aus der Praxis: Zu Gast in der Ringvorlesung war Marko Ivankovic von dem Software-Unternehmen Cogna Ltd. mit Sitz in London. Es hat den Prozess der Software-Entwicklung für spezifische und kleine Programme bereits vollständig automatisiert – und zwar über die gesamte Kaskade des sogenannten Wasserfall-Modells hinweg. Dieses Vorgehensmodell kommt in der Software-Entwicklung zum Einsatz und beschreibt verschiedene Projektphasen, von den Anforderungen über Design und Implementation bis hin zur Wartungsphase.

Ivankovic schilderte, dass das Unternehmen für alle Phasen auf LLMs setze, auch bereits bei der Aufnahme der Anforderungen. „Wir bestellen die Kundschaft ein, lassen sie 45 Minuten über ihre Anforderungen reden. Die künstliche Intelligenz hört zu und strukturiert das Gesagte im Nachgang.“ Aus seiner Sicht gebe es keinerlei Grund, warum die KI nicht auch das Design des Software-Systems entwerfen könne. Beim Testen seien die großen Sprachmodelle ebenfalls „enorm hilfreich“. Er räumte aber ein, dass es selbst in seiner Firma nicht ganz ohne den Menschen ginge: „Der Mensch ist immer noch im Loop, kontrolliert und veredelt die Software.“ Doch auch beim Entdecken von Fehlern kann das Sprachmodell zu Rate gezogen werden. Sein Fazit: „Menschen ergänzt von Sprachmodellen sind das beste aus beiden Welten.“

Seiner Einschätzung nach würden Sprachmodelle zwar viele Schritte im Prozess der Software-Entwicklung übernehmen, die bislang der Mensch gemacht habe. Klassisch ausgebildete Programmiererinnen und Programmierer könnten auf dem künftigen Arbeitsmarkt deshalb tatsächlich Probleme bekommen. Dennoch würden die Sprachmodelle zu einer Produktivitätssteigerung führen, denn durch sie könnten mehr kleinere Software-Projekte umgesetzt werden als bislang. Der Bedarf an guten Software-Entwicklerinnen und -Entwicklern, die mit LLMs arbeiten können und um ihre Stärken und Schwächen wissen, sei ungebrochen.

Prof. Dr. Gordon Fraser, Inhaber des Lehrstuhls für Software Engineering II im Durchgang zum Philosophicum..

Prof. Dr. Gordon Fraser

forscht zu Softwaretechnik

Wie können wir Softwarefehler finden und verhindern?

Wie können wir Softwarefehler finden und verhindern?

Prof. Dr. Gordon Fraser hat seit 2017 den Lehrstuhl für Software Engineering II an der Universität Passau inne. Nach der Promotion an der Technischen Universität Graz forschte er an der Universität des Saarlandes und der University of Sheffield. In der Forschung und Lehre beschäftigt er sich mit Fragen rund um Softwareanalyse, Softwareentwicklung und Didaktik der Programmierung.

Blick in den Stucksaal der Staatlichen Bibliothek in Passau. Über manche Bücher läuft ein Binärcode als Symbol für maschinelles Lernen.
Blick in den Stucksaal der Staatlichen Bibliothek in Passau. Über manche Bücher läuft ein Binärcode als Symbol für maschinelles Lernen.
Themenseite

Generative Sprachmodelle haben disruptive Auswirkungen. An der Universität Passau untersuchen Forschende interdisziplinär die technischen, gesellschaftlichen, ethischen und rechtlichen Folgen.

Bluesky

Beim Anzeigen des Videos wird Ihre IP-Adresse an einen externen Server (Vimeo.com) gesendet.

Video anzeigen