agile developmentphp usergroup
TRANSCRIPT
AGILE SOFTWARE-ENTWICKLUNG
less is more
- Historie - Das Agile Manifest - Entstehung und Beteiligte - die vier Grundsätze - 12 Prinzipien agiler Software-Entwicklung - Agiles Management - Agile Teams - Tools, Methoden und Frameworks - Extreme Programming - Lean Development - Kanban - Scrum - Transforming the world of work - Rollen in Scrum: Scrum Team, Product Owner, Scrum Master - Time Boxes in Scrum: Estimation Meeting, Sprint Planning I+II, Sprint, Daily Scrum, Review, Retrospective - Fragments: User Stories, Story Points, Scrum Backlog, Sprint Backlog, Impediments
Inhalt
HistorieKlassisches Management! - Industrialisierung und Massenproduktion! - Taylor und Ford! - die Fabrik, der Arbeiter und das Fließband
Ford Fließband, Michigan,1927
HistorieProportionales Wachstum
HistorieProportionales Wachstum
HistorieProportionales Wachstum
Historie Unternehmens Management! - von der Fabrik zur Office-Struktur! - Abteilungen, Großraumbüros! - Hierarchie und Dienstwege
Büro, Californien, ca. 1950
HistorieManagement in der Software-Entwicklung! - Management by Objectives! - Lasten- und Pflichtenhefte! - Anforderungs-Management! - Reporting und Controlling
HistorieProportionales Wachstum
HistorieProportionales Wachstum
HistorieProportionales Wachstum
HistorieProportionales Wachstum
HistorieKonsequenzen aus diesem Miss-Management!Unternehmen richten Bürokratische Tools ein um ein geringe Anzahl an undisziplinierten Mitarbeitern zu kontrollieren, was die motivierten und disziplinierten Mitarbeiter veranlasst, den Job zu wechseln, was dazu führt, dass die Kontrollstrukturen erweitert werden müssen, was wiederum die noch verbleibenden guten Mitarbeiter zum Wechsel treibt, und so weiter....!
Jim Collins (2001)
Most companies build their bureaucratic rules to manage the small percentage of wrong people on the bus, which in turn drives away the right people on the bus, which then increases the need for more bureaucracy to compensate for incompetence and lack of discipline, which then further drives the right people away, and so forth. !!
Jim Collins (2001)
HistorieKlassische Methoden der Software Entwicklung! - Wasserfall und V-Modelle! - Liefertermine! - Projektplanung! - Qualität von Software
Anforderung
System-Analyse
System-Entwurf
Test
Integration
Abnahme
Produkt
Anforderung
System-Analyse
System-Entwurf
System Integration
Software IntegrationGrobentwurf
Feinentwurf
Implementierung
HistorieKlassische Methoden und ProjektplanungProjektplanung! - Risikomanagement! - Deadlines! - Projekt-Kosten! - Produkt-Qualität
HistorieKlassische Methoden und ProjektplanungProjektplanung! - Risikomanagement! - Deadlines! - Projekt-Kosten! - Produkt-Qualität
HistorieKlassische Methoden und ProjektplanungProjektplanung! - Risikomanagement! - Deadlines! - Projekt-Kosten! - Produkt-Qualität
HistorieKlassische Methoden und ProjektplanungProjektplanung! - Death March! - Useless Feature Overflow! - Instandhaltungs-Kosten! - Produkt-Qualität
Denver Airport baggage handling system
HistorieKlassische Methoden und ProjektplanungProjektplanung! - Death March! - Useless Feature Overflow! - Instandhaltungs-Kosten! - Produkt-Qualität
Denver Airport baggage handling system
$186.000.000,- Design & Konstruktion!!+ $1.000.000/Tag über Monate durch Reparaturen und Modifikationen!!Nur eine Fluglinie nutzte das System für ausgehende Flüge!!$1.000.000,- Einsparung, wenn das System nicht genutzt wird
HistorieKennzeichen klassischen Managements! - unveränderliche konservative Prozesse! - Bürokratische Überladung! - große Controlling Abteilungen! - viele inoperablen Hierarchie-Schichten! - lange Produkt-Release Zyklen! - lange Reaktions-Zeiten
HistorieKennzeichen klassischen Managements! - unveränderliche konservative Prozesse! - Bürokratische Überladung! - große Controlling Abteilungen! - viele inoperablen Hierarchie-Schichten! - lange Produkt-Release Zyklen! - lange Reaktions-Zeiten
HistorieKennzeichen klassischen Managements! - unveränderliche konservative Prozesse! - Bürokratische Überladung! - große Controlling Abteilungen! - viele inoperablen Hierarchie-Schichten! - lange Produkt-Release Zyklen! - lange Reaktions-Zeiten
HistorieKennzeichen klassischen Managements! - unveränderliche konservative Prozesse! - Bürokratische Überladung! - große Controlling Abteilungen! - viele inoperablen Hierarchie-Schichten! - lange Produkt-Release Zyklen! - lange Reaktions-Zeiten
Manifesto for Agile Software Development DAS AGILE MANIFEST
Februar 2001, Utah
James Grenning Jim Highsmith Andrew Hunt Ron Jeffries Jon Kern
Brian Marick
Kent Beck Mike Beedle
Arie van Bennekum Alistair Cockburn
Ward Cunningham Martin Fowler
Robert C. Martin Steve Mellor
Ken Schwaber Jeff Sutherland Dave Thomas
Extreme Programming, SCRUM, Dynamic System Development Method, Adaptive Software Development, Crystal, Feature-Driven Development, Pragmatic Programming, ...
Manifesto for Agile Software Development DAS AGILE MANIFEST
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Individuen und Interaktionen über Prozessen und Werkzeugen Funktionierende Software über umfassender Dokumentation
Zusammenarbeit mit dem Kunden über Vertragsverhandlungen Reagieren auf Veränderung über dem Befolgen eines Plans
Die 12 Prinzipien des Agilen ManifestsUnsere höchste Priorität ist es,
den Kunden durch frühe und kontinuierliche Auslieferungwertvoller Software zufrieden zu stellen.
!
Heisse Anforderungsänderungen selbst spätin der Entwicklung sind willkommen.
!
Agile Prozesse nutzen Veränderungenzum Wettbewerbsvorteil des Kunden.
!
Liefere funktionierende Software regelmäßig innerhalb weniger Wochen oder Monate und
bevorzuge dabei die kürzere Zeitspanne.
Die 12 Prinzipien des Agilen Manifests
Fachexperten und Entwickler müssen während des Projektes täglich zusammenarbeiten.
Errichte Projekte rund um motivierte Individuen. Gib ihnen das Umfeld und die Unterstützung, die sie benötigen
und vertraue darauf, dass sie die Aufgabe erledigen.
!
Die effizienteste und effektivste Methode, Informationen an und innerhalb eines Entwicklungsteams zu übermitteln,
ist im Gespräch von Angesicht zu Angesicht.
Die 12 Prinzipien des Agilen Manifests
Funktionierende Software ist daswichtigste Fortschrittsmaß.
!
Agile Prozesse fördern nachhaltige Entwicklung. Die Auftraggeber, Entwickler und Benutzer sollten ein
gleichmäßiges Tempo auf unbegrenzte Zeit halten können.
!
Ständiges Augenmerk auf technische Exzellenz undgutes Design fördert Agilität.
Die 12 Prinzipien des Agilen Manifests
Einfachheit -- die Kunst, die Menge nicht getaner Arbeit zu maximieren -- ist essenziell.
!
Die besten Architekturen, Anforderungen und Entwürfe entstehen durch selbstorganisierte Teams.
!
In regelmäßigen Abständen reflektiert das Team, wie es effektiver werden kann und passt sein
Verhalten entsprechend an.
Agiles Management!
Continuous Innovation
Product Adaptability
Reduced Delivery Schedules
People and Process Adaptability
Reliable Results
!
Agility is the ability to both create and respond to change in order to profit in a turbulent business environment.
Agility is the ability to balance flexibility and stability (Highsmith 2002).
Agiles Management!
Innovatoren des Managements:
Ricardo Semler, SEMCO Systems
John Mackey, Whole Foods Market
Bill Gore, W.L. Gore & Associates (GoreTex)
!
Schlüssel-Faktoren für den Erfolg:
SEMCO - Adaptive kontinuierliche Umstrukturierung
Whole Foods Market - Filial-Autonomie und Regionsbezug
W.L. Gore & Associates - Publicity driven projects
!
Agiles Management
Alles in einer Agilen Umgebung sollte der Philosophie folgen:!Starte schnell, schaffe etwas, bekomme Feedback, passe an!
Agiles Management
Alles in einer Agilen Umgebung sollte der Philosophie folgen:!Starte schnell, schaffe etwas, bekomme Feedback, passe an!
Frühzeitige inkrementelle Produktreife
Agiles Management
Alles in einer Agilen Umgebung sollte der Philosophie folgen:!Starte schnell, schaffe etwas, bekomme Feedback, passe an!
Frühzeitige inkrementelle ProduktreifeFrühzeitiger Rückfluss von Umsatz
Agiles Management
Alles in einer Agilen Umgebung sollte der Philosophie folgen:!Starte schnell, schaffe etwas, bekomme Feedback, passe an!
Frühzeitige inkrementelle ProduktreifeFrühzeitiger Rückfluss von Umsatz
Frühzeitige Resonanz am Markt
Agile TeamsAutonomie - das Team agiert selbstbestimmt!!
Disziplin - Einhaltung der selbstauferlegten Regeln!!
Verantwortung - Das „Chicken-Pig“-Business!!
Egalität - Jedes Team-Mitglied ist gleichberechtigt
Tools, Methoden, Frameworks
- Extreme Programming - Lean Development - Kanban - Scrum
Tools, Methoden, FrameworksExtreme Programming
Kommunikation im Vordergrund Anforderungen wachsen mit dem Produkt Prioritäten können sich ändern Kosten schwer abschätzbar Starres Regelwerk
Ausführliche Analysen vorab nötig: - Risiko-Analyse - Nutzen-Analyse - Marketing-Analyse
Tools, Methoden, FrameworksLean Development
1. Wert: Spezifiziere präzise den Wert deines Produktes!2. Wertstrom: Erkenne den Wertstrom!3. Flow: Erzeuge einen Wertstromfluss ohne Unterbrechungen!4. Pull: Lasse den Kunden den Takt der Bearbeitung bestimmen!5. Perfektion: Verbessere die Dinge kontinuierlich
Inkrementelles Weglassen von Unnötigem
Tools, Methoden, FrameworksKanban
Reglementierung paralleler Arbeit!Erhöhung der Task-Fertigstellungsgeschwindigkeit !Auslastungsreduzierung der Entwickler!Task-Fokussierung
• Visualisiere den Fluss der Arbeit!• Begrenze die Menge angefangener Arbeit!• Miss und steuere den Fluss!• Mache die Regeln für den Prozess explizit!• Verwende Modelle, um Chancen für kollaborative
Verbesserungen zu erkennen
Tools, Methoden, FrameworksScrum
Tools, Methoden, FrameworksScrum
Scrum Team Product Owner Scrum Master
Tools, Methoden, FrameworksScrum
Estimation Meeting !
Sprint Planning I+II !
Sprint !
Daily Scrum !
Review !
Retrospective !
!4-8 Stunden !jeweils 4 Stunden !2 - 6 Wochen !15 Minuten !bis zu 4 Stunden !lang es dauert
Tools, Methoden, FrameworksScrum
User Stories - definierte Syntax; klarer Inhalt !
Story Points - Konvention; unvergleichbare Einheit !
Scrum Backlog - unvollständig; umpriorisierbar !
Sprint Backlog - vollständig; umsetzbar !
Impediments - unlösbar ; von aussen einfallend
Tools, Methoden, FrameworksScrum
Kontakt
Alexander Wenzel !freshcells system engineering GmbH [email protected]