Sichere Web-Apps

Zehn Tipps für den Code Review

15.02.2013
Von Dr. Bruce Sams

Code Review - Tipp 1 bis 5

1. Gute Behandlung von False Positives

False Positives sind Befunde, denen keine tatsächlichen Schwachstellen im Quelltext entsprechen. Egal was die Hersteller behaupten, alle Tools produzieren solche Falschmeldungen, die zu einer erheblichen Last für die Entwickler werden können. Programmierer, die mit vielen False-Positive-Meldungen konfrontiert werden, kommen kaum mehr zum Arbeiten, da sie mit dem vergeblichen Bemühen beschäftigt sind, nichtexistente Fehler zu korrigieren.

2. Passende Integration

Die gängigen Tools lassen sich gut in verbreitete Entwicklungsumgebungen (IDEs) integrieren. Benutzt man Eclipse oder Visual Studio, gibt es keine Probleme mit der nahtlosen Anbindung. Bei weniger verbreiteten IDEs wie Netbeans sind die Möglichkeiten der Tool-Integration allerdings schon beschränkter. Ähnliches gilt für Code-Repositories wie Subversion und Clear Case.

3. Tools können den Projektlauf beeinflussen

In Features und Prozessen unterscheiden sich Tools gewaltig. Wählen Sie also sorgfältig aus, denn die meisten Tools folgen einer bestimmten Arbeitsweise oder erzwingen sie sogar. Das beeinflusst stark, wie man Software schreibt, testet und korrigiert. Obwohl alle Tools in der Regel den Phasen Erkennung, Analyse und Korrektur folgen, gibt es Unterschiede in der Funktionsweise dieser Phasen.

4. Überlasten Sie die Entwickler nicht

Zu viele Informationen sind fast genauso schlecht wie zu wenige. Wenn ein Tool einen Entwickler mit gegenstandslosen Informationen überschüttet - auch wenn diese im Einzelnen interessant sein mögen -, leidet darunter die Produktivität, und das hat einen negativen Einfluss auf das Entwicklungsprojekt. Reduzieren Sie unnötige Nebengeräusche: Die erfolgreiche Integration eines Tools in den Softwareentwicklungs-Zyklus erfordert die richtige Balance zwischen Informationen aus dem Tool und Freiräumen für Ihr Entwicklungsteam, damit es seine Arbeit machen und gleichzeitig sicheren Code schreiben kann.

5. Mit einer langen Einarbeitungsphase rechnen

Um Code Reviews sinnvoll und effektiv in die Entwicklung zu integrieren, braucht man Erfahrung, die Sie am Anfang nicht haben. Deshalb sollte für diese Arbeit der Hersteller oder ein kompetenter Partner herangezogen werden. Ob mit oder ohne externe Unterstützung, werden Sie wahrscheinlich viel Zeit brauchen, bis der Prozess und die Konfiguration des Tools sitzen und die Entwickler alles akzeptiert haben. Die Aufwände für die Konfiguration eines Tools und die Veränderungen im Projektlauf sollten nicht unterschätzt werden.