Mit Werkzeugen von morgen Software von gestern systematisch verbessern

Viele von uns kennen das: Nichts ist dokumentiert, das Projektverzeichnis ist ein einziges Chaos, die ursprünglichen Entwickler sind weg und das Wartungsteam scheint nicht wirklich zu wissen, was es tut. Funktionierende Erweiterungen sind reine Glückssache, da es überall an Tests fehlt. Wird an einer Stelle etwas geändert, poppen ganz woanders Fehler im System auf (oder waren es verloren geglaubte Features?). Lange Releasezyklen zusammen mit einem schier unendlichen Feature-Hunger des Kunden sorgen dafür, dass Anpassungen auf den letzten Drücker in die Software reingepresst werden. Dokumentation und eine grundlegende, technische Generalüberholung werden immer wieder nach hinten verschoben. Die Software steht jetzt kurz vor dem Kollaps. Moderne Software-Architekturen sind Lichtjahre entfernt.

Wir leben in einer Zeit, in der alte Softwaresysteme nicht mehr einfach weggeworfen und durch neue Systeme ersetzt werden können. Die heutigen, komplexen Legacy-Softwaresysteme sind tief in den Geschäftsprozessen der Kunden verwoben und daher schwer bis unmöglich zu ersetzen. Der Erfolg der Unternehmen hängt daher direkt von der kontinuierlichen Verfügbarkeit und Aktualisierbarkeit dieser Legacy-Software ab. Dennoch lernen wir in Ausbildung, Studium sowie in der Arbeit so gut wie nichts über den positiven Umgang mit Legacy-Systemen.

In meinem Vortrag stelle ich einige Grundlagen zur Verbesserung von Legacy-Software vor. Mithilfe von systematischen Ansätzen (wie Architecture Improvement Method und Object-Oriented Reengineering Patterns) und modernen Werkzeugen (wie AsciiDoc, pandas und jQAssistant) zeige ich, wie Entwickler in der täglichen Arbeit mit Softwarealtsystemen ihren klaren Kopf behalten können. Dazu sehen wir uns nicht nur Rezepte an, sondern werfen auch in Live-Demos einen Blick darauf, wie sich die wirtschaftlichen Verbesserungsansätze direkt in das tägliche Entwicklerleben integrieren lassen. Ich zeige zudem, wie Software analytisch und datenorientiert nachdokumentiert, wertvolle Codestellen identifiziert und potenzielle Reengineerings hin zu modernen Software-Architekturen simuliert werden können.

Date
2019-01-22
Time
09:00 - 10:30
Conference / Event
OOP 2019
Venue
ICM - Internationales Congress Center München , München

TAGS

Comments

Please accept our cookie agreement to see full comments functionality. Read more