KI in der Code Review

Ein weiterer Schritt in der Softwareentwicklung, bei dem immer mehr Werkzeuge eingesetzt werden, ist das Code Review. Im klassischen Code Review überprüfen Softwareentwickler den programmierten Code von anderen. Am besten geschieht das in direkter Kommunikation, so dass man einander komplizierte Stellen genauer erklären, Verbesserungsvorschläge unterbreiten oder einen erklärenden Kommentar hinzufügen kann.

Stellenmarkt
  1. Juristischer Berater (m/w/d) IT
    VBL. Versorgungsanstalt des Bundes und der Länder, Karlsruhe
  2. Leiter Escalation- und Incident-Management (m/w/d)
    ENTEGA Medianet GmbH über KEPPLER.Personalberatung, Darmstadt
Detailsuche

Das Review soll helfen, Fehler zu vermeiden, und für eine bessere Qualität des Quellcodes sorgen. Denn wenn schon frühzeitig eine zweite Person den Code versteht und klar ist, was da passiert, werden auch weitere dieses Verständnis erreichen können, wenn eine Erweiterung oder ein Bugfix erforderlich werden. Kurz: Die Qualität schlägt sich in erhöhter Wartbarkeit nieder.

Für die Fehlerkorrektur gibt es auch traditionelle Tool-Ansätze. Es gibt Software für Code Reviews, in der sich ein Pull Request für eine Änderung verwalten lässt und so zum Beispiel Reviewern direkten Zugriff auf die geänderten Codestellen gibt.

Die Codestellen können dann kommentiert werden, etwa als Nachfrage, oder mit einer Aufforderung zur Änderung versehen werden. Schlussendlich kann ein Review natürlich auch abgeschlossen werden und der Pull Request gilt als genehmigt. Was nach einem sehr restriktiven Prozess klingt, ist in Wirklichkeit gute, sich gegenseitig ergänzende Zusammenarbeit.

Golem Akademie
  1. Advanced Python – Fortgeschrittene Programmierthemen: virtueller Zwei-Tage-Workshop
    27.–28. Januar 2022, Virtuell
  2. Penetration Testing Fundamentals: virtueller Zwei-Tage-Workshop
    17.–18. Januar 2022, Virtuell
Weitere IT-Trainings

Ganz automatisch laufen dagegen Tools zur Fehlerfindung oder zum Auffinden potenziell schlechten Codes. Zu nennen sind hierbei die Gruppe der Linter, Programme wie Findbugs oder PMD, die auch in der IDE laufen können, aber auch große Lösungen wie Sonarqube.

Über statische Codeanalysen wird nach Regelsets, die sich von Projekt zu Projekt unterscheiden können, Programmcode analysiert. Potenzielle Fehler und Warnungen werden gemeldet, es können dann Verbesserungen erstellt werden. Es können aber zum Beispiel auch Warnungen mit einem erklärenden Kommentar versehen und dokumentiert werden, warum die Warnung an dieser Stelle ignoriert werden musste.

Diese traditionellen Tools bleiben vorerst wohl ohne KI-Features und ML-Learning. Auf Nachfrage, ob man denn in Zukunft KI-getriebene Module als Option sehe, antwortete Olivier Gaudin, CEO und Mitgründer von Sonar Source: "Das ziehen wir für die Zukunft zwar in Betracht, es ist aber derzeit noch nicht in der Planung."

Codeguru von Amazon für Review und Profiling

Doch auch im Code Review kommen langsam neue Tools auf, die mehr können sollen. Codeguru von Amazon ist so eine Software, die erst seit Kurzem auf dem Markt ist. Sie soll nicht einfach nur durch statische Codeanalyse unsauberen Code oder gar Fehler entdecken, sie soll ein Code Review durch einen Menschen ersetzen oder zumindest eine weitere Meinung anbieten.

Denn "selbst für eine große Organisation wie Amazon ist es schwierig, genug erfahrene Entwickler mit freier Zeit für Code Reviews zu haben", hieß es in der Mitteilung von Amazon zur Präsentation der Software "Und selbst die erfahrensten Reviewer übersehen mal ein potenzielles Problem."

Trainiert wurde Codeguru laut Amazon mit 10.000 Open-Source-Projekten. Die in Screenshots gezeigten Anmerkungen klingen fundiert, so wird zum Beispiel auf potenzielle Multithreading-Probleme hingewiesen, die zu Datenverlust führen können - Probleme, die auch von erfahrenen Fachkräften oftmals schwer zu finden sind. Codeguru lernt aus Feedback der Entwickler, die die Meldung dann bearbeiten, und zwar durch ein einfaches Feedback über Daumen hoch oder eben Daumen runter.

Doch Codeguru bietet noch mehr: Profiling. Wie sich eine Applikation unter Last verhält, ist nicht immer einfach ersichtlich. Mit einem Performance-Problem können manchmal Tage oder Wochen dafür draufgehen, wenn das Problem nachgestellt werden muss und über traditionelles Profiling aufgedeckt und repariert werden muss. Der Profiler findet die teuersten Stellen im Code, so kann ein Fix schnell auf den Weg gebracht werden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Kite für Python, Google und MicrosoftKI zum Generieren von Tests 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8.  


derdiedas 24. Aug 2020

Für immer und ewig wird das so bleiben. Immer wenn ich Berichte von AI/KI höre fasse ich...

subjord 23. Aug 2020

Die Entwicklung geht ja eh dahin, immer hochsprachigeren Code zu schreiben. Dann kommt da...

subjord 23. Aug 2020

Beispiel: Geht es drum auf Bildern Hasen, Treppen, Ampeln oder Zweiräder zu...

Dakkaron 23. Aug 2020

Also muss man nicht nur was und wie sondern auch warum ausprogrammieren... Ui, das hilft...

Cerdo 21. Aug 2020

Mein Prof. in der theoretischen Informatik hatte mal bewiesen, dass es kein Programm...



Aktuell auf der Startseite von Golem.de
Wemax Go Pro
Mini-Projektor für Reisen strahlt 120-Zoll-Bild an die Wand

Der Wemax Go Pro setzt auf Lasertechnik von Xiaomi. Der Beamer ist klein und kompakt, soll aber ein großes Bild an die Wand strahlen können.

Wemax Go Pro: Mini-Projektor für Reisen strahlt 120-Zoll-Bild an die Wand
Artikel
  1. Snapdragon 8cx Gen 3: Geleaktes Qualcomm-SoC erreicht das Niveau von AMD und Intel
    Snapdragon 8cx Gen 3
    Geleaktes Qualcomm-SoC erreicht das Niveau von AMD und Intel

    In Geekbench wurde der Qualcomm Snapdragon 8cx Gen 3 gesichtet. Er kann sich mit Intel- und AMD-CPUs messen, mit Apples M1 aber wohl nicht.

  2. Air4: Renault 4 als Flugauto neu interpretiert
    Air4
    Renault 4 als Flugauto neu interpretiert

    Der Air4 ist Renaults Idee, wie ein fliegender Renault 4 aussehen könnte. Mit der Drohne wird das 60jährige Jubiläum des Kultautos gefeiert.

  3. MS Satoshi: Die abstruse Geschichte des Bitcoin-Kreuzfahrtschiffs
    MS Satoshi
    Die abstruse Geschichte des Bitcoin-Kreuzfahrtschiffs

    Kryptogeld-Enthusiasten kauften ein Kreuzfahrtschiff und wollten es zum schwimmenden Freiheitsparadies machen. Allerdings scheiterten sie an jeder einzelnen Stelle.
    Von Elke Wittich

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Black Friday Wochenende • LG UltraGear 34GP950G-B 999€ • SanDisk Ultra 3D 500 GB M.2 44€ • Boxsets (u. a. Game of Thrones Blu-ray 79,97€) • Samsung Galaxy S21 128GB 777€ • Premium-Laptops (u. a. Lenovo Ideapad 5 Pro 16" 829€) • MS Surface Pro7+ 888€ • Astro Gaming Headsets [Werbung]
    •  /