In einer idealen Welt wird Software von Beginn an durchdacht entwickelt und bei jeder Komponente auf eine gute Testbarkeit geachtet. Der Alltag eines Softwareentwicklers sieht freilich anders aus: Monolithischer, schwer verständlicher, unzureichend dokumentierter und fehleranfälliger Code aus vergangenen Tagen muss gefixt oder um neue Funktionalitäten erweitert werden – und das am besten gestern. Gleichzeitig darf bestehende Funktionalität jedoch unter gar keinen Umständen angefasst werden, was zu einer Art "Fear Driven Development" führt, das jegliche Bemühungen zur Verbesserung der Code-Qualität im Keim erstickt. Um die Wartbarkeit von Altanwendungen langfristig zu erhalten und gleichzeitig sicherzustellen, dass sich gewünschtes Verhalten nicht unbeabsichtigt verändert, werden strukturelle oder gar semantische Refactorings zur Verbesserung des automatisierten Testens aber unabdingbar.

Im Rahmen dieses Events wollen wir uns dabei nicht nur geeignete Refactoring-Techniken aus dem praktischen Alltag anschauen, sondern uns auch über die Organisation des Refactorings selbst unterhalten.