Softwareentwicklungs - Vorgehensmodell IMPACT Seminar Softwareentwicklungs - Vorgehensmodell Jana-Vanessa Dering
Agenda Einleitung Agile Methoden Vergleich Fazit Motivation Ziel Grundlagen Methoden Vergleich Risiken Fazit Quelle: http://borg.website.pl/ Quelle: http://www.peopletreespain.com/ desarrollo-agil-un-modelo-para-un-futuro-mejor/ Quelle: http://www.materialcompliance.de/de/leistung-statusanalyse.html Quelle:http://www.haufe.de/steuern/gesetzgebung-politik/steuerplaene-im-koalitionsvertrag/fazit-zu-den-steuerplaenen_168_210306.html
Einleitung Quelle: http://borg.website.pl/
Einleitung – Motivation und Ziel Entwicklung von Software: Organisation Planung Kommunikation Programmierung Notwendiger Rahmen für alle Projektmitglieder Ziel: Grundlegende Informationen zu SCRUM und Kanban Entscheidungsgrundlage für die Auswahl einer Methode
Agile Methoden Quelle: http://www.peopletreespain.com/desarrollo-agil-un-modelo-para-un-futuro-mejor/
Auszug aus dem agilen Manifest: Grundlagen Ziel ist es, „… angepasst (wendig) vorgehen und schnell (flink) vorzeigbare Ergebnisse erzielen.“[Bleek/Wolf 2008] Auszug aus dem agilen Manifest: „… Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt: Individuen und Interaktionen mehr als Prozesse und Werkzeuge Funktionierende Software mehr als umfassende Dokumentation Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung Reagieren auf Veränderung mehr als das Befolgen eines Plans …“ [Quelle: http://agilemanifesto.org/iso/de/]
Agiles Prinzip: Agile Methoden: Grundlagen Leitfaden der Arbeit 12 Prinzipien aufgelistet in dem Agilen Manifest Selbstreflexion der Teams Agile Prozesse nutzen Veränderungen Tägliche Meetings / Zusammenarbeit Agile Methoden: Extreme Programming (XP) Feature Driven Development (FDD) SCRUM Kanban
SCRUM: Agile Methode - SCRUM „Framework für das Management komplexer Projekte.“ [Wirdemann 2011] Meetings und Kommunikation wichtigster Bestandteil Artefakte: Product Backlog: Liste von Anforderungen, nach Priorität sortiert Sprint Backlog: Liste der Anforderungen innerhalb eines Sprints Impediment Backlog: Liste von Hindernissen eines Sprintes
Rollen Agile Methode - SCRUM Product Owner Team SCRUM Master Vertritt Kunden Kann vom Kunden gestellt werden Team 5-10 Mitglieder Interdisziplinär zusammengesetzt Self-Organisation SCRUM Master Moderator des Projektes Kein Eingreifen in das Projekt Weitere Rollen Benutzer Höheres Management Product Owner- letzte Wort, welche Funktionalitäten entwickelt werden sollen.
Agile Methode - SCRUM Quelle: [SCRUM Kompakt]
Sprint Planning: Agile Methode - SCRUM Teilnehmer: Product Owner, Team, SCRUM Master Anhand Product Backlog werden Items gewählt und ins Sprint Backlog überführt Zeitplanung für Items Sprintziel Definition Umsetzungsplan
Agile Methode - SCRUM Quelle: [SCRUM Kompakt]
Sprint: Daily Scrum Meeting: Agile Methode - SCRUM Laufzeit bis zu 4 Wochen Realisierung des Sprintzieles Lauffähiges System erstellen Impediment Liste wird erstellt Daily Scrum Meeting: 15 Min. im Stehen Informelles Meeting Was habe ich getan? Was werde ich tun? Gab es Probleme? DAILY SCRUM -> SCRUM BOARD
Agile Methode - SCRUM Quelle: [SCRUM Kompakt]
Sprint Review: Agile Methode - SCRUM Vorstellen des Ergebnis Feedback zum Ergebnis
Kanban stammt aus dem Lean Management „Kanban“ bedeutet Karte, Etikett Agile Methode - Kanban Kanban stammt aus dem Lean Management „Kanban“ bedeutet Karte, Etikett Vorteile: Kurze Durchlaufzeiten Kleine, evolutionäre Änderungen Kontinuierliche Verbesserung
Virtualisierung des Workflows Agile Methode - Kanban Virtualisierung des Workflows Limitierung des Work in Progress Steuerung und Messen Prozessregeln Kontinuierliche Verbesserung 1: Schritt-> Virtualisierung des Workflows
Virtualisierung des Workflows Agile Methode - Kanban Virtualisierung des Workflows Backlog Entwicklung Test Auslieferung Produktiv Feature 1 In Arbeit Fertig User Story1 Use Case1 Workflow
Virtualisierung des Workflows Agile Methode - Kanban Virtualisierung des Workflows Start Datum Ende Datum Deadline Title der Aufgabe Beschreibung der Aufgabe Ersteller des Tickets Bearbeiter
Limitierung des Work in Progress Agile Methode - Kanban Limitierung des Work in Progress Backlog Entwicklung Test Auslieferung Produktiv Feature 1 Feature 3 Feature 8 Feature 12 User Story1 Feature 7 Feature 2 Use Case1 Feature 4 Feature 13 Tickets die sich nicht Bewegen BLOCKER ENGPÄSSE Feature 23 Feature 30 Feature 10
Limitierung des WiP Agile Methode - Kanban 3 3 2 4 WiP im Bereich Test Backlog 3 Entwicklung 3 Test Auslieferung 2 Produktiv Feature 1 Feature 3 Feature 8 User Story1 Use Case1 Feature 12 Feature 7 Feature 2 Feature 13 Feature 4 PULL PRINZIP -> Herausziehen!!!! ENGPÄSSE -> Stau setzt sich fort Feature 23 4 WiP im Bereich Test
Messen und Steuern Alle Aufgaben selbe Priorität Agile Methode - Kanban Messen und Steuern Alle Aufgaben selbe Priorität Einführen von Service Klassen Zuordnen von Service Klassen über „Cost of Delay“ SERVICEKLASSEN -> GRUNDLAGE FÜR SLA DELAY COST-> Wie teuer wird es wenn es länger dauert!! Quelle:[Braintime]
Messen und Steuern Agile Methode - Kanban Service-Klasse Beschreibung Beschleunigt (Expedite) Arbeiten, welche hohe Kosten verursachen. Beispiel: Serverausfall. Dürfen kurzfristig WiP-Limit überschreiten. Fester Termin (Fixed Date) Arbeiten, welche termingerecht erledigt sein müssen. Beispiel: Gesetzesänderung. Standard (Standard) Arbeiten des Alltagsgeschäfts. Vage / unbestimmbare Kosten (Intangible) Arbeiten, welche zum jetzigen Zeitpunkt eher unbedeutend sind. Beispiel: Versions-Upgrade SERVICEKLASSEN -> GRUNDLAGE FÜR SLA Begrenzung der einzelnen Ticketanzahl der Klassen
Prozessregeln Wann wird gepusht? Wann ist eine Aufgabe „fertig“? Agile Methode - Kanban Prozessregeln Wann wird gepusht? Wann ist eine Aufgabe „fertig“? Wann dürfen neue Anforderungen in das System aufgenommen werden? Detaillierte Beschreibung von Regeln innerhalb des Systems
Kontinuierliche Verbesserung Agile Methode - Kanban Kontinuierliche Verbesserung Durch WiP-Limits werden Problemstellen erkannt WiP-Limits auch als Regler aufzufassen Schnelles Agieren des Projektmanagers gefragt Leistung des Kanban Systems messbar durch erledigte Aufgaben REGLER-> VERKÜRZEN DER DURCHLAUFZEITEN
Kontinuierliche Verbesserung Agile Methode - Kanban Kontinuierliche Verbesserung Quelle:[Confluence]
Kontinuierliche Verbesserung Agile Methode - Kanban Kontinuierliche Verbesserung Standup Meeting Täglich Kanban Team Fortschritt des Projektes Blockierte Tickets diskutieren und Maßnahmen zur Beseitigung ergreifen Operation Reviews und Retrospektiven Größere zeitliche Abstände (4-5 Wochen) Kanban Team und Management Prozessverbesserungen
Kontinuierliche Verbesserung Agile Methode - Kanban Kontinuierliche Verbesserung Weitere Methoden: Selbstorganisation Swarming
Vergleich Quelle: http://www.materialcompliance.de/de/leistung-statusanalyse.html
Vergleich - Organisationsstruktur SCRUM Klare Verantwortlichkeitsstruktur Selbstorganisation im Team Virtualisierung des Sprints Kanban Keine Verantwortlichkeitsstruktur Selbstorganisation Virtualisierung des Workflows
Vergleich - Einsatzgebiet SCRUM Projekte die sich stark aufteilen lassen Langfristige, komplexere Projekte Kanban Kommunikation zwischen Teams erforderlich Schlecht planbare Aufgaben, kontinuierlich Kleinere Teams (4-7 Personen)
Rollen werden unterschätzt Vergleich - Risiken Sprint dauert zu lange Kommunikation Rollen werden unterschätzt SCRUM Quelle:https://jaibeermalik.wordpress.com/2010/07/22/using-greenhopper-to-manage-multiple-teams-in-agile/ Quelle: http://www.blacklistednews.com/NASA%3A_Industrial_Civilization_Heading_for_Irreversible_Collapse/33730/0/38/38/Y/M.html Quelle:http://www.experto.de/b2b/kommunikation/wahrnehmung-als-grundlage-der-menschlichen-kommunikation.html
Archiv der erledigten Aufgaben Vergleich - Risiken Überblick verlieren Teamarbeit Archiv der erledigten Aufgaben Kanban Quelle:http://www.wienertanzundkunstbewegung.at/index.php?id=17&tx_ttnews[tt_news]=33&cHash=4bac471b200489162df39a782c2245ce Quelle:http://paperzip.co.uk/blog/classroom-organisation/5-great-post-it-note-ideas Quelle:http://www.marquardt-strategie.de/blog/schadliche-risikobereitschaft-ein-kritischer-blick-der-teamarbeit/
Fazit Quelle:http://www.haufe.de/steuern/gesetzgebung-politik/steuerplaene-im-koalitionsvertrag/fazit-zu-den-steuerplaenen_168_210306.html
Fazit WAS PASST ZU IMPACT? Beide Methoden werden von JIRA/ Confluence unterstützt Einige haben bereits Erfahrung mit SCRUM SCRUM bietet eine klare Übersicht Kanban visualisiert den kompletten Prozess Empfehlung: SCRUM mit Scrum Board und Anpassungen an unsere Gegebenheiten Übersicht-> Verantwortungen, Zeitliche Einteilung durch Sprint
Mögliche Anpassungen: Fazit Mögliche Anpassungen: Kein Daily Scrum sondern in anderer Frequenz (wöchentlich) Ergänzung des Tasks Boards innerhalb des Daily Scrum Zeitliche Anpassung der Sprints Wechselnde Rollenverteilung Task Board von JIRA Unterstützt
Vielen Dank für ihre Aufmerksamkeit !
Quellen [SCRUM Kompakt] SCRUM Kompakt: http://www.scrum-kompakt.de/einfuehrung-in-scrum/scrum-prozess/ [Stand: 10.4.2015] [Bleek/Wolf 2008] Bleek/Wolf 2008: Agile Softwareentwicklung, 1.Auflage, dpunkt; ISBN: 978-3898644730 [Braintime] Braintime: http://www.braintime.de/methoden/ueberblick-kanban-beratung/kanban-grundlagen-kompakt/ [Stand: 14.04.2015] [Confluence] Confluence: https://confluence.atlassian.com/pages/viewpage.action?pageId=720407879 [Stand 03.05.2015] [Leopold 2012] Leopold 2012: Kanban in der IT, Hanser ISBN:978-3-446-43167-6
Weitere Informationsquellen http://www.kanban-system.com/de/kanban-system-was-ist-das/ [Stand: 10.05.2015] http://borisgloger.com/scrum/scrum-flow/meetings-in-scrum/ [Stand: 12.05.2015] http://marctv.de/blog/kanban-in-der-softwareentwicklung/ http://www.it-agile.de/wissen/methoden/agilitaet/ [Stand: 20.04.2015] http://www.it-agile.de/wissen/methoden/kanban/