O'Reilly eBook
JETZT ONLINE BESTELLEN
1. Auflage Dezember 2007
ISBN 978-3-89721-791-1
432 Seiten, PDF ca.13.7 MB
EUR36.00
Gedruckte Ausgabe:
Weitere Informationen zu diesem Produkt
Inhaltsverzeichnis |
Index |
Rezensionen |
Ihr Feedback |
Inhaltsverzeichnis
Einleitung XV
Teil I
Die Methodik agiler Softwareentwicklung
Einführung in die agile Entwicklung 3
- Geschichte der agilen Entwicklung 4
- Das Agile Manifest 4
- Die Prinzipien 6
Die Vorteile agiler Entwicklung 13
- Die Kundensicht 13
- Programmierersicht 16
- Die Projektsicht 19
- Soziale und betriebswirtschaftliche Sicht 21
Agile Ansätze und traditionelles Vorgehen - eine Abgrenzung 23
- Prozessmodelle 23
- Traditionelle Modelle 24
- Was agile Entwicklung nicht ist 26
- Ausprägungen agiler Entwicklung 26
Dimensionen agiler Entwicklung 45
- Motivation 45
- Kommunikation 57
- Team 64
- Wissen 69
- Zeit 76
- Die größten Verschwender 79
Die Durchführung 81
- Aufbauorganisation 81
- Das Release 83
- Die Iteration 91
- Pair Programming 93
- Stand-up-Meetings 94
- Konfigurationsmanagement 95
- Test-Driven Development 97
- Continuous Integration (CI) 99
- Refactoring 102
- Standards 102
- Tracking 105
- Abschluss 109
Agile Prozesse einführen 112
- Wer überzeugt werden muss 112
- Einführungsstrategien 114
- Fallstricke 117
- Besondere Situationen 120
Teil II
Eine agile technische Infrastruktur 123
Ant-Grundlagen 125
- Installationshinweise 126
- Terminologie und Konzept 126
Versionskontrolle mit Subversion 128
- Versionskontrolle 128
- Subversion 129
- Installation und Konfiguration 131
- Nutzung 136
- Revisionen 142
- Versionierung (Tags) 143
- Separate Entwicklungszweige (Branches) 145
- Locking 148
- Automatisierte Nutzung mit Ant 150
- Zusätzliche Werkzeuge 154
- Zusammenfassung 156
Komponententests mit JUnit 157
- Komponententests 158
- JUnit 158
- Ein erstes Beispiel 159
- JUnit 3.x vs. JUnit 4.x 164
- Testanatomie 167
- Instanzen und Abhängigkeiten 170
- Testaggregation und Nebenläufigkeit 171
- Welche Artefakte sollte ich testen? 176
- Testautomatisierung und kontinuierliche Integration mit Ant 178
- Test-Driven Development mit JUnit 185
- Zusammenfassung 194
Testabdeckung mit EMMA und JUnit 195
- Installation und Beispiel 195
- Automatisierte Nutzung via Ant 198
- Testabdeckung 202
- Zusammenfassung 206
Der Einsatz von Mock-Objekten mit EasyMock 207
- Von Mocks und Dummys 207
- EasyMock installieren 209
- Erstes Szenario: »Wegmocken« von Callbacks 210
- Zweites Szenario: »Wegmocken« einer ressourcenintensiven DB-Schnittstelle 218
- Zusammenfassung 222
Komponententests mit TestNG 223
- Steckbrief 223
- Ein Beispiel: Agile, nebenläufige, gruppierte Verarbeitung 225
- Aufruf der Tests: Das Build-Skript 236
- Zusammenfassung 246
GUIs testen mit Jemmy 247
- Swing 247
- Einführung in Jemmy 252
- Ein ausführliches Beispiel: Testen der Filterung bei Tabellen 253
- Zusammenfassung 264
Webanwendungen testen mit Selenium 265
- Architektur von Webanwendungen 265
- Die Arbeitsweise von Selenium 268
- Selenium IDE 269
- Selenium RC - Remote Control 273
- Kontinuierliche Integration mit Ant 278
- Zusammenfassung 282
Akzeptanztests mit Fit 283
- Akzeptanztests 283
- Einführung in Fit 284
- Vorgehen 284
- Die verschiedenen Fixtures 285
- Ein Rundgang: ColumnFixture 286
- Zusammenfassung 291
Akzeptanztests für Webanwendungen mit WebTest 292
- Überblick 292
- Installation 293
- Ein erstes Beispiel: Der WebTest-Selbsttest 293
- Ein weiteres Beispiel: Auf Googles Spuren 296
- Wiederverwendung 299
- Reporting 300
- Kontinuierliche Integration 305
- Zusammenfassung 311
Projektkommunikation mit Trac 316
- Wikis 316
- Trac 318
- Zusammenfassung 324
Ant - Teil 2: Praktische Einsatzszenarien 326
- Das fundamentale Ant-Gerüst für einen Entwicklungszyklus 327
- Erstes Szenario: »Continuous Integration« auf dem Integrationsrechner 331
- Zweites Szenario: »Continuous Integration« auf einem Arbeitsplatzrechner 331
- Drittes Szenario: »Single Code Basis«-Redundanzen eliminieren unter CVS 332
- Viertes Szenario: Coding Guidelines überprüfen 338
- Fünftes Szenario: HotSwap 345
- Best Practices und Ant-Tipps 347
- Zusammenfassung 349
Kontinuierliche Integration mit CruiseControl 351
- Der pragmatische Ansatz: cron 351
- Der umfassende Ansatz: CruiseControl 352
- Zusammenfassung 360
Der Einsatz von Maven für Build-Prozesse 362
- Funktionsumfang 363
- Architektur 364
- Prinzipien 365
- Die ersten Schritte 367
- Das POM 367
- Phase und Goal 370
- Lifecyles 371
- Agile Entwicklung mit Maven 372
- Zusammenfassung 383
Anhang: Weiterführende Literatur 387
- Zur Methodik 387
- Peopleware - der Faktor Mensch 388
- Testen 388
- Fit 388
- Refactoring 388
- TestNG 388
- Ant, Maven 389
- Subversion 389
Index 391
