Der Entwicklerkosmos / Die vier Dimensionen / Die Dimension ‘Wissen’

Test Driven Development

2. Wozu Refactoring?

Refactoring

Refactoring ist ein Umbau der Software, der nur ihre innere Qualität (z.B. die Codequalität) ändert und die ihre äußere Qualität (die Funktionalität) unverändert beibehält.

Durch Verbesserung der inneren Qualität (d.h. durch gutes Refactoring) werden Fehler früher erkannt und können schneller und risikoärmer behoben werden. Zusätzlich können Funktionserweiterungen mit geringerem Aufwand realisiert werden. Nach der Design Stamina Hypothesis (Altenlasten-Hypothese) von Martin Fowler muss kontinuierlich Refactoring betrieben werden, um dauerhaft kosteneffektive Software entwickeln zu können.

In seinem Beitrag Workflows Of Refactoring illustriert Martin Fowler die Anwendung von Refactoring anhand einer alten Metapher. In verschiedenen Phasen eines TDD-Zyklus schlüpft der Entwickler in zwei sehr verschiedene Rollen. The Helm repräsentiert die Arbeit auf Bauarbeiter, der Panamahut die Arbeit als Aufräumer. Die Aufgabenstellung beim Refactoring ist so anders als beim übrigen Entwickeln, dass es hilfreich ist, ganz bewußt zwischen den Rollen zu wechseln, um das aktuelle kurzfristige Ziel nicht aus dem Auge zu verlieren.


Verwandte Themen:
Die Altlasten-Hypothese
Metapher der 2 Hüte


[ < ]       [ 1 ] [ 2 ] [ 3 ] [ 4 ]       [ > ]

Zurück


Wir freuen uns über Kommentare zu dieser Seite:

Verfassen Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*