Skip to content

Künstliche Intelligenz in der Softwareentwicklung

Einleitung

Allen Kapiteln wurde eine eindeutige Nummerierung, der Richtliniennummer, hinzugefügt, um eine eindeutige Identifikation zu ermöglichen. Jede Richtliniennummer besteht aus dem Buchstaben AI(Artificial Intelligence) gefolgt von einer Nummer, die den Abschnitt identifiziert. Damit kann eine Regel eindeutig identifiziert werden, z.B. für ein Code-Review.

AI1 Was ist KI nicht?

KI sind keine Wissenssysteme. Wissenssysteme sind Systeme, die auf Basis von Regeln und Fakten arbeiten. KI sind Systeme, die auf Basis von Daten und Modellen arbeiten und Ergebnisse anhand von Wahrscheinlichkeiten berechnen. Ergebnisse hängen von vielen Faktoren ab und können nicht exakt sein.

AI2 Traue keiner KI

Jede Ausgabe einer KI muss auf ihre Richtigkeit überprüft werden. Prüfungen können durch Nachdenken und Tests erfolgen.

AI3 Sicherheit in den KI Code-Ergebnissen

Codes können Sicherheitslücken enthalten, die von KI nicht immer erkannt werden, weil die Basistrainingsdaten nicht alle möglichen Angriffe enthalten.

AI4 Code-Generierung

AI4 Stückweise Code-Generierung

Code soll von einer KI nicht in zu großen Stücken generiert werden. Menschen können den Code nicht mehr überblicken und damit vollständig verstehen. Es ist besser, wenn Code Stück für Stück generiert wird, damit der Entwickler mit dem Code wächst und ihn versteht.

Beachte dazu die Millersche Zahl, die besagt, dass Menschen nur 7±2 Dinge gleichzeitig im Kurzzeitgedächtnis behalten können.

AI4 Große Code-Blöcke

Sprachmodelle können natürlich auch ganze Klassen und Module generieren. Der Aufwand dazu ist minimal, und wenn dieser Code verwendet werden soll, muss auf folgendes geachtet werden.

  1. Code-Review: Der Code muss von einem Entwickler überprüft werden, der die Funktionsweise des Codes versteht. Der Aufwand dafür muss mindestens der Hälfte der Zeit entsprechen, die benötigt worden wäre, um den Code selbst zu schreiben.
  2. Tests: Der Code muss getestet werden, um sicherzustellen, dass er korrekt funktioniert.
  3. Richtlinien: Der Code muss nachträglich auf die Einhaltung der Richtlinien überprüft werden.