Dienstag, 26. Juni 2012

Fehlermetriken

Fehlermetriken sollen im Software-Entwicklungsprozess helfen, den Testprozess und damit auch das Projekt effizient zu steuern. Es gibt viele, auch komplexe Metriken, die in der Praxis Verwendung finden.
Doch was ist für eine Metrik wirklich wichtig? Wann ist es sinnvoll darüber zu steuern?

Aus meiner Sicht sollte die Metrik folgendes wiederspiegeln:
  • Die Entwicklung der Fehler über einen Zeitraum. Eine isolierte Betrachtung "Wie sieht es jetzt gerade aus?" bringt nichts, vor allem bezüglich der Schätzung wieviel Aufwand noch geleistet werden muss.
  • In einem Prozess mit Weekly Build betrachte ich...
    • wie viele Fehler sind in der letzten Woche dazugekommen
    • wie viele Fehler wurden in der letzten Woche ausgebaut
    • wie Fehler sind insgesamt noch offen
  • Bei einem Daily Build Prozess kann man die Metrik auch auf eine tagesweise Betrachtung anpassen. Die wochenweise Betrachtung kann aber auch beibehalten werden (die ich auch bevorzuge).
  • Durch die Betrachtung der Erledigung findet auch der Fehlerstatus Berücksichtigung. Es gilt im Projekt zu klären, ob man nur den Zustand offen/erledigt betrachtet, oder an dieser Stelle weiter verfeinert (z. B. Fehler gefixed, aber noch nicht getestet).
  • Betrachtung der schweren Fehler. Bei einer Einteilung z. B. in die Klassen A-C sollten die leichten Fehler keine Berücksichtigung finden, da diese den Blick auf das Wesentliche verstellen. Also nimmt man die Kategorie A und B in die Metrik auf.
Folgendes Aussehen könnte die Metrik "Fehlerbehebung" haben:
Diese Metrik enthält alle Merkmale und ist recht übersichtlich. Auch für das Management bietet diese entsprechende Transparenz.