Reifegrade der Leistungseffizienz

R 2.2.0

Allgemeine Beschreibung

Art und Umfang der Testaktivitäten, die im Zusammenhang mit einem bestimmten Baustein durchgeführt werden, sagen etwas über die "Reife" eines Projektvorgehens aus. Probieren Sie doch mal, sich anhand unseres Fragebogens selbst einzustufen! Wir definieren für jeden Baustein vier unterschiedliche Reifegrade und geben Ihnen Hinweise darauf, auf welcher "Stufe" Sie sich gerade befinden, bzw. geben Ihnen Hilfestellung durch welche konkreten Maßnahmen Sie eine höhere Stufe, einen höheren Reifegrad also, erreichen können.

Reifegrad "Initial"

Leistungsanforderungen an das System werden nicht dokumentiert und in der Testplanung nicht berücksichtigt. Eine strukturierte Durchführung von Leistungseffizienztests findet ebenfalls nicht statt. Bei auffällig langen Antwortzeitverhalten während der funktionalen Tests wird spontan auf derselben Testumgebung nach den Ursachen gesucht.

Kontrollpunkte

  • Leistungsanforderungen werden nicht für Tests dokumentiert

  • Leistungseffizienztests kommen nicht zum Einsatz

  • Spontane Prüfungen bei Auffälligkeiten in den Reaktionszeiten erfolgen auf der fachlichen Testumgebung

Verbesserungsvorschläge

Um den erforderlichen Reifegrad "Kontrolliert" zu erreichen, sollten die folgenden Kriterien erfüllt werden.

  • Analysieren Sie unterschiedliche Quellen (Spezifikationen, Verträge, Workshops etc.) bezüglich nicht-funktionaler Anforderungen

  • Definieren Sie Akzeptanzkriterien und Bestanden/Nicht-Bestanden Metriken, um Anforderungen testbar zu machen

  • Verwenden Sie produktionsnahe Testumgebungen für Leistungseffizienztests

  • Planen Sie Leistungseffizienztests im Projekt von Beginn an ergänzend zu fachlichen Tests ein

  • Erstellen Sie Ergebnisberichte zu den Leistungseffizienztests

Reifegrad "Kontrolliert"

Die Aktivitäten zum Einsatz von Leistungseffizienztests erfolgen geplant, ermöglichen Wiederholungen und die Ergebnisse werden mit Akzeptanzkriterien abgeglichen und dokumentiert.

Mehrwert

  • Negativen Überraschungen im Wirkbetrieb frühzeitig und systematisch vorbeugen (Systemabstürze, lange Reaktionszeiten usw.)

  • Prüfung auf notwendige Leistungsfähigkeit vor Freigabe in Produktion

Kontrollpunkte

  • Die nicht-funktionalen Anforderungen liegen in testbarer Form vor (messbar, nicht "System muss schnell reagieren" o.ä.)

  • Die verwendeten Testumgebungen sind produktionsnah eingerichtet

    • Vorproduktionsumgebungen mit ähnlichen oder identischen Komponenten und Architektur wie im Wirkbetrieb

    • Externe Schnittstellen können durch Mock-Objekte simuliert werden

    • Möglichst realistische Testdaten im Einsatz, ggf. anonymisiert oder pseudonymisiert

    • Größe zur Produktion kann abweichen und dann Vorhersagen ermöglichen

  • Die Tests der Leistungseffizienz werden früh im Projekt eingeplant

  • Es erfolgt eine Berichterstattung über die Ergebnisse der Testmaßnahmen

Verbesserungsvorschläge

  • Erheben Sie die Anforderungen sowohl für die Performanz- (z.B. Reaktionszeiten) als auch für die Ressourcennutzung (z.B. Speichernutzung, Volumen Datentransfer)

  • Erstellen Sie verschiedene Nutzungsprofile als Modelle der Systemnutzung in der Praxis

  • Führen Sie unterschiedliche Testarten, wie z.B. Performanz-, Last-, Stress-, Skalierbarkeits- und Ressourcennutzungstests durch

  • Erfassen Sie die Resultate und Abweichungen aus den Tests im Testmanagementwerkzeug

  • Nutzen Sie das Testmanagementwerkzeug für einen automatischen Export der erfassten Testergebnisse als Basis für die Testberichte

Reifegrad "Effizient"

Die Aktivitäten zum Einsatz von Leistungseffizienztests werden optimiert und in einem günstigen Kosten-Nutzen-Verhältnis umgesetzt.

Mehrwert

  • Konzentration auf die Werte der Nutzungsprofile schafft Voraussetzungen für realistisches, risikobasiertes und effizientes Testvorgehen

  • Es werden die unterschiedlichen Blickwinkel (Geschwindigkeit, Spitzenlasten, Ressourcenverbrauch etc.) der Systemleistung berücksichtigt

  • Testergebnisse liegen im Testmanagementwerkzeug vor und können für Berichte exportiert werden

Kontrollpunkte

  • Mit Nutzungsprofile werden Modelle eingesetzt, die das Verhalten der Nutzer in der Praxis simulieren. ("Herausfinden, was echte Menschen in der wirklichen Welt tun.")

  • Verschiedene Testarten zur nicht-funktionalen Leistungsprüfung kommen zum Einsatz

  • Werte aus der Analyse der Nutzungsprofile dienen als Grundlage für die Messungen während der Testdurchführung

  • Das Gerüst und die Basis für Testberichte kann aus dem Testmanagementwerkzeug automatisiert vorbereitet werden

Verbesserungsvorschläge

  • Behalten Sie auch nach der Inbetriebnahme das Nutzerverhalten im Auge (Monitoring) und reagieren auf Veränderungen

  • Setzen Sie kontinuierlich Verbesserungsvorschläge im Testvorgehen um

  • Planen Sie Schulungen zum Thema Leistungseffizienz ein

Reifegrad "Optimierend"

Die erreichte effiziente Stufe des Einsatzes von Leistungseffizienztests wird gepflegt, stetig verbessert und projektübergreifend geteilt.

Mehrwert

  • Kontinuierliche Kontrolle der Leistungsfähigkeit der Software, auch nach Inbetriebnahme neuer Releases

  • Einführen eines Monitorings, um den Betrieb und dessen Überwachung zu unterstützen

  • Weiterbildungen und stetige Verbesserung

Kontrollpunkte

  • Durchführung von Reviews und Retrospektiven zum Testvorgehen

  • Risikobewertung des Vorgehens

  • Kontinuierliche Weiterbildung (lernende Organisation)

Quellen

  • TPI NEXT - Geschäftsbasierte Verbesserung des Testprozesses; van Ewijk, Linker, van Oosterwijk, Visser, de Vrie, 1. Auflage 2011