Eine Einführung in Acceptance Test Driven Development
Funktionsübergreifende Scrum-Teams sind ein gewaltiger Schritt in Richtung Agilität für jedes
Unternehmen mit eigener Softwareentwicklung. ATDD (Acceptance Test Driven Development) hilft noch verläßlicher
regelmäßig gute Software zu liefern.
Ihr Trainer für dieses Seminar ist
Stephan Schwab.
Stephan hat über 30 Jahren Erfahrung in der Softwareentwicklung. Im Laufe von mehr als 5 Jahren hat er vielen
Teams in USA als Coach geholfen die Vorteile von ATDD für besseres Scrum für sich zu nutzen. Nun gibt es dieses
Angebot auch in Deutschland.
Seminarsprache ist Deutsch.
Ziel: Funktionsfähige Software nach jedem Sprint
Das primäre Ziel von Scrum ist zügig und regelmäßig funktionsfähige Software zu liefern. Entsprechend sagt der
offizielle Scrum-Guide:
Das Entwicklungs-Team besteht aus Fachleuten, deren Aufgabe die Erstellung eines potentiell auslieferbaren und
"fertigen" ("done") Produktinkrements zum Ende eines jeden Sprints ist.
Ziel: Immer den Status des Projektes kennen
Scrum ist bei fortschrittlich denkenden Unternehmen so beliebt, weil mit Scrum Klarheit über den Projektstatus
besteht. Der Scrum-Guide sagt dazu:
Scrum basiert auf der Theorie der empirischen Prozesssteuerung, oder des Empirismus. Empirismus basiert auf der
Grundannahme, dass Wissen aus Erfahrung gewonnen wird und dass Entscheidungen auf Grundlage
bekannter Fakten getroffen werden.
Ziel: Jederzeit eine gebrauchsfertige Version des Produktes
Der hohe Anspruch an das Scrum-Team wird auch durch die Erwartung jederzeit über das aktuelle Arbeitsergebnis
verfügen zu können bestätigt. Im Scrum-Guide findet sich dies als:
Die inkrementelle Lieferung “fertiger” Produkte stellt sicher, dass immer eine potentiell gebrauchsfertige und
nutzbare Version des Produktes zur Verfügung steht.
Ziel: Keine Mißverständnisse
Gebrauchsfähige Software ist nur dann sinnvoll, wenn sie das tut was der Auftraggeber erwartet. Der Scrum-Guide
nimmt den Product Owner dafür in die Pflicht:
Der Product Owner ist für die Maximierung des Wertes des Produkts und der Arbeit, die das Entwicklungs-Team
verrichtet, verantwortlich.
Praktische Übungen für Ihr eigenes Projekt
Bringen Sie "user stories" aus Ihrem eigenen Projekt mit und lernen Sie unter Anleitung zusammen mit den
anderen Teilnehmern daraus gute Akzeptanztests zu erstellen.
Sie nehmen direkt etwas Brauchbares für ihr eigenes Team mit - damit Sie Scrum-Ziele leichter erreichen und die
großen Vorteile von echter Agilität erhalten.
Klare Definition von "Fertig"
Akzeptanzkriterien werden in ATDD als ausführbare Spezifikation erstellt. Das erwünschte Verhalten der Software
wird von außen - aus Anwendersicht - beschrieben und hilft dem Team die innere "Mechanik" so zu erstellen, daß
diese sich verhält wie zuvor beschrieben.
Weil die Spezifikation ausführbar ist, kann automatisiert fortwährend überprüft werden ob man fertig ist. Da die
Spezifikation von jedem Teammitglied und dem Auftraggeber gleichermaßen gelesen und verstanden werden kann,
erreicht man schnell Übereinstimmung.
Mittels "outside-in" Tests vermeidet man nicht nur Defekte, sondern baut Selbstvertrauen im Team
auf. Der wahre Zustand der Arbeit wird sichtbar und es ist auch ein gutes Mittel gegen schweißnasse Hände vor
einer Produktvorführung.
Durch die Art wie die ausführbare Spezifikation - die Tests - erstellt werden wird die
funktionsübergreifende Zusammenarbeit im Team gefördert. So wie Scrum es dem Team ermöglicht die
Wertschöpfung im Unternehmen zu verstehen, hilft ATDD beim Erlangen technischer Kompetenz, die dann dem Team
ermöglicht einen direkteren Beitrag zur Wertschöpfung im Unternehmen zu leisten.
Ihre Stadt ist nicht dabei?
Am 6. Dezember 2012 fand dieses Seminar zum ersten Mal in Berlin statt. Sollte es derzeit nicht in Ihrer Nähe
angeboten werden - siehe dazu die Übersicht - so schreiben Sie bitte an sns@caimito.net. Gern biete ich es auch als private Veranstaltung an.
🎭 Folgen dieser Woche
Telenovelas zeigen, was wir in Kundengesprächen nicht sagen können. Das Drama ist gesteigert, aber die Muster sind real.