Hauptthema meiner täglichen Arbeit ist die Performance von IT-Systemen, insbesondere von Java-Anwendungen. Performance-Tests und -Optimierungen haben normalerweise den Zweck, die Einhaltung der nicht-funktionalen Anforderungen an eine Anwendung zu sichern. Die tagtägliche Beschäftigung mit diesen Dingen hat auch das Potential, die Sichtweise des Testers auf ganz andere Bereiche zu prägen, wodurch man ggf. selbst so unangenehmen Angelegenheiten wie einem Krankenhausaufenthalt interessante Aspekte abgewinnen kann. In dieser Kolumne möchte ich von einigen dieser seltsamen gedanklichen Assoziationen berichten – vielleicht können sie sogar dabei helfen, zu verstehen, worum es beim Testen nicht-funktionaler Anforderungen geht und warum es wichtig ist.
Das zu testende System (SUT – System under Test) in diesem speziellen Fall ist mir persönlich besonders wichtig: Es handelt sich um meine optischen Rezeptoren – meine Augen. Ihre Funktion ist jedem klar. Mit den technischen Vokabeln von Wikipedia: das Sammeln und Fokussieren von Licht zur Erzeugung von Bildern, deren Transformation in elektrische Signale sowie die Weiterleitung an das Gehirn. Die funktionalen Fähigkeiten meiner Augen sind ein wenig beeinträchtigt, weswegen ich eine Brille trage. Diese hilft mir beim Fokussieren des Lichts und verbessert somit die Funktionalität meiner Augen.
Damit meine Augen auch langfristig ihre Aufgaben gut erfüllen können, ist eine nicht-funktionale Anforderung von höchster Wichtigkeit: Der Augendruck. Falls der Druck der Flüssigkeit im Auge dauerhaft zu hoch ist, werden die Nerven geschädigt, was zu einem Verlust an Sehfähigkeit führt – ggf. sogar bis zur vollständigen Blindheit. Ganz grob gesprochen sollte der Augendruck weniger als 20 mmHg betragen. Da mein Augendruck schon länger relativ hoch war, nahm ich entsprechende Augentropfen und ließ meinen Augendruck vier Mal jährlich kontrollieren. Da meinem Augenarzt mein Augendruck jedoch immer noch zu hoch erschien, schickte er mich zur Überprüfung und Einstellung meines Augendrucks in eine Augenklinik. So wurden meine Augen für vier Tage zu einem wahren SUT.
Nicht-funktionale Anforderungen sind kein Selbstzweck. Ohne die eigentliche Basisfunktionalität sind alle nicht-funktionalen Eigenschaften wertlos. Deshalb war die erste Aufgabe nach meiner Ankunft im Testlabor – der Augenklinik – die Überprüfung der Funktionalität meiner Augen. Dazu wurden zwei Tests durchgeführt: Erstens ein Sehschärfetest, in welchem ich immer kleinere Buchstaben lesen sollte, zweitens ein Gesichtsfeldtest, um evtl. Einschränkungen des Gesichtsfeldes zu erkennen. Desweiteren wurden meine Sehnerven untersucht. Erst nachdem auf diese Weise der aktuelle Stand der Funktionalität des SUT festgestellt wurde, begann die Untersuchung der nicht-funktionalen Eigenschaften des SUT.
In einem ersten Schritt wurde die Korrektheit der Augendruck-Messungen überprüft. Wie ich bereits in meinem letzten Blog „Zahlengläubigkeit“ geschrieben habe, ist es sehr einfach, sich mit fehlerhaften Zahlen selbst zu betrügen – mit eventuell schwerwiegenden Konsequenzen. Insbesondere wenn man bereits mögliche Ursachen für Messfehler kennt, wäre es unverantwortlich, ihr Vorliegen nicht zu überprüfen. So weiß man in Sachen Augendruck, dass die Hornhautdicke die Messergebnisse beeinflussen kann. Folglich wurde die Dicke meiner Hornhaut durch Messungen ermittelt, wobei sie sich als sehr groß herausstellte, so dass ein entsprechend großer Korrekturwert von den Ergebnissen meiner Augendruck-Messungen abgezogen werden muss. Ohne die Überprüfung meiner Hornhautdicke hätte man aus den Messwerten meines Augendrucks wahrscheinlich die falschen Schlüsse gezogen.
Allerdings haben die Tester – die Ärzte – beim Test der Hornhautdicke das SUT beschädigt und so dessen Basisfunktionalität erheblich beeinträchtigt – die Ärzte bezeichneten es lediglich als Irritation. Da es sich beim SUT um meine Augen handelte war ich in der Tat nicht nur irritiert, sondern auch ziemlich wütend. Glücklicherweise hat sich die Irritation nach einem Tag wieder gelegt und meine Augen funktionierten wieder normal. Wegen solcher Gefahren werden in der IT wann immer möglich keine Tests auf produktiven Systemen durchgeführt, sondern auf dedizierten Test-Systemen. Demoliert der Tester dann das Test-System, kann wenigstens die Produktion weiterlaufen.
Nach all diesen vorausgehenden Tests und Messungen begann endlich der Standard-Test-Zyklus, d.h. für drei Tage wurde fünf Mal täglich mein Augendruck gemessen. Durch diese wiederholten Messungen erhält man neben verlässlicheren Zahlen auch ein Profil für die Veränderung des Augendrucks im Tagesverlauf. Denn wie jeder Performance-Tester weiß, ist die Last auf einem typischen SUT stark von der Tageszeit abhängig – um 11 Uhr vormittags sind einfach mehr Nutzer im System als um 6 Uhr abends.
Da die Ergebnisse meiner Augendruck-Messungen ermutigend waren – nach Abzug des Korrekturwertes lagen sie alle im grünen Bereich – wurde beschlossen, das SUT einem speziellen Stress-Test zu unterziehen. Bei einem Stress-Test untersucht man das Verhalten des SUT unter extremen Bedingungen, in der IT z.B. eine besonders große Zahl an gleichzeitigen Benutzern oder Ähnliches. Im konkreten Fall meiner Augen wurden durch Augentropfen die Pupillen geweitet, da hierdurch evtl. der Abfluss der Flüssigkeit im Auge blockiert wird, was ein umgehendes Ansteigen des Augendrucks provozieren würde. Glücklicherweise blieb mein Augendruck aber selbst unter diesen erschwerten Umständen stabil.
Nach vier Tagen im Testlabor lautete daher das erleichternde Ergebnis der Testserie, dass von der nicht-funktionalen Eigenschaft “Augendruck“ keine akute Gefahr für meine Augen ausgeht. Damit das so bleibt, muss ich aber auch in Zukunft entsprechende Augentropfen nehmen und regelmäßige Regressions-Tests meines Augendrucks bei meinem Augenarzt vor Ort durchführen lassen. Was ohnehin für jeden verantwortungsbewussten System- oder Anwendungsadministrator zu empfehlen ist.
Weitere Beiträge
von Raymond Georg Snatzke
Dein Job bei codecentric?
Jobs
Agile Developer und Consultant (w/d/m)
Alle Standorte
Weitere Artikel in diesem Themenbereich
Entdecke spannende weiterführende Themen und lass dich von der codecentric Welt inspirieren.
Gemeinsam bessere Projekte umsetzen.
Wir helfen deinem Unternehmen.
Du stehst vor einer großen IT-Herausforderung? Wir sorgen für eine maßgeschneiderte Unterstützung. Informiere dich jetzt.
Hilf uns, noch besser zu werden.
Wir sind immer auf der Suche nach neuen Talenten. Auch für dich ist die passende Stelle dabei.
Blog-Autor*in
Raymond Georg Snatzke
Senior IT Consultant
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.