2 Agile und klassische Vorgehensmodelle



Ähnliche Dokumente
Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" bei AGFA HealthCare

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

Agile Softwareentwicklung mit Scrum

Sollten folgende drei Fragen durch das Team positiv beantwortet werden, sind wichtige SCRUM-Elemente in Ihrem Team erfolgreich installiert.

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität


Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Agile Softwareentwicklung

Scrum. Agile Software Entwicklung mit. Agile Software Entwicklung mit. Scrum. Raffael Schweitzer 18. November 2003

Mind Mapping am PC. für Präsentationen, Vorträge, Selbstmanagement. von Isolde Kommer, Helmut Reinke. 1. Auflage. Hanser München 1999

Projektmanagement. Einleitung. Beginn. Was ist Projektmanagement? In dieser Dokumentation erfahren Sie Folgendes:

Gelebtes Scrum. Weg vom Management hin zur Führung

Andrea Grass & Dr. Marcus Winteroll oose Innovative Informatik GmbH. Geschäftsprozessmanagement und Agilität geht das zusammen?

Professionelle Seminare im Bereich MS-Office

Agile Programmierung - Theorie II SCRUM

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

Was meinen die Leute eigentlich mit: Grexit?

Kreativ visualisieren

Scrum. Übung 3. Grundlagen des Software Engineerings. Asim Abdulkhaleq 20 November 2014

Agile Software Development

Zeichen bei Zahlen entschlüsseln

Die Post hat eine Umfrage gemacht

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Der Business Analyst in der Rolle des agilen Product Owners

Globale Scrum Retrospektive

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

Hilfe, mein SCRUM-Team ist nicht agil!

Einführung in Scrum. Agiles Projektmanagement. Martin Krüger Entwicklung von Workflowanwendungen

Task: Nmap Skripte ausführen

Die Lernumgebung des Projekts Informationskompetenz

Konzentration auf das. Wesentliche.

Nicht über uns ohne uns

Studieren- Erklärungen und Tipps

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken

Zukunftsorientierte Bürgerportale agil entwickeln

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Anleitung über den Umgang mit Schildern

Agile Management Einführung in agiles Management

Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind.

07. November, Zürich-Oerlikon

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Projektmanagement in der Spieleentwicklung

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft.

impact ordering Info Produktkonfigurator

Professionelle Seminare im Bereich MS-Office

1. Weniger Steuern zahlen

Die Invaliden-Versicherung ändert sich

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

SCRUM. Software Development Process

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Was ich als Bürgermeister für Lübbecke tun möchte

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches

Was Sie über SCRUM wissen sollten...

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

DER SELBST-CHECK FÜR IHR PROJEKT

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

teischl.com Software Design & Services e.u. office@teischl.com

Wir nehmen Aufgaben und Ideen wahr. Wir suchen Lösungen zu Ideen.

Was ist clevere Altersvorsorge?

Qualifikationsbereich: Application Engineering Zeit:

Projekt- Management. Landesverband der Mütterzentren NRW. oder warum Horst bei uns Helga heißt

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Sabotage in Scrum. dem Prozess erfolglos ins Knie schiessen. Andreas Leidig (andrena objects ag) Vortrag bei den XP Days 2007

Einkaufsführer Hausverwaltung Was Sie bei Suche und Auswahl Ihres passenden Verwalters beachten sollten

Einkaufen im Internet. Lektion 5 in Themen neu 3, nach Übung 10. Benutzen Sie die Homepage von:

Kulturelle Evolution 12

Fragebogen: Abschlussbefragung

Was ist Sozial-Raum-Orientierung?

Klicken Sie auf Extras / Serienbriefe mit Word. Im Fenster Serienbriefe können Sie nun auswählen, an wen Sie den Serienbrief schicken möchten.

GEVITAS Farben-Reaktionstest

StuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.

Ablauf Vorstellungsgespräch

Fragebogen zur Qualität unserer Teamarbeit

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

ARCO Software - Anleitung zur Umstellung der MWSt

Guide DynDNS und Portforwarding

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Agile Enterprise Development. Sind Sie bereit für den nächsten Schritt?

firstbird wird gefördert von Microsoft Ventures firstbird is part of Microsoft Ventures Accelerator Berlin

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. ist einer davon.

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Agile Entwicklung nach Scrum

DAUERHAFTE ÄNDERUNG VON SCHRIFTART, SCHRIFTGRÖßE

oose. Was (noch) klassische Projekte von Scrum & Co lernen können eine empirische Studie

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Welchen Weg nimmt Ihr Vermögen. Unsere Leistung zu Ihrer Privaten Vermögensplanung. Wir machen aus Zahlen Werte

Stuttgart, Scrum im Wasserfall... oder wie kann Agilität dem Kunden schmackhaft gemacht werden?

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Die Gesellschaftsformen

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Leitbild. für Jedermensch in leicht verständlicher Sprache

Projektmanagement im Wandel

Das Leitbild vom Verein WIR

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Checkliste. Erfolgreich Delegieren

Zwischenablage (Bilder, Texte,...)

Einen Wiederherstellungspunktes erstellen & Rechner mit Hilfe eines Wiederherstellungspunktes zu einem früheren Zeitpunkt wieder herstellen

Transkript:

9 2 Agile und klassische Vorgehensmodelle Dieses Kapitel gibt eine knappe Charakteristik des agilen Projektmanagementframeworks Scrum und der inzwischen auch populären, aus dem Lean Product Development stammenden und zu Scrum einige Ähnlichkeiten aufweisenden Projektmanagementmethode Kanban. Beiden gegenübergestellt wird das Vorgehen in Projekten, die sich an klassischen Vorgehensmodellen orientieren. Leser mit Managementaufgaben, die ihr Projekt oder ihre Unternehmenseinheit auf eine agile Vorgehensweise umstellen wollen, erhalten hier einen Überblick und Eindruck von den organisatorischen Veränderungen, die mit der Einführung agiler Ansätze im Unternehmen, der betroffenen Abteilung und den betroffenen Teams einhergehen. Leser, die Scrum und Kanban schon kennen, können dieses Kapitel überspringen. 2.1 Scrum Scrum ist ein agiles 2 Projektmanagementframework, das von Ken Schwaber erstmalig 1999 mit seinem Artikel»Scrum: A Pattern Language for Hyperproductive Software Development«[Beedle et al. 99] eingeführt wurde und das ab 2002 mit seinem Buch»Agile Software Development with Scrum«[Schwaber/Beedle 02] breiter bekannt wurde. Scrum regelt nicht, welche Softwareentwicklungstechniken (wie beispielsweise Refactoring) die Entwickler einzusetzen haben, um Software zu schreiben. Dies überlässt Scrum der Selbstorganisation des Teams, das dann meistens geeignete Praktiken, die aus dem Extreme Programming 3 (XP) stammen, auswählt und im Zuge des Umstiegs auf 2. Mit»agil«werden»leichtgewichtige«Vorgehensweisen zur Softwareentwicklung bezeichnet, in Abgrenzung zu klassischen als»schwergewichtig«angesehenen Prozessmodellen. Der Begriff wurde 2001 bei einer Konferenz in Utah geprägt, wo auch das Agile Manifest formuliert wurde (s. [URL: Agiles Manifest]).

10 2 Agile und klassische Vorgehensmodelle Agile Praktiken für das Management Scrum mit einführt. Ebenso wenig gibt Scrum vor, wie das Testen in einem nach Scrum ablaufenden Projekt gestaltet werden soll. Das Scrum-Rahmenwerk beschreibt Praktiken für das Management von (Software-)Projekten und verändert dieses Projektmanagement radikal! Es ersetzt den klassischen deterministisch vorausplanenden Ansatz durch eine empirisch adaptive Projektsteuerung [Schwaber/Beadle 02]. Das Ziel ist, auf Änderungen schnell, unkompliziert und dennoch angemessen zu reagieren, anstatt Zeit und Energie auf die Erstellung, Durchsetzung und Nachführung veralteter Pläne zu verschwenden. Die wesentlichen Projektmanagementinstrumente in Scrum 4 dafür sind: Kurze Iterationen: Scrum gliedert ein Projekt in kurze Iterationen fester Länge. Eine solche Iteration heißt in Scrum»Sprint«5. Jede Iteration soll ein potenziell auslieferbares Produkt erzeugen, dessen Funktionsumfang mit jeder Iteration wächst. Die Idee dahinter: Wenn der zu planende Zeitraum also ein Sprint kurz ist, z. B. ein bis drei oder vier Wochen (vgl. [Schwaber/Beedle 02, S. 52]), dann ist das Planen und Steuern per se einfacher und funktioniert zuverlässiger als bei langen (Release-)Zyklen von z. B. ½ bis 1 Jahr oder gar länger. Product Backlog: Wenn man die Planung auf nur eine Dimension reduziert, auf eine simple Liste der Arbeitsergebnisse, die erreicht werden sollen, dann verschwindet eine Menge Komplexität. Genau dies passiert in Scrum. Der Product Owner (s.u.) führt ein sogenanntes Product Backlog:»Es enthält alle bekannten Anforderungen und Arbeitsergebnisse, die zur Erreichung des Projektziels umgesetzt oder erbracht werden müssen. Hierzu zählen funktionale und nicht funktionale Anforderungen sowie Anforderungen an die Benutzerschnittstelle. Außerdem kann das Product Backlog Arbeitsergebnisse wie das Aufsetzen der Test- und Entwicklungsumgebung oder das Beseitigen von Defekten (Bugs) enthalten«[pichler 08, Abschnitt 4.2]. Die Einträge in dieser Sammlung aller bekannten 3. Extreme Programming (XP) ist eine Sammlung von Werten, Prinzipien und Praktiken (Values, Principles, Practices) zur agilen Softwareentwicklung, die Kent Beck 1999 eingeführt hat. Die meisten agilen Ansätze gehen auf XP bzw. dessen Werte, Prinzipien und Praktiken zurück. Die aktuelle»version«von XP erklärt Kent Beck in [Beck/Andres 04]. 4. Lesenswerte deutschsprachige Einführungen in Scrum bieten [Koschek 10] oder [Pichler 08]. 5. Die Sprint-Metapher ist dabei nicht im Sinne»hohe Geschwindigkeit«zu verstehen, sondern im Sinne»kurze Strecke«.

2.1 Scrum 11 oder in Betracht stehenden Produktanforderungen und Arbeitsergebnisse werden relativ zueinander priorisiert. Weitere gegenseitige Abhängigkeiten oder eine bestimmte zeitliche Reihenfolge werden nicht betrachtet. Das Product Backlog hat nicht den Anspruch, vollständig zu sein. Es entwickelt und verändert sich über die Sprints hinweg. Dieses Arbeiten am Backlog wird auch»backlog Grooming«genannt: Der Product Owner ergänzt es um neu erkannte Anforderungen oder zerlegt diese wenn nötig in kleinere Teile, sobald er und das Team die Anforderung dazu gut genug verstanden haben. Anforderungen werden neu bewertet und umpriorisiert. Obsolete Anforderungen werden gestrichen. Zugespitzt heißt das: Planen wird einfach und zuverlässig, weil alles, was Planen fehlerträchtig macht, vermieden wird. Sprint Backlog: Ganz so einfach ist es natürlich nicht. Nur mit einem Sack voll priorisierter Anforderungen kann ein Softwareprojekt nicht gesteuert werden. Auch im Scrum-Projekt muss entschieden werden, wer im Team wann welche Anforderung umsetzt und welche Aufgaben er dazu erledigen muss. Aber in Scrum entscheidet das nicht ein einsamer Projektleiter vorab für alle Aufgaben. Sondern die Entscheidungen trifft das Team zusammen mit dem Product Owner»portionsweise«je Sprint. Zu Beginn eines jeden Sprints»zieht«das Team diejenigen Anforderungen, die im priorisierten Product Backlog an der Spitze stehen und die es in diesem Sprint umsetzen will, aus dem Product Backlog in ein kleineres Sprint Backlog. Dabei achtet das Team darauf, dass diese Anforderungen gut genug verstanden und genau genug formuliert sind. Anforderungen, die diese Kriterien (»Definition of Ready«) nicht erfüllen, sind noch nicht reif für die Übernahme in den Sprint. Alle Überlegungen und Entscheidungen über Abhängigkeiten zwischen diesen Anforderungen, resultierende Aufgaben und Aufwände sowie sinnvolle zeitliche Reihenfolgen werden erst jetzt angestellt und getroffen. Alle Aufgaben, die das Team als nötig identifiziert, um die für diesen Sprint ausgewählten Anforderungen umzusetzen, werden im Sprint Backlog eingetragen. Um abzusichern, dass am Sprint-Ende tatsächlich ein fertiges Produktinkrement vorliegen wird, formuliert das Team Kriterien, anhand derer es überprüfen und entscheiden kann,»ob die Arbeit an dem Inkrement abgeschlossen ist«[url: Scrum Guide]. Diese»Fertig«-Kriterien werden als»definition of Done«des Teams (DoD) bezeichnet. Sie können global als Checkliste für alle Aufgaben des Sprints formuliert werden oder auch für einzelne Aufgaben spezifisch. Die gemeinsame Diskussion

12 2 Agile und klassische Vorgehensmodelle über angemessene»fertig«-kriterien trägt ganz wesentlich dazu bei, den Inhalt einer Anforderung oder einer Aufgabe zu klären und im Team ein gemeinsames, gleiches Verständnis über jede Aufgabe zu erhalten. Alle diese Überlegungen erfolgen dabei aber nur für die Aufgaben, die den anstehenden Sprint betreffen. Der Planungshorizont ist kurz. Die Aufgabenmenge ist (verglichen mit dem Gesamtprojekt) klein. Das Team hat einen klaren Fokus. Und der Sprint ist geschützt! Das bedeutet, dass während des laufenden Sprints das Sprint Backlog nicht mehr verändert oder gar erweitert werden darf (s.a. [Pichler 08, Abschnitt 6.2.2]). Eine solche Sprint- Planung hat sehr gute Chancen, eingehalten zu werden! Abb. 2 1 Scrum Timeboxing: In Scrum hat jeder Sprint die Pflicht, lieferfähige Software zu produzieren (»potentially shippable product«) 6. Das bedeutet: In das Sprint Backlog kommen nur Aufgaben, die zu diesem potenziell einsetzbaren Produkt beitragen nichts anderes. Produktteile, die zum Sprint-Ende nicht fertig werden, fallen weg. Um das zu vermeiden, versucht das Team am Sprint-Anfang Produkteigenschaften (Features) auszuwählen, die im Sprint zum Abschluss gebracht und realisiert werden können. Im Zweifel gilt: Am Stichtag»auslieferbar«geht vor»funktionsumfang«. Dieses Prinzip nennt man»timeboxing«. Um Timeboxing möglich zu machen, muss am Sprint-Anfang für alle zur Debatte stehenden Produktfeatures, die im Sprint realisiert werden könnten, der Realisierungsaufwand geschätzt werden. Features mit zu hohem Aufwand werden weggelassen, zerlegt oder so weit wie nötig funktional abgespeckt. Natürlich stellt sich dem Team hier genau wie bei klassischem Vor- 6.»Incremental deliveries of Done product ensure a potentially useful version of working product is always available«[url: Scrum Guide].

2.1 Scrum 13 gehen das Problem der Aufwandsschätzung. Zwei Dinge sorgen aber dafür, dass die Aufwandsschätzung in Scrum-Projekten besser gelingt als klassisch: Es muss»nur«der kurze direkt anliegende Sprint betrachtet werden. Die fraglichen Aufgaben sind»kleinteilig«und durch die vorangehenden Sprints in der Regel relativ gut gedanklich vorbereitet. Die Schätzung erfolgt durch das Team per»planning Poker«(s. Abschnitt 3.5). Auch diese Technik stammt ursprünglich aus XP. Die Schätzungen der einzelnen Teammitglieder können untereinander stark variieren. Aber im Mittel erhält man erstaunlich zutreffende Gesamtschätzungen. Timeboxing wird in Scrum nicht nur auf Ebene der Sprints angewendet, sondern in vielen Situationen, wo es darum geht,»fertig«zu werden. So ist Timeboxing ein nützliches Instrument, um z. B. in Meetings einen pünktlichen Beginn und strikte Einhaltung des geplanten Endezeitpunkts durchzusetzen und zur Meetingkultur zu machen. Transparenz: Das vielleicht mächtigste Werkzeug in Scrum ist Transparenz. Das Sprint Backlog wird auf einem Whiteboard 7 öffentlich geführt. Inhalt und Fortschritt des aktuellen Sprints sind so für das gesamte Team, aber auch für das Management und alle anderen Interessierten jederzeit sichtbar. Das Board enthält zeilenweise die Anforderungen und die zugehörigen Entwicklungsaufgaben. Die Spalten bilden den Fortschritt ab (z. B. offen, in Arbeit, erledigt). Der Sprint-Status wird täglich (im»daily Scrum«, der täglichen Statusrunde des Teams) aktualisiert und abgebildet, indem die Aufgabenkärtchen gemäß ihrem Fortschritt von links nach rechts durch die Spalten des Boards wandern. Abbildung 2 2 zeigt als Beispiel das Whiteboard des TestBench-Teams (vgl. Fallstudie 8.2). Die über das Board im Daily Scrum hergestellte Transparenz hat zwei Effekte: Jeder im Team weiß tagesaktuell, was um ihn herum passiert. Fehler durch»aneinander vorbei arbeiten«werden so von vornherein minimiert. Und jeder sieht die Aufgaben und den Fortschritt des anderen. Das erzeugt einen nicht zu unterschätzenden Erfolgsdruck. Es zwingt, Probleme aus- und anzusprechen 8. Sind Schwierigkeiten erst einmal angesprochen, wird es auch einfacher, 7. Alternativ auf einer Stellwand. Werden IT-Tools eingesetzt, dann sollte das Sprint Backlog im Teamraum über einen großen Monitor sichtbar gemacht werden. 8. Verbergen lassen sie sich ohnehin nicht.