Agile Softwareentwicklung mit verteilten Teams (eBook)
240 Seiten
dpunkt (Verlag)
978-3-86491-082-1 (ISBN)
Jutta Eckstein ist Beraterin und Trainerin für agile Softwareentwicklung, Kommunikations-Managerin sowie Partner von IT Communications. Ihr Wissen über agile Prozesse basiert auf mehr als zehn Jahre langer Erfahrung bei der Entwicklung objektorientierter Anwendungen. In Projekten mit bis zu 300 Personen lag ihr Schwerpunkt auf der Einführung und Umsetzung angemessener (agiler) Prozesse. Sie ist Mitglied der Agile Alliance und unterstützt das Agile Manifest. Sie hält Seminare und ist Vortragende auf mehreren Konferenzen (z.B. OOP, Jax). Mehr Informationen findet man unter jeckstein.de oder it-communication.de.
Jutta Eckstein ist Beraterin und Trainerin für agile Softwareentwicklung, Kommunikations-Managerin sowie Partner von IT Communications. Ihr Wissen über agile Prozesse basiert auf mehr als zehn Jahre langer Erfahrung bei der Entwicklung objektorientierter Anwendungen. In Projekten mit bis zu 300 Personen lag ihr Schwerpunkt auf der Einführung und Umsetzung angemessener (agiler) Prozesse. Sie ist Mitglied der Agile Alliance und unterstützt das Agile Manifest. Sie hält Seminare und ist Vortragende auf mehreren Konferenzen (z.B. OOP, Jax). Mehr Informationen findet man unter jeckstein.de oder it-communication.de.
Inhaltsverzeichnis 6
Vorwort 12
Danke 14
1 Einführung 16
1.1 Fokus dieses Buches 17
1.1.1 Projekterfahrung 17
1.1.2 Wem hilft dieses Buch 18
1.1.3 Was dieses Buch nicht beinhaltet 18
1.2 Fahrplan für das Buch 19
2 Agilität und verteilte Projekte 22
2.1 Verteilte Entwicklung verstehen 22
2.1.1 Beteiligung mehrerer Entwicklungsstandorte 23
2.1.2 Verteilte und verstreute Teams 23
2.1.3 Große Projekte 24
2.1.4 Beteiligung verschiedener Firmen 25
2.1.5 Verschiedene Strukturen 26
2.1.6 Weit entfernte Kunden 27
2.1.7 Zentrale Koordinierung oder globale Integration 27
2.1.8 Distanz überwinden 28
2.2 Agilität verstehen 29
2.2.1 Wertesystem 29
2.2.2 Systemische Vorgehensweise 30
2.2.3 Risikoreduzierung 31
2.2.4 Agil: Nicht notwendigerweise produktiver 32
2.2.5 Mehr als nur Praktiken 32
2.2.6 Weder chaotisch noch undiszipliniert 32
2.3 Einfluss agiler Prinzipien auf verteilte Entwicklung 33
2.4 Zusammenfassung 36
3 Teambildung 38
3.1 Featureteams 40
3.1.1 Zusammensitzende oder standortübergreifende Teams 41
3.1.2 Verstreute Teams 43
3.1.3 Ein Team formen 44
3.2 Rollen 47
3.2.1 Konstellation eines Featureteams 47
3.2.2 Architekt und Chefarchitekt 49
3.2.3 Coach 53
3.2.4 Product Owner oder Produktmanager 55
3.2.5 Projektleiter 58
3.2.6 Schlüsselrollen sitzen mit ihren Teams zusammen 59
3.3 Konzeptionelle Integrität sicherstellen 60
3.3.1 Startteam hat Vorbildfunktion 60
3.3.2 Technisches Serviceteam 60
3.4 Zusammenfassung 61
4 Kommunikation und Vertrauen 64
4.1 Vertrauen und gegenseitiger Respekt 65
4.1.1 Grenzwert für vertrauensvolle Beziehungen 66
4.1.2 Wechselnde Treffpunkte 67
4.1.3 Vokabular 67
4.2 Kommunikation 69
4.2.1 Persönliche Teammeetings 69
4.2.2 Persönliche Projektmeetings 70
4.2.3 Mitarbeiterrotation 71
4.2.4 Kommunikation hat ihren Preis 71
4.2.5 Kenntnis des Kommunikationsflusses 72
4.3 Kulturelle Unterschiede 73
4.3.1 Fokus auf Gemeinsamkeiten 74
4.3.2 Gestaltung einer Kultur 75
4.3.3 Realistische Planung 77
4.3.4 Verantwortung übernehmen 77
4.3.5 Probleme ansprechen 78
4.3.6 Ehrliches Feedback geben 79
4.3.7 Lärm 80
4.3.8 Humor 81
4.3.9 Sorgfältige Auswahl der Kommunikationsmedien 81
4.4 Zusammenfassung 83
5 Standorte in Verbindung halten 84
5.1 Kommunikationsvermittler 85
5.1.1 Kommunikationsvermittler als Vertrauensperson 86
5.1.2 Kompetenzen eines Kommunikationsvermittlers 86
5.1.3 Management durch Herumfliegen 86
5.2 Botschafter 87
5.2.1 Standorte repräsentieren 88
5.2.2 Eigenschaften und Kompetenzen eines Botschafters 89
5.2.3 Terminplan 90
5.2.4 Konkrete Aufgaben 90
5.3 Soziale Verbindungen 91
5.3.1 Gemeinsam feiern 91
5.3.2 Die Kraft der Bilder 91
5.3.3 Am Leben der anderen teilhaben 92
5.3.4 Reisen angenehmer machen 92
5.4 Werkzeuge 93
5.4.1 Direkte Verbindungen 93
5.4.2 Synchron versus asynchron 94
5.4.3 Audio oder Video 95
5.4.4 Instant Messaging 96
5.4.5 E-Mail 97
5.4.6 Virtueller Raum 98
5.4.7 Gemeinsames Repository 98
5.4.8 Wiki und andere Kollaborationsplattformen 98
5.5 Zusammenfassung 100
6 Entwickeln und Ausliefern 102
6.1 Iterationen 103
6.1.1 Iterationslänge 103
6.1.2 Das Konzept von done-done 104
6.1.3 Iterationen als Herzschlag 105
6.1.4 Verzögern der Auslieferung 105
6.2 Release 107
6.2.1 Release-Iteration 107
6.2.2 Releasestandort 108
6.3 Integration und Build 108
6.3.1 Lokal funktionierende Integration 109
6.3.2 Integration erfordert Aufwand 109
6.3.3 Ein fehlgeschlagener Build stoppt die Produktion 111
6.3.4 Integration als Herz des Projekts 112
6.4 Infrastruktur 113
6.4.1 Prozesse und Werkzeuge für Integration und Build 113
6.4.2 Konfigurationsmanagement 115
6.4.3 Strom 118
6.4.4 Netzwerk 118
6.4.5 Sicherheit 119
6.4.6 Werkzeuge 120
6.5 Zusammenfassung 120
7 Der Geschäftswert ist das Ziel 122
7.1 Steuerung mithilfe wertvoller Funktionalitäten 122
7.1.1 Verbindung zum realen Kunden 123
7.1.2 Iterationsvorbereitung 125
7.1.3 Anforderungen verstehen 127
7.1.4 Benötigte Dokumentation als Anforderung behandeln 128
7.2 Teamgeschwindigkeit 129
7.2.1 Mit unbekannter Teamgeschwindigkeit planen 129
7.2.2 Schätzeinheit 131
7.2.3 Planungspoker 132
7.2.4 Unterschiedliche Teamgeschwindigkeiten 135
7.3 Iterationsplanung 136
7.3.1 Featureteams planen individuell 136
7.3.2 Planungstreffen 137
7.3.3 Termin für das Planungstreffen 138
7.3.4 Handfeste Planungswerkzeuge 139
7.4 Iterationsverfolgung 140
7.4.1 Planungs- und Nachverfolgungswerkzeuge 140
7.4.2 Ziele im Fokus behalten 141
7.5 Umgang mit Änderungen 143
7.5.1 Die Iterationslänge bestimmt das Antwortzeitverhalten 144
7.5.2 Mit Änderungswünschen umgehen 144
7.5.3 Die Teamstruktur verändern 145
7.6 Projektplan 146
7.6.1 Releaseplanung 146
7.6.2 Prognosen 148
7.6.3 Release versus Meilenstein 149
7.7 Zusammenfassung 150
8 Feedback 152
8.1 Den Kunden involvieren 153
8.1.1 Wer ist der Kunde? 153
8.1.2 Kunde auf Distanz 154
8.1.3 Kundenpräsentation 155
8.2 Rückblick 155
8.2.1 Iterationsrückblick 156
8.2.2 Rückblick - verteilt individuell versus gemeinsam persönlich 156
8.2.3 Releaserückblick 158
8.3 Retrospektive 159
8.3.1 Individuelle Featureteamretrospektive 161
8.3.2 Gemeinsame Projektteamretrospektive 162
8.3.3 Gemeinsame Standortretrospektive 164
8.3.4 Durchführung einer Retrospektive 164
8.3.5 Virtuelle Retrospektive 165
8.3.6 Teilnehmer 167
8.3.7 Weniger ist mehr und andere Tricks 168
8.3.8 Gegen die Langeweile - Moderationstechniken 169
8.4 Metriken 172
8.4.1 Fortschritt messen 173
8.4.2 Schätzqualität messen 175
8.4.3 Testbasis vergrößern 176
8.5 Zusammenfassung 176
9 Praktiken 178
9.1 Entwicklungspraktiken 178
9.1.1 Paarweises Programmieren 179
9.1.2 Unit Test 181
9.1.3 Refactoring 181
9.1.4 Gemeinsame Verantwortlichkeit 186
9.1.5 Gemeinsame Programmierrichtlinien 186
9.1.6 Features durch Tests übermitteln 187
9.1.7 Mühe mit Praktiken von der Stange 191
9.2 Prozesspraktiken 192
9.2.1 Tägliche Synchronisation 192
9.2.2 Projektweite Synchronisation 193
9.2.3 Verstreute Synchronisation 195
9.3 Entwicklungskultur 200
9.3.1 Gemeinsame Praktiken erfassen 200
9.3.2 Vereinbarte Praktiken ändern 201
9.3.3 Unterschiedliche Entwicklungskulturen 202
9.3.4 Standortübergreifend den Prozess mit CMMI oder ISO harmonisieren 203
9.3.5 Gleiches Recht für alle 205
9.4 Zusammenfassung 206
10 Agilität in ein verteiltes Projekt einführen 208
10.1 Lokal beginnen - global wachsen 209
10.1.1 Projektstart 210
10.1.2 Frühzeitige Iterationen 211
10.1.3 Ein Team - wechselnde Standorte 212
10.2 Teams und Standorte vergrößern 213
10.2.1 Projektstart in der Timebox 214
10.2.2 Kick-off 214
10.2.3 Die Projektkultur verbreiten 216
10.2.4 Kulturelles Training 216
10.2.5 Neue Mitarbeiter integrieren 218
10.3 Einen agilen Prozess in ein existierendes Projekt einführen 218
10.3.1 Einer nach dem anderen oder alle auf einmal 219
10.3.2 Veränderung der Teamstruktur 219
10.3.3 Mehr und bessere Coachs sind vonnöten 220
10.3.4 Schätzungen und Geschwindigkeit 221
10.3.5 Einzelkämpfer 222
10.4 Zusammenfassung 223
Nachwort 224
Glossar 226
Referenzen 230
Index 236
Erscheint lt. Verlag | 1.3.2012 |
---|---|
Verlagsort | Heidelberg |
Sprache | deutsch |
Themenwelt | Informatik ► Software Entwicklung ► Objektorientierung |
Schlagworte | agile Entwicklungstechniken • agile Grundlagen für Entwickler • Agile Softwareentwicklung • agiles Team • Agiles Vorgehen • Arbeitsteilung • Architektur und emergentes Design • Aufgaben und Situationen im Projekt • Business Intelligence • Clean Code • Entwicklungsmanagement • IT-Organisation • Konfigurationsmanagement für agile Teams • kontinuierliche Integration • Kontinuierliches Lernen • Lean • Offshoring • Outsourcing • Projektmanagement • Prozessmanagement • QM • Qualitätsmanagement • Refactoring • Scrum • Softwareentwickler • Softwareentwicklung • Systemarchitektur • Testen • testgetriebenes Design • Zusammenarbeit mit Product Owner und Kunden |
ISBN-10 | 3-86491-082-X / 386491082X |
ISBN-13 | 978-3-86491-082-1 / 9783864910821 |
Haben Sie eine Frage zum Produkt? |
![PDF](/img/icon_pdf_big.jpg)
Größe: 2,6 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich