Testen im ALM

Erstellt am 28 Oktober 2014
von Schreibe einen Kommentar

Mit den steigenden Ansprüchen an Softwaresysteme hinsichtlich Funktionalität, Zuverlässigkeit und Sicherheit, steigt auch deren Komplexität. Um die Funktionsweise und eine hohe Qualität dieser Softwaresysteme sicherzustellen, ist es notwendig diese ausführlich zu testen. Das Testen nimmt damit einen nicht zu unterschätzenden Faktor im ALM ein.

In diesem Blog werden zwei bekannte Testverfahren betrachten, die in der Entwicklungsphase des ALM Prozesses zur Anwendung kommen können.

Testfälle spezifizieren – Eine triviale Aufgabe im Requirements Engineering? – Teil 3

Erstellt am 20 Mai 2014
von Schreibe einen Kommentar
This entry is part 3 of 3 in the series Testfälle spezifizieren

In Teil 2 der Serie „Testfälle spezifizieren“ haben wir beschrieben, wie Testfälle in einem Anforderungsmanagement-Tool optimal spezifiziert werden. Die spezifizierten Testfälle sind selbstverständlich wenig hilfreich, wenn diese nicht ausgeführt und ihre Ergebnisse nicht dokumentiert werden. Daher beschäftigt sich der dritte und letzte Teil dieser Serie damit, wie Testergebnisse in einem Anforderungsmanagement-Tool dokumentiert werden können.

Testfälle spezifizieren – Eine triviale Aufgabe im Requirements Engineering? – Teil 2

Erstellt am 8 April 2014
von 3 Kommentare
This entry is part 2 of 3 in the series Testfälle spezifizieren

Im ersten Teil der Reihe „Testfälle spezifizieren“ wurde beschrieben, warum das Spezifizieren von Testfällen keine triviale Aufgabe im Requirements Engineering darstellt. Teil 2 beschäftigt sich damit, wie Testfälle im Anforderungsmanagement-Tool „IBM Rational DOORS“ optimal spezifiziert und verwaltet werden können.

Testfälle spezifizieren – Eine triviale Aufgabe im Requirements Engineering? – Teil 1

Erstellt am 18 März 2014
von Schreibe einen Kommentar
This entry is part 1 of 3 in the series Testfälle spezifizieren

Während eines viermonatigen DXL-Implementierungsprojekts bei einem unserer Kunden wurde ein Requirements Engineering Framework verbessert und um Funktionalitäten erweitert. In diesem Rahmen hatte ich u.a. die Aufgabe Testfälle zu spezifizieren, welche die geforderten Eigenschaften der Software sicherstellen sollten. Doch das Spezifizieren von Testfällen ist keineswegs eine triviale Aufgabe.

Akzeptanzkriterien für User Stories definieren – aber nur wie?

Erstellt am 6 Dezember 2011
von 1 Komment

Haben Sie sich auch schon mal gefragt, ob es eine Möglichkeit gibt, Akzeptanzkriterien mit Hilfe eines systematischen Vorgehens zu definieren? Oder wollen Sie eine Basis für Ihre Akzeptanztests schaffen, um festzustellen, ob Ihr System oder Ihre entwickelte Software den Kundenerwartungen entspricht?

Akzeptanzkriterien als  Bindeglied zwischen User Stories und Testfällen 

Die Grundlage für diese Fragestellungen bilden Akzeptanzkriterien, die das Bindeglied zwischen User Stories und den Testfällen darstellen. Da in vielen Projekten die Frage nach einer systematischen Methodik zur Ableitung von Akzeptanzkriterien gestellt wird, soll an dieser Stelle eine Vorgehensweise vorgestellt werden, die auf den sogenannte W-Fragen basiert.

Im Gegensatz zur klassischen Entwicklung ist es im agilen Umfeld ausdrücklich erlaubt, die User Stories erst so spät wie möglich, also kurz vor der Realisierung, zu detaillieren. Eine User Story kann nach dem Muster von M. Cohn erstellt werden.

Die drei “C’s”

Sie sollte aus den sogenannten „3 C’ s“ bestehen. Die ersten beiden “C’s” stehen für “Card” und “Conversation”, das 3. “C” für “Confirmation”. Unter dem Begriff “Confirmation” wird die Definition von Akzeptanzkriterien verstanden, die in der Regel auf der Rückseite einer Karteikarte festgehalten werden. Akzeptanzkriterien leisten gemäß der „Definition of  Done“ einen Beitrag zur Beantwortung der Frage, ob eine User Story fertig ist.

Das Hinterfragen von Schlüsselwörtern

Eine Möglichkeit, Akzeptanzkriterien zu definieren, erfolgt über das Hinterfragen von Schlüsselwörtern. Diese müssen zunächst in der User Story identifiziert werden. Dann können wir nachfolgend prüfen, ob Fragestellungen – basierend auf den sogenannten W-Fragen (wer, wann, wie oft etc.) – mit einer sinnvollen Antwort versehen werden können.

Fragen, die in dem jeweiligen Kontext keine sinnvolle Antwort zulassen, werden ignoriert. Unter Schlüsselwörtern sind Vollverben, Adjektive und Substantive zu verstehen. Das Hinterfragen muss zu einer sinnvollen Antwort führen und eine User Story inhaltlich ergänzen bzw. konkretisieren.
Im Rahmen der Team-Kommunikation kann das Hinterfragen von Schlüsselwörtern dazu beitragen,  zwischen den Stakeholdern ein gemeinsames Verständnis für die anzustrebende Umsetzung zu erlangen. Die Antworten auf die Fragestellungen ermöglichen, konkrete Akzeptanzkriterien zu definieren. Zwischen den Antworten der Stakeholder und den Akzeptanzkriterien muss keine 1:1-Beziehung bestehen, sondern mehrere Antworten können zu einem Akzeptanzkriterium zusammengefasst werden oder eine Antwort zu mehreren Akzeptanzkriterien führen. Die formulierten Akzeptanzkriterien müssen abschließend abgestimmt werden und dienen als Basis für Akzeptanztestfälle.

Anhand der folgenden User Story demonstriere ich die Vorgehensweise:

Zunächst sind Schlüsselwörter zu identifizieren, die im weiteren Vorgehen zu Hinterfragen sind.

Die Schlüsselwörter “speichern” und “Profil” werden in einen vorbereiteten Fragenkatalog eingesetzt.

Die entstandenen Fragen werden im Team diskutiert und sollen die Kommunikation unterstützen und soll mögliche Lücken in der Anzahl der Akzeptanzkriterien schließen.

In nächsten Schritt werden die Antworten auf die Fragen in konkrete Akzeptanzkriterien zusammengefasst.

Die formulierten Akzeptanzkriterien müssen abschließend abgestimmt werden, um im letzten Schritt Testfälle zu erstellen, die dem bewährten Muster

  • Vorbedingung
  • auszuführende Testschritte
  • erwartetes Ergebnis
  • Nachbedingung
  • verwendete Testdaten

entsprechen.

 

Von Akzeptanzkriterien zum erfolgreichen Akzeptanztest

Fazit: Von User Stories abgeleitete Akzeptanzkriterien eignen sich hervorragend, um eine ausreichende Testbasis für den Akzeptanztest sicherzustellen. Bei einer  Vorgehensweise mit Hilfe von fünf Schritten steht die Definition von Akzeptanzkriterien im Mittelpunkt. Ziel soll es dabei sein, die Team-Kommunikation zu unterstützen und konkrete Details zu User Stories zu definieren, um die Basis für einen erfolgreichen Akzeptanztest zu legen. Zudem kann am Beispiel der Definition von Akzeptanzkriterien durch das Hinterfragen von Schlüsselwörtern demonstriert werden, wie eine klassische Methode ins Scrum-Framework eingebettet werden kann.

2

Möchten Sie mehr über Akzeptanzkriterien erfahren? Dann empfehle ich Ihnen, eines unserer beliebten Trainings, wie beispielsweise das zum  Certified Agile Requirements Specialist (CARS) oder zum Scrum Master.