Book description
Was lernen Sie mit diesem Buch?
Haben Sie sich schon einmal gefragt, was es mit testgetriebener Entwicklung auf sich hat? Oder auf welcher Basis es die richtig guten Consultants schaffen, gewaltige Stundensätze zu kassieren? Vielleicht sind Sie au
Table of contents
- Copyright
- Widmung
- Die Autoren von Software entwicklung von Kopf bis Fuß
- Über die Übersetzer dieses Buchs (die bei aller Berühmtheit nicht auf der Straße erkannt werden wollen)
- Wie man dieses Buch benutzt Einführung
-
Gute Software entwickeln Den Kunden zufrieden stellen
- Toms Touren gehen online
- Die meisten Projekte starten mit ZWei wichtigen Fragen
- Entwicklung nach dem »Big Bang« – Ansatz
- Wir spulen vor: zwei Wochen später
- Big Bang-Ent wicklung endet meist mit einer üblen BAUCHLANDUNG
- Gute Software entwickeln
- Das Ziel mit ITERATIONEN erreichen
- Jede Iteration ist ein Mini-Projekt
- Jede Iteration entspricht QUALITÄTS-Software
- Der Kunde WIRD et was verändern
- Es ist Ihre Aufgabe, Anpassungen vorzunehmen
- Da gibt es aber ein paar MÄCHTIGE Probleme ...
- Iteration berücksichtigt Veränderungen automatisch (irgendwie jedenfalls)
- Ihre Software ist erst fertig, wenn sie VERÜFFENTLICHT ist
-
Anforderungen sammeln Wissen, was der Kunde will
- Ikarus Shuttle-Trips wird modernisiert
- Sprechen Sie mit Ihrem Kunden, um an MEHR Informationen zu kommen
- Blueskying – mit dem Kunden Wolken schieben
- Manchmal endet Blueskying so ...
- Finden Sie heraus, wie sich die Leute KONKRET verhalten
- Ihre Anforderungen müssen KUNDENzentriert sein
- Kundenfeedback zum Ent wickeln von Anforderungen nutzen
- User-Stories definieren das WAS Ihres Projekts ... Abschätzungen definieren das WANN
- Bürogespräch
- Spielen wir das Planungsspiel
- Machen Sie Annahmen den Prozess
- Für eine User-Story ist eine GROSSE Abschätzung eine SCHLECHTE Abschätzung
- Das Ziel heißt konvergenz
- Der Iterationszyklus von der Anforderung bis zur Abschätzung
- Jetzt endlich sind Sie so weit und können das gesamte Projekt abschätzen ...
-
Projektplanung Mit Planung zum Erfolg
- Kunden wollen ihre Software SOFORT!
- Prioritäten festlegen – mit dem Kunden zusammen
- Wir wissen, was in Meilenstein 1.0 hineinkommt (ja, vielleicht)
- Prüfen Sie die Abschätzung für Meilenstein 1.0 auf Herz und Nieren
- Wenn die Features nicht passen, überarbeiten Sie die Prioritäten
- Manchmal bedeuten mehr Leute weniger Ertrag
- Arbeiten Sie sich zu einem vernünftigen Meilenstein 1.0 vor
- Bei Iterationen liegt die Würze in der Kürze
- Vergleich von Planung und Realität
- Velocity berücksichtigt overhead in Ihren Abschätzungen
- Programmierer rechnen in UTOPISCHEN Tagen ...
- Ent wickler rechnen in REALEN Tagen ...
- Wann dauert Ihre Iteration zu lange?
- Befassen Sie sich mit dem Durchsatz, BEVOR Sie Iterationen einteilen
- Zeit für eine Beurteilung
- Mit völlig angener vten Kunden umgehen
- Die große Tafel da an Ihrer Wand
- Wie Sie den Leuten in Ihrem Team das Leben vermiesen
-
User-Stories und Tasks Jetzt aber an die Arbeit
- Dürfen wir vorstellen? – binHinUndWeg
- Addieren sich Ihre Tasks zum richtigen Ergebnis?
- Tragen Sie nur die Arbeit ab, die noch Übrig ist
- Hängen Sie Ihre Tasks an die Tafel
- Fangen Sie an, an Ihren Tasks zu arbeiten
- Ein Task ist erst dann IN ARBEIT, wenn er in Arbeit ist
- Und wenn ich an zwei Sachen gleichzeitig arbeite?
- Ihr erstes Stand-up-Meeting ...
- Task 1: die »Date«-Klasse anlegen
- Stand-up-Meeting: Tag 5, also Ende von Woche 1 ...
- Stand-up-Meeting: Tag 2, Woche2
- Wir unterbrechen dieses Kapitel ...
- Ungeplante Tasks müssen festgehalten werden
- Uner wartete Tasks lassen Ihren Burndown-Verlauf ansteigen
- Durchsatz ist hilfreich, aber ...
- Sie haben eine Menge zu tun ...
- ... aber Sie wissen GENAU, wo Sie stehen
-
Gut genug-Design Fertig werden – mit gutem Design
- binHinUndWeg steckt in ernsten Schwierigkeiten ...
- Dieses Design verstößt gegen das Prinzip der einen Verantwortlichkeit
- Mehrere Verantwortlichkeiten im Design aufspüren
- Von mehreren Verant wortlichkeiten zu einer Verant wortlichkeit übergehen
- Ihr Design sollte dem SRP folgen, aber ebenso dem DRY-Prinzip ...
- Das Post-Refactoring-Stand-up-Meeting ...
- Ungeplante Tasks sind trotz allem immer noch Tasks
- Die Demo ist selbst Teil Ihres Tasks
- Wenn alles erledigt ist, ist die Iteration beendet
-
Versionskontrolle Defensives Programmieren
- Sie haben einen neuen Auftrag – BeatBox Pro
- Und jetzt die Arbeit am GUI ...
- Und ein schneller Test ...
- Dasselbe macht Jan ...
- Führen Sie Ihrem Kunden die neue BeatBox vor
- Stand-up-Meeting
- Kommen wir zum Thema VERSIONSKONTROLLE
- Zuerst legen Sie Ihr Projekt an ...
- ... anschließend können Sie code ein- und auschecken
- Die meisten Werkzeuge zur Versionskontrolle versuchen, Probleme für Sie zu lösen
- Der Ser ver versucht, Ihre änderungen ZUSAMMENZUFÜHREN
- Wenn Ihre Software die Änderungen nicht zusammenführen kann, meldet sie einen Konflikt
- Das zeigen Sie jetzt dem Kunden ...
- Noch mehr Iterationen, noch mehr Stories ...
- Stand-up-Meeting
- Wir haben mehr als eine Version von unserer Software ...
- Gute commit-Kommentare machen es Ihnen leichter, ältere Software zu finden
- Jetzt können Sie Version 1.0 auschecken
- (Notfall-)Stand-up-Meeting
- Geben Sie Ihren Versionen ein Tag
- Tags, Zweige und Trunks ... au weia!
- Version 1.0 korrigieren ... diesmal aber wirklich!
- Wir haben jetzt ZWEI codestämme.
- Wann man KEINEN Zweig anlegen sollte ...
- Versionskontrolle kann nicht dafür sorgen, dass Ihr code wirklich funktioniert ...
-
Code erstellen Lasche A durch Schlitz B stecken ...
- Entwickler sind keine Gedankenleser
- Ihr Projekt in einem Schritt erstellen
- Ant: Ein Build-Tool für Java-Projekte
- Projekte, Properties, Targets, Tasks
- Gute Build-Skripte ...
- Gute Build-Skripte gehen über das Übliche HINAUS
- Auch Ihr Build-Skript ist code
- Neuer Ent wickler, Klappe, die zweite
- Werkzeuge für Ihre Softwareentwickler-Kiste
-
Tests und kontinuierliche Integration Damit nichts schiefgeht
- Schiefgehen tut es IMMER
- Ihr System können Sie auf dreierlei Weise betrachten
- Black-Box-Tests konzentrieren sich auf EINGABE und AUSGABE
- Grey-Box-Tests bringen Sie NÄHER an den code
- White-Box-Tests nutzen Insider wissen
- ALLES in einem Schritt testen
- Tests mit einem Test-Framework automatisieren
- Führen Sie Ihre Tests mit dem Framework aus
- CI im Griff mit cruisecontrol
- Tests sichern, dass alle funktioniert ... oder?
- Den gesamten code testen heißt, ALLE ZWEIGE zu testen
- Mit einem Abdeckungsbericht prüfen, was abgedeckt wird
- Eine gute Abdeckung zu erreichen ist nicht immer leicht ...
-
Testgetriebene Entwicklung Ihren Code verantwortlich machen
- Testen Sie ERST, nicht zum Schluss
- Wir werden also ERST testen ...
- Willkommen bei der testgesteuerten Entwicklung
- Ihr erster Test ...
- ... schlägt kläglich fehl.
- Machen Sie Ihre Tests GRÜN
- Rot, grün, Refactoring ...
- Bei TDD LENKEN Tests Ihre Implementierung
- Gehen Sie weiter, wenn Ihr Test erfolgreich ist!
- Andere Aufgabe, gleiches Verfahren
- Rot: (Scheiternde) Tests schreiben
- Grün: code schreiben, damit der Test erfolgreich ist
- Einfachheit heißt, Abhängigkeiten zu vermeiden
- Schreiben Sie immer testbaren code
- Schauen Sie sich Ihren Entwurf an, wenn das Testen schwer wird
- Das Strategy-Muster ermöglicht mehrere Implementierungen eines Interface
- Halten Sie Ihren Testcode bei Ihren Tests
- Testen führt zu besserem code
- Mehr Tests bedeuten immer viel mehr code
- Strategy-Muster, lockere Bindung, Mock-objekte ...
- Wir brauchen viele unterschiedliche, aber ähnliche objekte
- Können wir nicht objekte generieren?
- Ein Mock-objekt vertritt echte objekt
- Mock-objekte sind funktionierende objekt vertreter
- Gute Software ist testbar
- Es ist nicht immer leicht, grün zu sein ...
- Ein Tag im Leben eines testgesteuerten Entwicklers
-
Eine Iteration abschließen Alles fügt sich zusammen ...
- Ihre Iteration ist fast abgeschlossen ...
- ... aber es gibt eine Menge, was Sie noch tun könnten
- Systemtests sind NOTWENDIG ...
- ... aber WER führt sie durch?
- Systemtests benötigen ein vollständiges System
- Gute Systemtests erfordern ZWEI Iterationszyklen
- Mehr Iterationen führen zu mehr Problemen
- 10 Kennzeichen effektiver Systemtests
- Leben (und Sterben) eines Bugs
- Sie haben also einen Bug gefunden ...
- Anatomie eines Bug-Reports
- Aber es gibt eine Menge Dinge, die Sie noch tun KÖNNTEN ...
- Zeit für den Iterationsrückblick
- Einige Fragen für den Iterationsrückblick
- Eine ALLGEMEINE Prioritätsliste zur Erledigung ZUSÄTZLICHER Dinge ...
-
Die nächste Iteration Es ist nicht kaputt ... reparieren Sie es trotzdem
- Was ist funktionierende Software?
- Sie müssen die nächste Iteration planen
- Der Durchsatz trägt dem WAHREN LEBEN Rechnung
- Es geht IMMER noch um den Kunden
- Auch die Software eines anderen ist BLOß Software
- Kundenzustimmung? Prüfen!
- Ihren code testen
- Houston, wir haben ein ernsthaf tes Problem ...
- Vertrauen Sie KEINEM
- Sie ohne Ihren Prozess
- Sie mit Ihrem Prozess
-
Bugs beheben wie ein Profi
- Zunächst müssen Sie mit dem Kunden reden
- Priorität eins: Die Dinge erstellbar machen
- Wir könnten den code reparieren ...
- ... müssen aber die Funktionalität reparieren
- Herausfinden, welche Funktionalität funktioniert
- JETZT wissen Sie, was nicht funktioniert
- Was würden Sie tun?
- Spike-Test zum Abschätzen
- Was sagen Ihnen die Ergebnisse der Spike-Tests?
- Das Bauchgefühl Ihres Teams zählt
- Geben Sie Ihrem Kunden die Bug-Fix-Abschätzung
- Die Dinge sehen gut aus ...
- ... und Sie schließen die Iteration erfolgreich ab!
- UND was am wichtigsten ist der Kunde ist zufrieden
- Das wahre Leben Ein Prozess fürs Leben
- Was übrig bleibt Die Top Five der Themen (die wir nicht behandelt haben)
- Techniken und Prinzipien Werkzeuge für den erfahrenen Softwareentwickler
Product information
- Title: Softwareentwicklung von Kopf bis Fuß
- Author(s):
- Release date: July 2008
- Publisher(s): O'Reilly Verlag
- ISBN: 9783897218628
You might also like
book
HTML5-Programmierung von Kopf bis Fuß
"HTML5-Programmierung von Kopf bis Fuß" vermittelt in bewährter Von Kopf bis Fuß-Tradition anhand zahlreicher praktischer Beispiele, …
book
JavaScript-Programmierung von Kopf bis Fuß
Etwas Abwechslung gefällig? JavaScript-Programmierung von Kopf bis Fuß ist der fantasievolle Beweis dafür, dass Fachliteratur keineswegs …
book
Programmieren von Kopf bis Fuß
Haben Sie sich auch schon gefragt, ob es möglich ist, mithilfe eines Buchs das Programmieren zu …
book
Datenanalyse von Kopf bis Fuß
Natürlich kann man Geschäftsentscheidungen aus unternehmerischem Instinkt treffen. In der Regel ist es aber doch sehr …