Softwarearchitektur: "KI wird unsere Fähigkeiten ergänzen, nicht ersetzen"
Im Interview spricht Softwarearchitekt Ralf D. Müller darüber, wie ChatGPT sich bei Prüfungsaufgaben schlägt und wie es in der Praxis hilft.
![ChatGPT Symbolbild](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/4/3/2/1/0/0/9/shutterstock_2253228203-0338f67a1cb3a279.jpeg)
(Bild: SomYuZu / Shutterstock.com)
Ralf Müller von DB Systel arbeitet seit über 25 Jahren in der Softwarebranche, zunächst als Entwickler und später als Softwarearchitekt. Da er großen Wert auf die klare Kommunikation und Dokumentation seiner Ideen legt, hat er das Open-Source-Projekt docToolchain gestartet, das sich der effektiven Dokumentation von Software-Architekturen widmet.
Derzeit beschäftigt er sich mit dem Einsatz von KI für das Softwaredesign und hält zu dem Thema einen Vortrag auf dem iSAQB Software Architecture Gathering. Ralf hat Erfahrungen mit ChatGPT als Werkzeug zum Lösen spezifischer Teilprobleme in der iSAQB Advanced Level Beispielprüfung und mit der Rolle von ChatGPT als Wissensspeicher bei Softwarearchitekturaufgaben gesammelt.
heise Developer: Die Lösung der iSAQB Advanced Level Beispielprüfung mit ChatGPT klingt faszinierend. Haben Sie einfach die gesamte Prüfungsaufgabe an ChatGPT weitergeleitet oder haben Sie ChatGPT eher zur Unterstützung bei bestimmten Teilproblemen genutzt?
Müller: Letzteres. Die gesamte Beispielprüfung weiterzuleiten, hätte auch gar nicht funktioniert, da ChatGPT nur einen begrenzten Kontext verarbeiten kann. Stattdessen habe ich ChatGPT als Sparringspartner benutzt, um bei spezifischen Teilproblemen Lösungen zu finden und Architekturentscheidungen zu validieren. Oft hilft es schon, wenn man über ChatGPT einen Ausgangspunkt erhält. Durch die Aufteilung der Prüfung in kleinere, leichter zu bewältigende Aufgaben, war ich in der Lage, robuste Aufforderungen zu erstellen, die zu aufschlussreichen und gezielten Antworten des Modells führten.
Können Sie ein konkretes Szenario beschreiben, in dem Sie zeigen, wie ChatGPT bei der Bewältigung einer Prüfungsaufgabe hilft?
Müller: Ich hatte eine interessante Erfahrung, als ich in der Prüfung auf das Fachklassenmodell stieß. Da ChatGPT zu diesem Zeitpunkt keine Grafiken interpretieren konnte, fütterte ich es mit der tabellarischen Beschreibung des Modells und bat es, ein PlantUML-Diagramm zu erstellen. Die anfängliche Ausgabe wich erheblich von dem ursprünglichen Diagramm ab, was mich zu der Erkenntnis brachte, dass die tabellarische Beschreibung selbst unvollständig war.
Vom 27. bis 30. November findet mit dem iSAQB Software Architecture Gathering 2023 die führende Online-Konferenz zum Thema Softwarearchitektur statt. Veranstalter der Konferenz sind iSAQB und iX, das Magazin für professionelle IT.
Das Programm bietet 30 englischsprachige Vorträge unter anderem zu
- Test Intelligence for Architects
- Architecting for Observability
- New Architecture Accidents
- How does Netflix build software to streamline organizational operations
- Legacy Software: Really a Problem?
Ralf Müller hält einen Vortrag zum Einsatz von KI für das Softwaredesign: "How ChatGPT Can Help With Creating a Solution Architecture". Den beiden Konferenztagen sind zwei Workshop-Tage vorgelagert.
Das war zwar keine direkte Antwort auf eine Prüfungsfrage, aber es zeigte mir einen neuen Problemlösungsansatz. ChatGPT kann nämlich nicht nur für direkte Lösungen, sondern auch als Werkzeug zum Aufdecken von Lücken oder Widersprüchen in bestehenden Informationen verwendet werden kann.
Was waren die wichtigsten Erkenntnisse aus dieser Interaktion und welche Hilfe kann die Softwarearchitektur von ChatGPT als Sparringspartner erwarten?
Müller: Eine der wichtigsten Erkenntnisse ist, wie wertvoll eine iterative Problemlösung ist. ChatGPT liefert schnelles Feedback, was es mir ermöglicht, verschiedene architektonische Entwürfe und Ansätze schnell zu iterieren. Dieser iterative Prozess half mir, meine Lösungen effizienter zu verfeinern, als wenn ich allein arbeiten würde.
Eine weitere Erkenntnis war die Fähigkeit des Modells, als "Wissensspeicher" zu dienen. Es ist zwar kein Ersatz für fundiertes Fachwissen in der Softwarearchitektur, aber ChatGPT kann schnell Informationen zu einer Vielzahl von Themen liefern, von Entwurfsmustern bis hin zu Best Practices, und so Wissenslücken schließen oder sogar eine neue Perspektive bieten.
Konversationsinteraktionen mit KI können manchmal zu unerwarteten oder ungenauen Antworten führen. Welche Sicherheitsvorkehrungen oder Praktiken schlagen Sie vor, um die Genauigkeit und Zuverlässigkeit der von ChatGPT bereitgestellten Informationen und Vorschläge bei Softwarearchitekturaufgaben zu gewährleisten?
Müller: Um sicherzustellen, dass die Informationen von ChatGPT korrekt sind, behandle ich sie wie jeden Ratschlag eines menschlichen Experten. Ich nutze mein Wissen, um schnell zu überprüfen, ob das, was gesagt wird, Sinn macht. Wenn ich besonders sicher sein will, schaue ich in offiziellen Dokumenten oder anderen vertrauenswürdigen Quellen nach, um die Fakten zu überprüfen.
Es ist auch erwähnenswert, dass ChatGPT immer besser wird. Vor einiger Zeit dachte man noch, es könne nur einfache mathematische Aufgaben lösen. Wenn Sie ChatGPT mittlerweile bitten, etwas zu berechnen, wird es Ihnen die richtigen Formeln zeigen, bevor es die richtige Antwort gibt. ChatGPT wird rasant weiterentwickelt.
Der Grundgedanke ist also, ChatGPT als hilfreiches Werkzeug zu benutzen, aber die Informationen immer doppelt zu überprüfen, um sicherzustellen, dass sie richtig sind.
Wie kann der Prüfer sicherstellen, dass nicht ChatGPT die reale iSAQB-Prüfungsaufgabe gelöst hat, sondern der Prüfling? Müssen die Prüfungsfragen in Zukunft anders gestellt werden?
Müller: Ich glaube nicht, dass wir einen Punkt erreichen werden, an dem KI-generierter Text automatisch identifiziert oder mit einem Wasserzeichen versehen werden kann. Beim Turing-Test, bei dem es eher um einen interaktiven Chat als um eine schriftliche Aufgabe geht, ist es wahrscheinlicher, dass Maschinen wie ChatGPT erkannt werden. Mittlerweile aber nicht wegen ihrer Fehler, sondern weil sie keine Fehler machen und über fast unendliches Wissen verfügen.
Das hat natürlich auch einen ethischen Aspekt. KI ist ein mächtiges Werkzeug, und die Frage ist nicht nur, ob wir es nutzen können, sondern auch, wie wir es verantwortungsvoll einsetzen sollten.
Um auf die Zertifizierung zurückzukommen: Diese enthält neben der schriftlichen Aufgabe auch noch eine mündliche Prüfung. Wenn ich mich im schriftlichen Teil zu sehr auf KI verlassen und den Inhalt nicht vollständig verstanden hätte, würde das in der mündlichen Prüfung deutlich werden.
Die Frage, die immer wieder auftaucht, ist, wie Large Language Models unser Berufsleben verändern werden. Was denken Sie, welchen Einfluss werden ChatGPT und ähnliche Tools auf die Rolle des Softwarearchitekten in der Zukunft haben?
Es gibt zwar die weitverbreitete Vorstellung, dass KI den Menschen eines Tages überflüssig machen wird, aber ich teile diese Ansicht nicht. Die Vorstellung, dass Technologien den Menschen ersetzen, ist in der IT-Welt schon früher aufgetaucht, und sie hat sich eher als Mythos denn als Realität erwiesen. Ich sehe die KI als ein Werkzeug, das uns neue und effizientere Arbeitsmethoden ermöglicht. Sie wird uns in die Lage versetzen, bessere Systeme schneller zu entwickeln und immer komplexere Architekturen zu verwalten.
Das Wesen der Rolle des Softwarearchitekten wird sich meines Erachtens jedoch nicht ändern. Unsere analytischen Fähigkeiten werden unverzichtbar bleiben, ebenso wie unsere Fähigkeit, effektiv zu kommunizieren und die Bedürfnisse des Kunden in den Vordergrund zu stellen. Im Grunde genommen wird KI unsere Fähigkeiten ergänzen, nicht ersetzen.
Das Interview führten Dehla Sokenou und Lukas Zühl.
(rme)