Anforderungsspezifikation beim Testen
Anforderungen abzustimmen und zu verfeinern ist ein ausführlicher und wichtiger Prozess, das wissen alle, die in diesem Bereich Erfahrung haben. Für uns ist es unser täglich Brot, denn die so mit unseren Kunden abgestimmten Anforderungen dienen uns nicht nur als Vertrags- und Kalkulationsgrundlage, sondern auch als die „Bibel“ der Entwicklung. Das Anforderungsdokument ist die rote Schnur, an der sich die gesamte Entwicklung orientiert. Was darin steht, wird umgesetzt, und so umgesetzt, wie es dort steht.
Typischerweise ergeben sich dabei Detailfragen, die wir mit einer verantwortlichen Person unserer Kunden abstimmen, oft ist dies die Projektleitung. Die Dauer der Umsetzungsphase ist natürlich abhängig von Umfang und Komplexität des Projekts, es sind mehrere Monate oder Jahre.
Es vergeht nach dem Abstimmen der Anforderungen also eine Weile, in der wir diese implementieren, bis wir eine erste Version eines testbaren Produkts an unsere Kunden liefern. In dieser Vorversion ist viel Funktionalität korrekt implementiert, manchmal müssen wir auch von uns gemachte Fehler beseitigen. Die größte Überraschung bietet sich uns allerdings, wenn die Testpersonen auf Kundenseite Punkte monieren, die
- entweder nicht Gegenstand der Anforderungen waren,
- oder in den Anforderungen anders beschrieben waren, als die Testperson dies nun für selbstverständlich hält.
Das kommt tatsächlich häufiger vor, als man annehmen könnte. Solche vermeintlichen „Fehler“ aufzuklären, ist für beide Seiten mühsam und dann wedelt der Schwanz mit dem Hund: die Hinweise der Testperson resultieren oft in veränderten Anforderungen, die größere oder kleinere Veränderungen in Software / Hardware / Dokumentation nach sich ziehen. Nachträgliche Änderungen sind teuer – und oft vermeidbar!
Die Moral?
Wenn Ihr Entwicklungsaufgaben vergeben möchtet, bezieht schon bei der Auftragsvergabe das ganze Team ein um die Anforderungen zu entwickeln: nicht nur die Projektleitung, sondern die alten Hasen, den Service, Vertrieb, die Testabteilung und alle anderen kompetenten Stellen in Eurem Unternehmen, die mit dem Produkt später in Berührung kommen. So gibt es keine Überraschungen bei den später gelieferten Features.