projekte mittels scrum und agiler software entwicklung meistern

60
Projekte mittels Scrum und agiler Software Entwicklung meistern. Aniello Bove, COO & Partner http://www.slideshare.net/ONESchweiz

Upload: inm-ag

Post on 26-Jun-2015

898 views

Category:

Business


4 download

DESCRIPTION

Projekte mittels Scrum und agiler Software Entwicklung meistern. Eine Präsentation von Aniello Bove, COO & Partner der INM AG anlässlich des ONE Kongress vom 09.05.2012

TRANSCRIPT

Page 1: Projekte mittels Scrum und agiler Software Entwicklung meistern

Projekte mittels Scrum und agiler

Software Entwicklung meistern.

Aniello Bove, COO & Partner

http://www.slideshare.net/ONESchweiz

Page 2: Projekte mittels Scrum und agiler Software Entwicklung meistern

2 von 3 IT Projekte scheitern!

Page 3: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 4: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 5: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 6: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 7: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 8: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 9: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 10: Projekte mittels Scrum und agiler Software Entwicklung meistern

Warum scheitern IT Projekte?

Page 11: Projekte mittels Scrum und agiler Software Entwicklung meistern

Projekte sind nicht „statisch“.

Business Features stehen im Vordergrund

Kontinuierliches Prüfen und Anpassen

Kurze Iterationen - Inkrementelles Liefern

Teamarbeit

Page 12: Projekte mittels Scrum und agiler Software Entwicklung meistern

Lösung

Anfo

rderu

ngen

weit weg

vor Einigung

kurz

vor Einigung

na

he

an

Kla

rhe

it

we

it e

ntfe

rnt

vor

Kla

rheit

Gefahren sollte man nicht „ignorieren“.

Page 13: Projekte mittels Scrum und agiler Software Entwicklung meistern

Entwickler Median

80% Wahrscheinlichkeit

Schätzungen sind „wahrscheinlich“.

Projektleiter

Page 14: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 15: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 16: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 17: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 18: Projekte mittels Scrum und agiler Software Entwicklung meistern
Page 19: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum & Agile Software Entwicklung.

Page 20: Projekte mittels Scrum und agiler Software Entwicklung meistern

Microsoft

Yahoo

Google

Electronic Arts

High Moon Studios

Philips

Siemens

Nokia

Capital One

BBC

Intuit

SAP

Intuit

Nielsen Media

First American Real Estate

BMC Software

Ipswitch

Lexis Nexis

Sabre

Salesforce.com

Time Warner

Turner Broadcasting

Allianz Deutschland

Scrum ist nicht neu.

Page 21: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum.

Scrum fördert die Selbstorganisation/-verantwortung.

Lösungen werden in enger Zusammenarbeit und in

regelmässigen, kurzen Zyklen realisiert. Dadurch

wird ein dynamisches, agiles Umfeld geschaffen.

Page 22: Projekte mittels Scrum und agiler Software Entwicklung meistern

Agile Software Entwicklung.

Agile Entwicklung

unterstützt das

zyklische Vorgehen

von Scrum.

Projekte werden in

Arbeitspakete

aufgeteilt, damit

Erfolgsrisiken

schnell erkannt und adressiert werden können.

Transparenz und Nachvollziehbarkeit stehen im

Vordergrund.

Page 23: Projekte mittels Scrum und agiler Software Entwicklung meistern

sind

wichtiger

als

ist

wichtiger

als

ist

wichtiger

als

ist

wichtiger

als

Werte von Scrum/Agile Entwicklung.

Page 24: Projekte mittels Scrum und agiler Software Entwicklung meistern

Inkrementell und Iterativ.

Page 25: Projekte mittels Scrum und agiler Software Entwicklung meistern

Kontinuierlicher Flow.

Users & Sponsors

UI Designers

Programmers Testers

Business Analysts

Page 26: Projekte mittels Scrum und agiler Software Entwicklung meistern

Verbindlichkeit.

Typisches Szenario:

Projektleiter: Jungs, ihr habt mir gesagt, es dauert

2 Wochen.

Entwickler: Ja, aber das war nur eine Schätzung.

Projektleiter: Nun sagst Du mir, dass es noch 2

weitere Tage dauert? Ich dachte ich

könnte auf Euch zählen. Ich will,

dass es nun in 2 Wochen erledigt wird.

Schätzungen werden „verbindlich“!

Page 27: Projekte mittels Scrum und agiler Software Entwicklung meistern

Fertig.

Weiteres typisches Szenario:

Entwickler: Ich bin fertig!

Projektleiter: Schick mir den Link.

Entwickler: Ich muss es zuerst noch installieren.

…und so geht es weiter.

Definiere „erledigt“!

Page 28: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum Instrumente.

Produkt Owner

Scrum Master

Team

Rollen

Sprint Planung

Sprint Review

Sprint Retrospektive

Tägliches Scrum

Meetings

Produkt Backlog

Sprint Backlog

Burndown Diagramm

Artefakte

Page 29: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum Rollen.

Produkt Owner

Scrum Master

Team

Rollen

Sprint Planung

Sprint Review

Sprint Retrospektive

Tägliches Scrum

Meetings

Produkt Backlog

Sprint Backlog

Burndown Diagramm

Artefakte

Page 30: Projekte mittels Scrum und agiler Software Entwicklung meistern

SEO

Scrum Rollen.

Page 31: Projekte mittels Scrum und agiler Software Entwicklung meistern

Erfasst und priorisiert Produkt Features

Bestimmt Umfang und Termin

Ist verantwortlich für das finanzielle Ergebnis (ROI)

Akzeptiert oder weist Arbeitsergebnisse zurück

Produkt Owner.

Page 32: Projekte mittels Scrum und agiler Software Entwicklung meistern

Vertritt das Management gegenüber dem Team

Schützt das Team vor äußeren Störungen

Unterstützt die enge Zusammenarbeit und

Kommunikation zwischen allen Beteiligten

Stellt sicher, dass das Team funktioniert und

produktiv ist

Verantwortlich für die Einhaltung der Scrum Werte

Scrum Master.

Page 33: Projekte mittels Scrum und agiler Software Entwicklung meistern

Besteht üblicherweise aus 5-9 Vollzeitmitglieder

Deckt alle notwendigen Disziplinen ab

Team organisiert sich selbst

Mitglieder bleiben während des gesamten Sprints

Team.

Page 34: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum Meetings.

Produkt Owner

Scrum Master

Team

Rollen

Sprint Planung

Sprint Review

Sprint Retrospektive

Tägliches Scrum Meeting

Meetings

Produkt Backlog

Sprint Backlog

Burndown Diagramm

Artefakte

Page 35: Projekte mittels Scrum und agiler Software Entwicklung meistern

Vor jedem Sprint, 60 Minuten

Sprint Priorisierung (Produkt Backlog) Produkt Backlog analysieren und auswerten

Sprint Ziel festlegen

Sprint Planung (Sprint Backlog) Sprint Backlog aus Produkt Backlog erstellen

Sprint Backlog in Stunden schätzen

Entscheiden, wie man das Sprint Ziel erreichen kann

Sprint Planung (Scrum Master).

Page 36: Projekte mittels Scrum und agiler Software Entwicklung meistern

Vor dem Sprint

8

5

3

5

5

5

3

5

5

8

Produkt

Backlog

Geschätzte

”Velocity”

8

5

3

5

5

Sprint

Backlog

Nach dem Sprint

8

5

3

5

5

Sprint

Backlog

Erledigt!

Erledigt!

Erledigt!

Teilweise Erledigt.

Nicht gestartet.

Echte

”Velocity”

„Velocity“ als Sprint Planungswert.

Page 37: Projekte mittels Scrum und agiler Software Entwicklung meistern

Nach jedem Sprint, 30-60 Minuten

Jeder darf/soll teilnehmen

Das Team präsentiert, was es während des Sprints erreicht hat Max. 2 Stunden Vorbereitungszeit

Informell

Keine Folien

In Form einer Demo

Sprint Review (Scrum Master).

Page 38: Projekte mittels Scrum und agiler Software Entwicklung meistern

Nach jedem Sprint, 15-30 Minuten

Das ganze Team darf teilnehmen, evtl. sogar der Kunde

Was lief gut? Was lief nicht gut? Aufhören mit…

Weitermachen mit…

Beginnen mit…

Sprint Retrospektive (Scrum Master).

Diese ist eine von vielen Methoden um Retrospektiven durchzuführen.

Page 39: Projekte mittels Scrum und agiler Software Entwicklung meistern

Tägliches Scrum (Scrum Master).

Täglich, 15 Minuten, Stand-Up

Team Mitglieder wählen Tasks aus oder verändern diese, sobald weitere Kenntnisse geschaffen wurde

Keine Problemlösungsdiskussionen

3 Fragen an jedes Team Mitglied: Was hast du gestern getan?

Was wirst du heute tun?

Welche Hindernisse stehen dir im Weg?

Page 40: Projekte mittels Scrum und agiler Software Entwicklung meistern

Produkt Owner

Scrum Master

Team

Rollen

Scrum Artefakte.

Sprint Planung

Sprint Review

Sprint Retrospektive

Tägliches Scrum

Meetings

Produkt Backlog

Sprint Backlog

Burndown Diagramm

Artefakte

Page 41: Projekte mittels Scrum und agiler Software Entwicklung meistern

Eine Liste aller gewünschten Features, Anforderungen, Wünsche und sogar Ideen

Das Sammeln/Dokumentieren von Requests erfolgt ununterbrochen

Idealerweise soll jeder Eintrag „wertvoll“ für den Anwender/Kunde der Lösung sein

Vom Produkt Owner fortlaufend (re)priorisiert

Produkt Backlog (Produkt Owner).

Page 42: Projekte mittels Scrum und agiler Software Entwicklung meistern

Backlog Item Estimate

Allow a guest to make a reservation 3

As a guest, I want to cancel a reservation. 5

As a guest, I want to change the dates of a

reservation. 3

As a hotel employee, I can run RevPAR reports

(revenue-per-available-room) 8

Improve exception handling 8

... 30

... 50

Beispiel „Produkt Backlog“.

Page 43: Projekte mittels Scrum und agiler Software Entwicklung meistern

Die Liste aller Aufgaben, welche für die Erfüllung aller gemeinsam vereinbarten Features erforderlich sind

Die Anzahl Features werden während eines Sprints nie modifiziert, lediglich die Aufgaben können sich verändern

Deshalb vom Scrum Master koordiniert und nur vom Team täglich unterhalten

Sprint Backlog (Scrum Master).

Page 44: Projekte mittels Scrum und agiler Software Entwicklung meistern

Backlog Item Estimate

Allow a guest to make a reservation 3

... …

Beispiel „Sprint Backlog“.

Tasks

Code the user interface

Code the middle tier

Test the middle tier

Write online help

Write the foo class

Mo

8

16

8

12

8

Di

4

12

16

8

Mi Do

4

11

8

4

Fr

8

8

Add error logging

8

10

16

8

8

Page 45: Projekte mittels Scrum und agiler Software Entwicklung meistern

Grafische Visualisierung des Fortschritts dank transpartentem geschätzten Restaufwand

Hilfsmittel zur Identifikation von Terminprobleme

Gibt Aufschluss über die „Velocity"

Wird fortlaufend nachgeführt/aktualisiert Sprint Burndown Chart: täglich durch

Scrum Master

Produkt Burndown Chart: nach jedem Sprint durch Produkt Owner

Burndown Chart.

Page 46: Projekte mittels Scrum und agiler Software Entwicklung meistern

Tasks

Code the user interface

Code the middle tier

Test the middle tier

Write online help

Write the foo class

Mo

8

16

8

12

8

Di

4

12

16

8

Mi Do

4

11

8

4

Fr

8

8

Add error logging

8

10

16

8

8

Beispiel „Sprint Burndown Chart“. S

tun

de

n

40

30

20

10

0 Mo Di Mi Do Fr

50

Page 47: Projekte mittels Scrum und agiler Software Entwicklung meistern

Backlog Item Estimate

Allow a guest to make a reservation 3

As a guest, I want to cancel a reservation. 5

As a guest, I want to change the dates of a

reservation. 3

As a hotel employee, I can run RevPAR reports

(revenue-per-available-room) 8

Improve exception handling 8

... 30

... 50

Beispiel „Produkt Burndown Chart“. S

tun

den

Page 48: Projekte mittels Scrum und agiler Software Entwicklung meistern

Scrum/Agile erfolgreich meistern!

Page 49: Projekte mittels Scrum und agiler Software Entwicklung meistern

Voraussetzungen schaffen.

Offen für Neues, denn Scrum stellt teilweise bisherige Grundsätze komplett auf den Kopf

Die Mitarbeiter dürfen nicht versuchen ein „Wasserfall Modell“ mit einem „agilen Vorgehen“ zu vergleichen

Das Management ist verantwortlich, dass das Umfeld (Ökosystem) für ein agiles Arbeiten geschaffen wird

Der Kunde muss akzeptieren, dass Zeit, Umfang und Budget nicht immer im voraus „fixiert“ werden können

Page 50: Projekte mittels Scrum und agiler Software Entwicklung meistern

Transition kontrolliert angehen.

Scrum ist nicht immer Scrum, denn eine individuelle Adaption ist unbedingt erforderlich (Kunden, Projekte, Mitarbeiter, Hilfsmittel etc.)

Erstellen eines kompletten „Transition Plan“ in die Scrum/Agile Zielorganisation und –methodik

Genügend qualifiziertes Fachpersonal innerhalb der Teams sicherstellen, bevor mit der Transition gestartet wird (Ausbildung/Rekrutierung/Consulting)

Adaptieren der Prozesse, Tools und Dokumente mit der Unterstützung und Teilnahme der jeweiligen Teams

Page 51: Projekte mittels Scrum und agiler Software Entwicklung meistern

Kollaborationsplattform als Basis.

Um Scrum mit agiler Entwicklung gerecht zu werden,

setzen wir eine Kollaborationsplattform ein, sodass

Kunde, Projektleiter, Mitarbeiter und Betrieb stets auf

dem selben Informationenstand sind.

Ticketing. Workflows.

WebDAV. Projekte. Change Requests. Defects.

Berechtigungen.

Page 52: Projekte mittels Scrum und agiler Software Entwicklung meistern

Prozesse

Dokumentationsinstrumente.

Inventare

Page 53: Projekte mittels Scrum und agiler Software Entwicklung meistern

Arbeitsinstrumente.

Produkt Backlog

Sprint Backlog

Sprint Aufgaben

Page 54: Projekte mittels Scrum und agiler Software Entwicklung meistern

Planungsinstrumente.

Mitarbeiter

Projekte

Page 55: Projekte mittels Scrum und agiler Software Entwicklung meistern

Vor- und Nachteile.

Kleinere und mehrere Auslieferungen (Teilprojekte/ und –lösungen) anstelle einer grossen Auslieferung am Ende des Projektes (“Big Bang”)

Klare und offene Kommunikation dank direktem Kontakt zwischen allen Beteiligten (inkl. Kunde)

Früherkennung von Gefahren und Risiken mittels regelmässigen und frühzeitigen Feedbacks

Höhere Zufriedenheit seitens Kunde, da auf geschäftskritische und –relevante Features fokussiert wird (ROI)

Grössere Motivation seitens Mitarbeiter weil Delivery Risiko auf das ganze Team verteilt ist

Page 56: Projekte mittels Scrum und agiler Software Entwicklung meistern

SEO

Fazit.

Scrum ist ein agiler Prozess, der es erlaubt auf die Auslieferung der wichtigsten Anforderungen in regelmäßigen Abschnitten (2-4 Wochen) tatsächlich lauffähige Software zu liefern.

Der Kunde setzt die Prioritäten. Die sich selbst organisierenden Entwicklungsteams legen das beste Vorgehen zur Auslieferung der höchstprioren Features fest.

Alle zwei bis vier Wochen kann jeder lauffähige Software sehen und entscheiden, diese so auszuliefern oder in einem weiteren Abschnitt zu ergänzen.

Page 58: Projekte mittels Scrum und agiler Software Entwicklung meistern

SEO

Findest Du Scrum verblüffend?

Es sieht nur komplizierter aus als es in der Tat ist.

Page 59: Projekte mittels Scrum und agiler Software Entwicklung meistern

SEO

Auch Du kannst es schaffen!

Man muss nur die richtige Plattform dafür schaffen.

Page 60: Projekte mittels Scrum und agiler Software Entwicklung meistern

Danke!

INM - der One-Stop-Shop für durchgängige

Web-Marketing-Lösungen.

Aniello Bove, COO & Partner

[email protected]