KI für Agile Software Engineering (ASE)
Auf dem Weg zum Conversational Programming – Code entsteht im Dialog mit KI
Softwareentwicklung befindet sich auf dem Pfad der Automatisierung. Mit welchem Tempo und bis zu welchem Grad sie voranschreitet, ist noch Spekulation. Sicher ist dagegen, dass Conversational Programming schon jetzt ein Mittel für Software Engieers ist, effizienter zu werden. Weil "Code schreiben" im Aufgabenfeld "Softwareentwicklung" nur ein Punkt von vielen ist:
- Anforderungen erheben und managen
- vorhandenen Code lesen und verstehen
- Code schreiben
- Wartbarkeit sicherstellen
- Funktionalität sicherstellen
- über Teamgrenzen hinaus kommunizieren
Wenn also dieser eine Punkt - Code schreiben - teilweise automatisiert wird, dann bleibt mehr Kapazität für die anderen und die Entwicklung wird insgesamt schneller. Zwei Beispiele:
Nehmen wir als Erstes ein Spring-Boot-Projekt. Darin reicht es einem auf LLM-Modellen basierenden Code-Assistenten aus, die Anfangszeilen einer Controller-Klasse zu bekommen. Dann kann er einen Vorschlag machen, wie sich eine REST-API-Methode vollständig implementieren lässt. Code-Assisstenten können zum Beispiel auch einen Unit-Test vervollständigen, wenn sie die Methodensignatur erhalten.
Die Fähigkeit der State of the art Assistenten wie GitHub Copilot reichen also bereits aus, um größere Code-Fragemente zu generieren. Chat-Features in IDEs wie IntellJ unterstützen ebenfalls in Richtung Conversional Programming. Dabei entsteht Code in direktem Austausch mit KI, die Software Engineers bewegen sich weg vom Code Creator und hin zum Code Editor. Auch, wenn es beispielsweise darum geht, Beiträge zu bestimmten fachlichen Fragen zu finden, sind KI-Bots eine überaus Zeit- und Aufwand-sparende Hilfe.
Dessen ungeachtet bleiben Qualitätskriterien genau das – Qualitätskriterien. Deshalb validieren wir bei andrena sorgfältig, was sich aus den KI-Laboren in den Entwickleralltag übertragen lässt. Wir stellen an die KI-gestützte Entwicklung exakt den gleichen Qualitätsanspruch wie an jeden anderen Entwicklungsaspekt und setzen KI-Tools da ein, wo sie uns schneller und effizienter machen.
Steve Haupt, Expert KI Consultant
"KI ist ein Paradigmenwechsel und zwingt uns unser mentales Modell zu aktualisieren. Es ist jetzt möglich was vorher undenkbar schien. Maschinen treffen für uns schlaue Entscheidungen wie wir das nur von Menschen gewohnt sind.
Das bedeutet, die Art wie wir Software entwickeln, wird sich in den nächsten 5 Jahren stärker verändern als das in den letzten 25 Jahren geschehen ist."