Was sind Grenzen agiler Methodiken?
- schlecht ausgebildete Entwickler
- falsche Organisationsstrukturen
- unmotivierte Entwickler
- änderungsresistentes Management
- keine Kunden
Wo kann Verschwendung in der Entwicklung auftreten?
- Übergabezeiten und Informationsverluste an neue Teams
- Wartezeiten
- Erzeugung fehlerhafter Software
Welche agilen Werte gibt es im "agile manifesto"?
- Individuen und Interaktionen gelten mehr als Prozesse und Tools
- funktionierende Programme gelten mehr als Dokumentation
- stetige Zusammenarbeit mit dem Kunden steht über Verträgen
- Mut und Offenheit für Änderungen wichtiger als festgelegter Plan
Was sind agile Methoden?
- an Agilität ausgerichtete Methoden der Softwareentwicklung
- basieren auf agilen Prinzipien (einfach, zweckmäßig, kundenorientiert, gemeinsamer Codebesitz)
- z.B. Paarprogrammierung, Story-Cards, Testgetriebene Entwicklung
Welche Zielsetzung erfüllen agile Entwicklungsprozesse? Welche Beispiele gibt es?
- Abbau der Bürokratisierung in Softwareentwicklung
- Reduktion Entwurfsphase
- Software wird Kunden früh präsentiert
- Reduktion Entwicklungsaufwand
- Adaptive Software Development
- Extreme Programming
- Testgetriebene Entwicklung
- Scrum
Was ist agiles Design?
- inkrementelle Entstehung eines Designdokuments
- Design in 2 Schritten (Highlevel Design, Detail Design)
Was ist das agile Testkonzept?
- Testen ist begleitend zur Entwicklung
- jedes Teammitglied testet seine Entwicklung selbst
- Integrationsaspekte werden am Ende jedes Zyklus getestet
Was ist das V-Modell?
- Vorgehensmodell für Planung und Durchführung von Systementwicklungsprojekten
- Spezifikation und Zerlegung = absteigender Ast
- Realisierung und Integration = aufsteigender Ast
Wodurch unterscheiden sich agile Methoden und V-Modell?
Agil | V-Modell | |
Projektleiter | Nein | Ja |
Kundenorientierung | Ausgeprägt | Nein, nur in Planungsphase |
Dokumentation | Bei wichtigen Dokumenten | Ausführlich |
Designdokumente | Bei wichtigen Dokumenten | Ausführlich |
Testkonzept | Während Entwicklung | In separater Testphase |
Flexibilität bei neuen Anforderungen | Ja | Nein |
Bürokratie | Nein | Ja |
Was ist Scrum?
- agiler Entwicklungsprozess
- offenes Framework
- klare Rollenbeschreibungen
- einfaches Regelwerk
- einfaches Prozessmodell
Welche Rollen gibt es im Scrum?
- Manager (Stakeholder)
- Kunden (Stakeholder)
- Anwender (Stakeholder)
- Product Owner
- Scrum Master
- Teammitglieder
Welche Aufgaben hat der Manager?
- unterstützt Team (Blocks)
- stellt Infrastruktur bereit
- organisiert Schulungen
- unterstützt Scrum Master bei Konflikten im Team
Welche Aufgaben haben Kunden und Anwender?
- definieren Anforderungen an Software
- stehen in Kontakt mit Product Owner
- beeinflussen Produkt durch Feedback
- stellen Userorientierung sicher (v.a. Anwender)
Welche Aufgaben hat der Product Owner?
- definiert Sprint und Release Backlog
- sammelt Feedback von Kunden und Anwendern
- definiert Sprint Ziel
- bestimmt Prioritäten des Backlogs
- vertritt Team gegenüber Kunden und Anwendern
Welche Aufgaben hat der Srum Master?
- bereitet Scrum Meetings vor
- sorgt dafür, dass das Team produktiv arbeitet, zusammenhält, Methoden einhält, sich selbst organisiert
- beschützt das Team vor Störungen von außen
- kümmert sich um Blocks
Welche Aufgaben hat das Teammitglied?
- entwickelt Software
- nimmt an Scrum Meetings teil
- spricht Probleme offen an
Was ist ein Product Backlog?
- wird vom Product Owner verwaltet
- enthält Anforderungen, die zur Erreichung des Projektziels umgesetzt werden müssen
- priorisierte Einträge
Was ist der Release Backlog?
Ausschnitt des Product Backlogs, der für ein Release geplant ist
Was ist der Sprint Backlog?
- ausgewählter Ausschnitt aus Release Backlog
- wird vom Product Owner an das Team übergeben
- Team plant im Planungsmeeting Aktivitäten, die zur Umsetzung der Anforderungen erforderlich sind (Ende des Meetings: Sprint Backlog)
- wird täglich aktualisiert
Was ist eine Block Liste? Wer ist verantwortlich?
- Dokumentation der Probleme des Teams
- immer, wenn ein Mitglied nicht mit Arbeit fortfahren kann, erfasst es einen Block
- Besprechung im Daily Scrum Meeting (Scrum Master, Manager und Team versuchen, Block zu beseitigen)
- Blockliste: Impediment Backlog
- Scrum Master ist verantwortlich
Sprint Planning: Startbedingung, Verantwortlich, Teilnehmer, Ziel, Ergebnis?
Startbedingung: Priorisierter Release Backlog
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master, Product Owner
Ziel: Definition eines Sprintzieles + Aktivitäten
Ergebnis: Priorisierter Sprint Backlog, zugeordnete Backlog Items
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master, Product Owner
Ziel: Definition eines Sprintzieles + Aktivitäten
Ergebnis: Priorisierter Sprint Backlog, zugeordnete Backlog Items
Daily Scrum: Startbedingung, Verantwortlich, Teilnehmer, Ziel, Ergebnis?
Startbedingung: Sprint Backlog, Team arbeitet daran
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master
Ziel: Informationsaustausch (Was wurde fertig? Was bearbeite ich? Was behindert meine Arbeit?)
Ergebnis: Aktualisierter Sprint Backlog, Block Liste
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master
Ziel: Informationsaustausch (Was wurde fertig? Was bearbeite ich? Was behindert meine Arbeit?)
Ergebnis: Aktualisierter Sprint Backlog, Block Liste
Sprint Review: Startbedingung, Verantwortlich, Teilnehmer, Ziel, Ergebnis?
Startbedingung: Abgeschlossener Sprint
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master, Product Owner, Stakeholder
Ziel: Team präsentiert Ergebnis, legt offen, welche Backlog Items nicht abgearbeitet sind
Ergebnis: Feedback, Transparenz über Abarbeitungsgrad
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master, Product Owner, Stakeholder
Ziel: Team präsentiert Ergebnis, legt offen, welche Backlog Items nicht abgearbeitet sind
Ergebnis: Feedback, Transparenz über Abarbeitungsgrad
Sprint Retrospektive: Startbedingung, Verantwortlich, Teilnehmer, Ziel, Ergebnis?
Startbedingung: Abgeschlossener Sprint
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master
Ziel: Team reflektiert Zusammenarbeit im letzten Sprint
Ergebnis: Top 3 Punkte werden im nächsten Sprint umgesetzt
Verantwortlich: Scrum Master
Teilnehmer: Team, Scrum Master
Ziel: Team reflektiert Zusammenarbeit im letzten Sprint
Ergebnis: Top 3 Punkte werden im nächsten Sprint umgesetzt
Welche Herausforderungen gibt es im Scrum?
- Team organisiert sich selbst
- kein Projektleiter
- gemeinsames Teamziel
- Unterordnung starker Persönlichkeiten
Wie wird im Scrum mit Anforderungen umgegangen?
- werden nicht zuerst vollständig erfasst und dann an Entwicklung übergeben
- werden zeitnah mit der Umsetzung vom Product Owner erfasst
- Product Owner entscheidet, in welcher Reihenfolge Anforderungen umgesetzt werden + Kommunikation an das Team
- werden über den gesamten Zeitraum mit dem Team detailliert und verfeinert
- Wertschöpfungskraft des Teams regelt Menge der verarbeiteten Anforderungen
Wie kommt man von einer Idee zum Backlog?
Vorstufe = Produktkonzept
- wird vom Product Owner mit verschiedenen Abteilungen abgestimmt
- beschreibt wichtige Eigenschaften
Wie wird ein Product Backlog aufgebaut?
- inkrementell
- zuerst Themen/Epics definieren
- dann Erweiterung um User Stories (bilden Basis für Sprint Planning)
Priorisierung des Backlog: Gründe, Schwierigkeit, Kriterien, Gefahr?
Gründe
Schwierigkeit: zur Priorisierung müssen auch technische Bedürfnisse berücksichtigt werden
Kriterien
Gefahr: einzelne Teams achten nur auf eigenes Team
- wichtige Anforderungen können zuerst umgesetzt werden
- Team wird für wichtige Anforderungen fokussiert
- Vorbereitungszeit wird reduziert
Schwierigkeit: zur Priorisierung müssen auch technische Bedürfnisse berücksichtigt werden
Kriterien
- Nutzen/Wert
- Risiko
- Kosten
- technische Notwendigkeit
Gefahr: einzelne Teams achten nur auf eigenes Team
Was ist das Kano Modell?
- Anforderungen werden in Basis-, Leistungs- und Begeisterungsmerkmale eingeteilt
- hoher Mehrwert + Kundenzufriedenheit
Wie wird ein Sprint vorbereitet?
- Schätzklausur - Planungspoker (Schätzung der Aufwände für einzelne Anforderungen)
- Release Burndown Bericht (Projektfortschritt)
- Ermittlung der Teamkapazität
- Sprintplanung (Aufbau Sprint Backlog)
Was ist Daily Scrum?
- Besprechung, die 15 Minuten dauert und jeden Tag am gleichen Ort stattfindet
- Vorbereitung: Sprint Backlog, Sprint Burndown Chart
- Teammitglied beantworten 3 Fragen
- Scrum Master dokumentiert Blocks
- Ziel: gemeinsames Verständnis über Sprint Fortschritt
Was ist Daily Scrum?
- Besprechung, die 15 Minuten dauert und jeden Tag am gleichen Ort stattfindet
- Vorbereitung: Sprint Backlog, Sprint Burndown Chart
- Teammitglied beantworten 3 Fragen
- Scrum Master dokumentiert Blocks
- Ziel: gemeinsames Verständnis über Sprint Fortschritt
Abbruch eines Sprints: Gründe, Schritte, Folgen?
Gründe
Schritte
Folgen: nach Beseitigung der Hindernisse wird neuer Sprint geplant
- massive Blocks
- Kundenanforderungen oder Geschäftsprozesse haben sich geändert
Schritte
- Sprint Review einberufen, Arbeitsergebnisse dokumentieren
- Sprint Retrospektive durchführen
Folgen: nach Beseitigung der Hindernisse wird neuer Sprint geplant
Was ist ein Sprint Review?
- Begutachtung der Arbeitsergebnisse
- Projektfortschritt wird transparent gemacht
- Product Owner gibt Feedback
- Scrum Master: moderiert
- Team: präsentiert Ergebnisse
Was ist die Sprint Retrospektive?
- Reflektion des Entwicklungsprozesses
- soll Zusammenarbeit im Team verbessern
- Beschluss, welche Verbesserungsvorschläge in den nächsten Sprints umgesetzt werden sollen
Was ist Kanban?
- Methode der Produktionsablaufsteuerung
- Pull-Prinzip
- orientiert sich am tatsächlichen Verbrauch
- ermöglicht Reduzierung der Bestände
- Ziel: gesamte Wertschöpfungskette auf der ersten Produktionsstufe kostenoptimal steuern
- Steuerung durch Kanban-Karten
Welche Grundideen vertritt Kanban?
- Wertschöpfungskette wird aufgeteilt und für jeden übersichtlich dargestellt
- Anzahl der Tickets, die gleichzeitig an einer Station bearbeitet werden (WiP) wird limitiert
Was ist ein Kanban-Board?
- Post-Its o.ä. = Arbeitselemente
- drei Abschnitte: "anstehend", "in Arbeit", "abgeschlossen"
Welche Gemeinsamkeiten haben Scrum und Kanban?
- Anforderungen in kleinen Paketen
- Pull-Systeme
- Voraussetzung: selbstorganisierende Teams
- agile Methoden, schlank
- Transparenz, um Prozesse fortlaufend zu verbessern
- häufige und schnelle releasefähige Auslieferung von Software-Inkrementen
Wodurch unterscheiden sich Kanban und Scrum?
Kanban | Scrum | |
Priorisierung | Optional | Vorgeschrieben |
Schätzungen | Optional | Vorgeschrieben |
Rollen | Keine | Vorgeschrieben |
Board | Kontinuierlich | Nur für einen Sprint |
Iterationen | Optional | In festem Rhythmus vorgeschrieben |
Anforderungsgröße | Keine beschrieben | Müssen in einen Sprint passen |
Diagrammtyp | Keiner vorgeschrieben | Burndown Chart |
Wie kann mit großen und verteilten Projekten umgegangen werden?
- jedes Team hat Scrum Master und Product Owner
- Product Owner bilden Product Owner Team (Organisation als Scrum Team möglich)
- ein Chief Product Owner (für Gesamtprojekt verantwortlich)
- Program Owner Team: kann mehrere Product Owner Teams koordinieren
Was sind Komponenten Teams?
- Teams, die Verantwortung für Subsystem übernehmen und weiterentwickeln
- Struktur des Projekts entspricht Softwarearchitektur
Was sind Vor- und Nachteile von Komponenten Teams?
Vorteile
Nachteile
- Konsistenz der Softwarestruktur leicht herstellbar
- doppelte Features können vermieden werden
- Teams bestehen aus Spezialisten
- Verantwortlichkeiten klar geregelt
Nachteile
- kein Komponententeam kann alleine Anforderungen in ein Produktinkrement umsetzen
- Fokussierung auf Subsystem
Was sind Vor- und Nachteile von Feature Teams?
Vorteile
Nachteile
- jedes Team setzt Endanwenderanforderungen um und hat Kundenfokus
- alle Teams werden aus Product Backlog gespeist
- jedes Team ist Alleskönner
- Integration und Planung einfacher und transparenter
Nachteile
- Integrität der Softwarearchitektur ist schwieriger herzustellen
- jedes Team muss interdisziplinär besetzt werden
- initiale Entwicklungsgeschwindigkeit langsamer
Was ist Scrum of Scrum?
- unterstützt projektübergreifende Selbstorganisation
- findet täglich statt (wie Daily Scrum)
- jedes Team sendet Vertreter
- Moderation durch Chief Product Owner
- teamübergreifende Hindernisse sollen beseitigt werden
- Meta Scrum: Struktur für Projekte mit mehreren Scrum of Scrum Besprechungen
Kartensatzinfo:
Autor: ronjabertsch
Oberthema: Agile Softwareentwicklung
Thema: Scrum
Veröffentlicht: 08.07.2017
Schlagwörter Karten:
Alle Karten (47)
keine Schlagwörter