Dein Universum skizzieren

Stell dir vor du wirst mit deinem Raumschiff gebeten in den Orbit aufzubrechen, um in einem bestimmten Teil des Universums auf einem Planeten nach dem Rechten zu schauen? Was ist erforderlich, um diese Reise zu starten? Es gilt zu klären was alles mitgenommen werden muss? Es gilt möglichst viel über das Zielgebiet herazszufinden.

Ganz ähnlich startet das Testmanagement zunächst einmal die Analyse der Testobjekte um die dazu erstellte Spezifikation der ihm gestellte Aufgabe erfüllt. Der erste Schritt dahin besteht darin die technischen Eigenschaften, Funktionen des Systems, Schnittstellen und die zu erfüllenden Anforderungen in Form einer Spezifikation möglichst vollständig zu beschreiben, um eine effektive Bewertung zu ermöglichen.

Wozu ist dieser Teil wichtig?

Ziel des ersten Schrittes ist in einem spezifikationsorientiertem Verfahren möglichst viel über das Testobjekt herauszufinden, sodass wir in den nächsten Schritten “gegen” diese Spezifikation testen können, ob das Produkt seine vorgesehene Aufgabe erfüllt.  Sollten an einem System “nur” Änderungen oder Ergänzungen vorgenommen werden, so ergänzen diese Änderungsvorgaben die vorhandene Spezifikation. Liegt dies bislang nicht vor, so ist es sinnvoll das Testobjekt zumindest grob zu skizzieren oder zu visualisieren.

 

Wie gehts du vor:

Qualitätskriterien von Testbjekten (Quelle Johner Institut)

Neben dem Studium der Anforderungsdokumentation gilt es in geeigneten Interviews und Audits mit Fachexperten wie Fachbereichen, Businessanalysten und Auftraggebern  die entsprechenden Testobjekte zu identifizieren, wobei ein Testobjekt ein Element oder eine Kombination von Elementen darstellt. Ein Testobjekt wird aber neben Funktionalität auch charakterisiert durch Qualitätskriterien wie  Zuverlässigkeit, Effizienz oder Funktionalität, gelegentlich auch Testgegenstand oder nichtfunktionale Anforderungen genannt. Die Testobjekte können aus verschiedenen Arten von Komponenten bestehen, wie z.B. Software, Hardware, Datenbanken, Netzwerke und Systeme. Testobjekte sind also die zu testenden Elemente, während der Testgegenstand die zu erreichenden Ergebnisse oder Ziele des Tests beinhaltet.

Funktionale aber auch nichtfunktionale Merkmale, die ein Testobjekt beschreiben:

1. Funktionen: Funktionen sind ein wesentlicher Bestandteil eines Testobjekts, da sie die Aktivität des Testobjekts darstellen. Hier werden auch Geschäftsregeln und Prozesse abgebildet.
2
. Verhalten: Verhalten beschreibt den Weg, auf dem ein Testobjekt eine Funktion ausführt. Z.B. wird hier die Benutzeroberfläche (Oberflächen, Menüs, Eingaben usw.) oder die Speicherung eines Daten-Objektes beschrieben
3. Eigenschaften: Eigenschaften beschreiben die Art und Weise, wie sich ein Testobjekt verhält, z.B. die Reaktion auf bestimmte Eingaben. Hier können beispielsweise Verfahren oder Geschäftsvorgänge abgebildet werden

4. Qualität: Beschreibung des nichtfunktionalen Verhaltens bzgl. Zuverlässigkeit, Genauigkeit und Effizienz eines Testobjekts. Neben Last- und Performanceanfoderungen sollten hier auch Datenschutz- und Sicherheitsrichtlinien abgebildet sein.

5. Kompatibilität: Kompatibilität beschreibt, wie gut ein Testobjekt mit anderen Testobjekten und Systemen zusammenarbeitet. Z.B. sollten hier Druckvorgaben oder andere Schnittstellenbeschreibungen dargestellt sein.

 

Worauf du zudem achten solltest

Nicht selten wird bei der Spezifikation von Software ausschließlich Wert auf die funktionalen Beschreibungen gelegt. Zwingend wichtig sind jedoch auch Anforderungen an Nutzer- oder Lastverhalten, sogenannte nichtfunktionale Anforderungen, ohne die der Betrieb moderner Plattformen nur wenig Sinn ergeben. Zudem gibt es allgemeine oder branchenspezifische Regelungen wie die DSGVO oder entsprechende Regulatorik, deren Wichtigkeit in den Produktbeschreibungen mitunter nicht so eine hohe Bedeutung gegeben wird. 

Datenkategorien sind Gruppen von Daten, die gemeinsame Merkmale haben. Diese können teilweise strukturiert sein, wie z. B. Zahlen, Text, Bilder usw., oder unstrukturiert sein, wie z. B. Videos, AudioDateien, Gesprächsprotokolle usw. Beispiele für Datenkategorien sind personenbezogene Daten, Finanzdaten, medizinische Daten, Wetterdaten, Geodaten und so weiter.
 

Wozu:

Daten und Datenkategorien helfen ein Verständnis für die Anwendung zu gewinnen. Suche nach Datenflüssen in deiner Software! Wer erfaßt Daten, ändert sie, gibt sie weiter und sorgt für das Löschen. Die verscheidenen Datenkategorien helfen dabei erste Entscheidungen bzgl. umzusetzender Testfälle zu treffen.

Ein Verfahren ist eine Reihe von Schritten, die zu einem bestimmten Zweck durchgeführt werden, z.B. zur Erfüllung eines bestimmten Geschäftsvorfall oder der Speicherung von Daten. Es ist ein strukturiertes Herangehen, das die Erfüllung eines bestimmten Zieles durch eine Reihe von Schritten ermöglicht.

Ein Verfahren kann z.B. folgenden Angaben beinhalten:

  • Beschreibung und Zweckbestimmungen der Datenverarbeitung oder -nutzung
  • Prozessschritte
  • Beschreibung der betroffenen Personengruppen und der diesbezüglichen Daten oder Datenkategorien
  • Empfänger oder Systeme, denen die Daten mitgeteilt werden können
  • Liste der zugriffsberechtigten Personen
  • Dokumente und Regelungen

Wozu:

Die identifizierten Testobjekte, Daten und Verfahren bilden die Basis der Spezifikation eines Softwaresystem und beschreiben sollten nahezu vollständig den zu prüfenden Funktionsumfang beschreiben.

Zusammenfassung

Die  Sternenmethode ist ein pragmatisches Vorgehen für den Test und die Testorganisation eines Softwaresystems. Basis eines jeden Tests ist die fachlichen Spezifikation, die idealer Weise in Form von Testobjekten und deren Verfahren beschrieben sind. Somit bildet jedes Testobjekt mit der Menge seiner Verfahren eine Art Funktion f(x) die sogar im mathematischen Sinne verifzierbar wäre.