Seit 2003 beschäftige ich mich mit dem Thema Qualitätssicherung und Testen. Im Laufe der Zeit habe ich mich vor allem auf drei Schwerpunkte konzentriert.
- Performanztests
Viele Projektmanager stimmen zu, dass Performanztests wichtig sind, damit die Kundenzufriedenheit nicht beeinträchtigt wird. Im Laufe des Projekts werden Performanztests häufig immer weiter nach hinten verschoben, da sich die Schnittstellen ja noch ändern werden und im Augenblick die Entwicklung im Fokus ist.
Häufig zeigt die Auswertung von Performanztests, dass bei parallelen Anfragen die Datenbank zu einem einschränkenden Faktor wird. Im Monitoring lassen sich z.B. Abfragen beobachten, die immer wieder ganze Tabellen lesen oder bei denen kein Index in den Tabellen vorgesehen wurde.
Wenn Performanztests regelmäßig und automatisiert durchgeführt werden, dann spricht man von „Continuous Performance Validation“. Auf diese Weise bekommt die Entwicklung ein schnelles Feedback, wie sich die letzten Änderungen auf die Performanz der Applikation auswirken. - Testautomatisierung
Jedes Release einer Software muss getestet werden. Die Anzahl der Funktionen und das Zeitfenster für die Testdurchführung bleibt eher konstant. Sollen die Tester den Schwerpunkt auf neue Funktionen oder Stabilität der alten Funktionen legen? Die meisten werden die neuen Funktionen vorziehen, da neuer Code in aller Regel fehleranfälliger ist.
Der Kunde wird vermutlich eher verärgert sein, wenn seine gewohnten Abläufe auf einmal nicht mehr fehlerfrei sind.
Der Test der bestehenden Funktionen, auch Regressionstest genannt, kann man mittels Testautomatisierung effizient durchführen. Dieses ist allerdings nur dann effizient, wenn der Testautomatisierung eine gute Architektur zu Grunde liegt und die Skripte leicht gewartet werden können.
Dann wird Testautomatisierung zu einer Erfolgsgeschichte und leistet einen wertvollen Beitrag zur Agilität in der Softwareentwicklung. - Testmanagement
Nicht selten erlebe ich, dass Testen beiläufig durch die Entwickler, die Fachabteilung oder durch Mitarbeiter aus dem Support erledigt wird. Dieses Vorgehen führt häufig dazu, dass Testen im Alltag vernachlässigt wird.
Wenn Testen als eigene Disziplin im Projekt oder im Unternehmen verstanden wird, dann kann Testen zu einem wichtigen Bestandteil der Qualitätssicherung werden. Das Testmanagement plant Aktivitäten, überwacht den Fortschritt und unterstützt Stakeholder bei Entscheidungen mithilfe von Kennzahlen.
Ein effektives Testmanagement orientiert sich an den Gegebenheiten im Unternehmen und ist gleichzeitig bestrebt, den Prozess der kontinuierlichen Verbesserung zu unterstützen.
Nehmen Sie mit mir Kontakt auf, damit wir besprechen können, wie ich Sie unterstützen kann.