Sanierung von Legacy-Systemen - Entwicklertag · 50% aller Anwendungen sind älter als 20 Jahre*...

Post on 07-Oct-2020

1 views 0 download

Transcript of Sanierung von Legacy-Systemen - Entwicklertag · 50% aller Anwendungen sind älter als 20 Jahre*...

Sanierung von Legacy-Systemen

Ein Erfahrungsbericht

Quelle: xkcd.com

MaibornWolff

Woher kommen Legacy Systeme?

Wie gehen wir vor?

Was haben wir gelernt?

Tools

Inhalt

50% aller Anwendungen sind älter als 20 Jahre*

Designentscheidungen

Feature-Overload

Over-Engineering

Integration durch Fremdsysteme

Woher kommen Legacy Systeme?

*Quelle: Marktstudie Software Modernisierung, Bosshard & Partner, 2005

Was ist zu tun?

Over-Engineering

Technik / Architektur

Fa

ch

lich

keit

- Langsam

- Teuer

- Fehleranfällig

- Zeitnah

- Günstig

- Zuverlässig

Wartungshölle Eingeschränkte

Wartbarkeit

Idealer

Wartungskorridor

Ist

SollOh

ne

Ma

ßn

ah

men

Türöffner

Groben Überblick

Legacy Code kategorisieren

Wartungskorridor

Wie gehen wir vor?Audit-Phase (~ 3 Wochen)

Übernahme der Software

Backlog füllen

Erweiterte Kategorisierung

Testabdeckung erhöhen

CI aufsetzten

Erste Aufräumarbeiten

Wie gehen wir vor?Einarbeitung-Phase (~ 3 Monate)

Aufräumen was geht

Alten Code sanieren

Neue Features hinzufügen

Wie gehen wir vor?Einarbeitung-Phase (3 - 6 Monate)

Business as Usual

Wie gehen wir vor?Stabile Phase

Agiles Vorgehen hilft

Der Konkretisierungsgrad nimmt über die Zeit zu

Das Team muss die Fachlichkeit verstehen

Der Kunde muss die Fachlichkeit erklären

Kommunikation ist wichtig

Was haben wir gelernt?Vorgehen

Es wird nicht nur saniert um den Code hübscher zu machen

Es wird saniert um neue Features zu ermöglichen

Der Kunde muss wissen was wichtig ist

Was haben wir gelernt?Fachliche Herangehensweise

Sanierung ist nicht nur Refactoring

Legacy Code muss kategorisiert werden

Continous Integration und Testabdeckung sind wichtig

Fortschritt verständlich visualisieren

Was haben wir gelernt?Technische Herangehensweise

Screenshot: Software Diagnostics

ToolsJira/Confluence

www.atlassian.com

Toolsbalsamiq

www.balsamiq.com

ToolsSoftware Landkarten

Screenshot: Software Diagnostics

ToolsCI-Server/SonarQube

www.sonarqube.org

Danke für die Aufmerksamkeit!