Agilität beginnt im Kopf

Erstellt am 15 Mai 2012
von Schreibe einen Kommentar

In der Softwareentwicklung will heute praktisch jeder agil sein. Das klingt modern und dynamisch. Liest man die Werte, die hinter dieser Idee stecken (agiles Manifest), versteht man leicht, warum.

  • Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge
  • Funktionierende Software ist wichtiger als umfassende Dokumentation
  • Zusammenarbeit mit dem Kunden ist wichtiger als Vertragsverhandlung
  • Reagieren auf Veränderung ist wichtiger als das Befolgen eines Plans

Es liegt aber im Wesen des Menschen, Ideen (auch gute) falsch zu verstehen – manchmal auch absichtlich, um eigene Interessen zu verfolgen.

Mit Scrum mehr Meetings und Administration?

Erstellt am 1 Mai 2012
von Schreibe einen Kommentar

Befragt man Entwicklungsteams und andere Beteiligte im Unternehmen, was sich seit der Einführung von Scrum geändert hat, erhält man überraschend oft die Aussage: Wir haben jetzt noch mehr Meetings und mehr Aufwand für Administration. Das ist erstaunlich. Woher kommt dieser Eindruck? Sehen wir uns doch die Scrum Meetings (oder gemäß Scrum Guide die „Events“) einmal genauer an.

Agiles Spezifizieren: Just in Time für User Stories

Erstellt am 31 Januar 2012
von Schreibe einen Kommentar

Es ist mir schon fast unangenehm, das Wort agil nun auch in diesem Kontext zu verwenden. Jedoch halte ich es für notwendig, einen genaueren Blick darauf zu werfen, was bei der Spezifikation von Anforderungen in einem agilen Umfeld zu beachten ist. Zu oft sehe ich, dass nun statt umfangreichen Spezifikationen noch umfangreichere Mengen von umfangreichen User Stories entstehen.

Agiles Arbeiten bedeutet für alle Beteiligten – nicht nur für Requirements Engineers – an vielen Stellen ein Umdenken.

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.