Wann und was muss ich testen?

0 Punkte
1,247 Aufrufe
Um den Qualitätsanspruch hoch zu halten, werden in fast jeder Phase eines Projektes Tests benötigt. Wann muss ich was testen? Jedes Update/Veränderung kann gravierende Auswirkungen haben, daher sollten regelmäßige Test laufen. Welche Werkzeuge können hier hilfreich sein?
Gefragt 27, Feb 2014 in Nutzungsphase von bulb82
@Torald: Diese Frage ist in dieser Form sehr breit ausgerichtet (was, wann, womit). Damit eine mögliche Antwort den Rahmen nicht sprengt, wäre es gut, wenn Du diese Frage konkretisieren bzw. teilen könntest.

2 Antworten

0 Punkte

Die Frage ist tatsächlich sehr breit ausgerichtet. Man kann Sie allerdings auch in dieser allgemeinen Form beantworten. Prinzipiell sollte Sie Tests mit einem konkreten Ziel durchführen. Im Normalfall geht es darum ein Risiko zu minimieren, reduzieren ode gar vollständig zu eliminieren.

Ein Risiko ist dabei ein Ereignis,

  • das mit einer bestimmten Wahrscheinlichkeit eintritt
  • und einen potentiellen Schadwirkung
  • in einer potentiellen Schadenshöhe

entwickelt.

Sie können also zum Beispiel davon ausgehen, dass Sie Sich morgens mit 4%iger Wahrscheinlichkeit an einem zu heißen Kaffee die Hand verbrühen könnten. Mit einem Thermometer könnten Sie als Test die Temperatur des Kaffees so lange testen, bis Sie in einem sicheren Bereich angekommen sind (der Kaffee schmeckt dann allerdings nur noch halb so gut).

Auch im Rahmen von epidemiologischen Studien haben Sie eine Reihe von möglichen Risiken. Es kann sinnvoll sein, sich bereits zu Beginn in einem interdisziplinären Team zusammenzusetzen um mögliche Risiken zu identifizieren. Diese Treffen können Sie auch im Projektverlauf aufrecht erhalten, um veränderte oder neue Risiken zu erkennen. Die Risiken können dabei vielfältigster Natur sein. Hier einige Beispiele für mögliche Probleme:

  • Fragebogen wird von den Probanden schlecht ausgefüllt.
  • Zustimmungsrate der Patienten ist zu gering.
  • Datenerfassung mit eCRFs ist nicht einsatzfähig.
  • Datenerfassung speichert Daten nicht korrekt.
  • Daten sind durch Hardware-Fehler nicht mehr verfügbar.

Für viele dieser Problem kann die Wahrscheinlichkeit des Eintretens durch Tests reduziert werden.

Die Frage nach dem 'was' ist vermutlich auch eine Frage nach dem 'wie viel'. Hier ist es notwendig auf Basis der Schadwirkung und der Eintrittswahrscheinlichkeit in Verbindung mit den verfügbaren technischen und personellen Ressourcen ein Optimum zu erreichen. Leider lässt sich dazu keine allgemeingültige Empfehlung abgeben.

Die Frage nach dem 'wann' im Grunde genommen genauso zu beantworten. Versuchen Sie ein optimales Verhältnis von Aufwand und Nutzen zu erreichen.

Wenn Sie (gerade im Bereich von Software) die Möglichkeit haben Tests automatisiert durchzuführen, können Sie zu relativ geringen Kosten die Ausführunghäufigkeit erhöhen. Dabei dürfen Sie allerdings nicht den initialen Aufwand für die Erstellung der Automatisierung vergessen. Gerade in einem frühen Entwicklungsstadium kann bei Software die Oberfläche noch so stark in der Veränderung sein, dass hier der Wartungsaufwand von automatisierten Tests nicht zu rechtfertigen ist. Allerdings sollten Sie dann darauf achten, dass Sie nicht verpassen auf den Zug aufzuspringen. Wenn Sie zu spät mit der Automatisierung einsteigen, kann es auch passieren, dass Sie Ressourcen, die Sie für Tests hätten verwenden können, jetzt in die Fehlerbehebung stecken müssen und aus dem Teufelskreis nur noch schwer ausbrechen können.

In vielen Fällen bieten sich abgestufte Testumfänge an, die in unterschiedlichen Intervallen durchgeführt werden. Also zum Beispiel geringe Umfänge jeden Tag oder noch häufiger, mittlere Umfänge einmal pro Woche, vollständiges Testpaket vor kritischen Punkten (z.B. Software-Release, Serverwechsel, Studienstart)

Zusammengefasst:

Wann: Fangen Sie so früh wie möglich an. Machen Sie es regelmäßig. Behalten Sie Veränderungen im Auge um ggf. die Tests anzupassen. Konzentrieren Sie sich auf Risiken.

Was: Testen Sie, was Schaden verursachen kann. Konzentrieren Sie sich auf große Schadenshöhen oder sehr wahrscheinliche Schäden.

Beantwortet 5, Mär 2014 von Christian Schäfer
Bearbeitet 6, Mär 2014 von Christian Schäfer
0 Punkte

Die Anschauungen darüber unterscheiden sich innerhalb der praktizierten Vorgehensmodellen (klassisch bis agil). Teststrategien bewegen sich dabei in den Spektren von test-first bis test-last, von manuell bis automatisiert. Für eine detaillierte Beschreibung der Verfahren sei auf das Software Engineering verwiesen. Eine projektspezifische Wahl von Testmethoden und -umfang richtet sich nach den funktionalen und nicht-funktionalen Anforderungen an ein System unter Berücksichtigung weiterer Ziele.

Zielsetzungen im Studienkontext können etwa sein:

  • Gewährleistung von Schutz, Vollständigkeit, Validität von Datensätzen und
  • Erhalt der Änder- bzw. Erweiterbarkeit von Software.

Für den Einsatz von Software im medizinischen Umfeld die als Medizinprodukt eingestuft wird (d.h. den reinen Dokumentationszweck überschreitet und direkte Patientenrückwirkung hat) richtet sich der Testumfang weiterhin nach der vorherigen Risikobewertung.

Tests für das klinische Umfeld können demnach zum Ziel haben Nachweise zu erbringen über

  • Zuverlässigkeit von Alarmierungsfunktionen oder
  • Korrektheit von Anzeigen und Score-Berechnungen.
Beantwortet 13, Mai 2014 von Jens Piegsa

Institut für Community Medicine · Universitätsmedizin Greifswald

...