40 Punkte von GN⁺ 2026-02-08 | Noch keine Kommentare. | Auf WhatsApp teilen
  • In einer Entwicklungsumgebung, in der mit AI zusammengearbeitet wird, muss der Mensch die Projektrichtung und Entscheidungen klar definieren, um die Qualität zu sichern
  • Durch präzise Dokumentation muss sichergestellt werden, dass sowohl AI als auch andere Entwickler Anforderungen und Einschränkungen klar verstehen
  • Durch den Aufbau eines Debug-Systems und eines Code-Review-Prozesses werden Zuverlässigkeit und Validierung von AI-generiertem Code gestärkt
  • Mit Kennzeichnung sicherheitskritischer Funktionen, Trennung von Tests und strengen Linting-Regeln werden Stabilität und Konsistenz des Codes sichergestellt
  • Durch Aufteilung in Arbeitseinheiten und Minimierung der Komplexität bleibt die Kontrolle über die AI-Codegenerierung erhalten und die Effizienz wird maximiert

1. Eine klare Vision festlegen

  • Menschen verstehen die Welt, das Team und das Nutzerverhalten, aber AI hat keine Erfahrung und benötigt daher explizite Anweisungen
    • Nicht dokumentierte Entscheidungen im Projekt werden sonst von der AI anstelle des Menschen getroffen
  • Architektur, Schnittstellen, Datenstrukturen und Algorithmen sollten vorab besprochen und die Testmethoden definiert werden
  • Langfristige und schwer zu ändernde Entscheidungen müssen unbedingt direkt vom Menschen gesteuert werden

2. Präzise Dokumentation pflegen

  • Damit AI zweckgerechten Code erzeugen kann, ist die Weitergabe detaillierter Anforderungen unerlässlich
  • Da auch andere Entwickler dieselben Informationen an die AI geben müssen, sollten Dokumente in einem standardisierten Format in das Code-Repository aufgenommen werden
    • Anforderungen, Einschränkungen, Architektur, Coding-Standards, Design-Patterns usw. detailliert festhalten
    • UML-Diagramme, Flussdiagramme und Pseudocode nutzen, um komplexe Strukturen visuell darzustellen

3. Ein Debug-System zur Unterstützung von AI aufbauen

  • Es sollte ein effizientes Debug-System eingerichtet werden, damit AI die Funktionalität des Codes schnell überprüfen kann
    • Beispiel: Logs aller Knoten eines verteilten Systems sammeln und zusammengefasste Informationen wie „Daten wurden an alle Knoten übertragen“ bereitstellen
  • Dadurch lassen sich Kosten für die Ausführung von Befehlen senken und Probleme schneller identifizieren

4. Das Niveau von Code-Reviews kennzeichnen

  • Je nach Wichtigkeit des Codes sollte die Intensität der Reviews unterschieden werden
    • Beispiel: Hinter einer von AI geschriebenen Funktion einen Kommentar //A hinzufügen, um anzuzeigen, ob sie von einem Menschen geprüft wurde
  • Dieses System erleichtert die Identifikation und Verwaltung nicht überprüften Codes

5. High-Level-Spezifikationen schreiben und selbst testen

  • AI kann versuchen, Tests zu bestehen, indem sie mit Mock-Objekten oder hartkodierten Werten trickst
  • Um das zu verhindern, sollten Property-based Tests direkt selbst geschrieben werden
    • Beispiel: Einen Server neu starten und die Konsistenz der Datenbankwerte überprüfen
  • Testcode sollte in einen separaten Bereich ausgelagert werden, damit AI ihn nicht verändern kann

6. Trennung von Schnittstellentests

  • AI sollte Schnittstellentests schreiben, ohne den übrigen Codekontext zu kennen
    • Dadurch bleibt die Objektivität der Tests erhalten, da sie nicht vom Implementierungs-AI beeinflusst werden
  • Auch diese Tests sollten davor geschützt werden, dass AI sie beliebig verändert

7. Strenge Linting- und Formatierungsregeln

  • Ein konsistenter Coding-Stil und Linting-Regeln sind essenziell, um Qualität zu sichern und Fehler früh zu erkennen
  • Sowohl AI als auch Menschen können so die Codequalität leicht überprüfen

8. Kontextbezogene Code-Agent-Prompts nutzen

  • Mit projektbezogenen Prompt-Dateien wie CLAUDE.md lassen sich die anfänglichen Verständniskosten für AI senken
  • Durch die Einbindung von Coding-Standards, Design-Patterns und Anforderungen werden Qualität und Effizienz der AI-Codegenerierung verbessert

9. Sicherheitskritische Funktionen identifizieren und kennzeichnen

  • Sicherheitssensible Funktionen wie Authentifizierung, Berechtigungen und Datenverarbeitung sollten explizit markiert werden
    • Beispiel: Kommentare wie //HIGH-RISK-UNREVIEWED und //HIGH-RISK-REVIEWED verwenden
  • Wenn AI solche Funktionen verändert, sollte der Review-Status automatisch geändert werden
  • Entwickler sollten stets prüfen, ob dieser Status korrekt ist

10. Codekomplexität minimieren

  • Schon eine unnötige Codezeile belegt Kontextfenster bei AI und erhöht die Kosten
  • Die Struktur sollte so einfach wie möglich bleiben, um das Verständnis für AI und Menschen gleichermaßen zu verbessern

11. Probleme durch Experimente und Prototypen erkunden

  • Die kostengünstige Eigenschaft der AI-Codegenerierung kann genutzt werden, um verschiedene Lösungsansätze zu erproben
  • Mit minimalen Spezifikationen mehrere Prototypen erstellen, um den besten Ansatz zu finden

12. Keine unkontrollierte großflächige Generierung

  • Komplexe Aufgaben sollten in kleine Einheiten zerlegt werden, damit AI sie schrittweise bearbeiten kann
    • Beispiel: Statt eines gesamten Projekts einzelne Funktionen oder Klassen generieren
  • Es muss geprüft werden, ob jede Komponente der Spezifikation entspricht, und
    wenn die Komplexität des Codes nicht mehr kontrollierbar ist, muss das Projekt auf den Ausgangszustand zurückgesetzt werden

Noch keine Kommentare.

Noch keine Kommentare.