Erste Schritte in die neue Welt so gelingt der Einstieg in Big Data und Machi...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung von Software.pdf
1. IKS Gesellschaft für Information-und Kommunikationssysteme GmbH
T. +49 2103-5872-0 | www.iks-gmbh.com
Projekte. Beratung. Spezialisten.
IKS Thementag
14.06.2023
Autor: Christoph Schmidt-Casdorff
Modernisierung von Software
Wer zu spät kommt, den bestraft das Leben
2. Wer zu spät kommt, den bestraft das Leben 2 | 76
That’s what happened on Tax Day 2018. Facing technical problems, the Internal Revenue
Service couldn’t process electronically-filed tax returns. Although the IRS did not specify
what went wrong, the fact that many of their IT systems were outdated at that time – two
of them being nearly six decades old – might have contributed to the computer glitch.
Tax Day 2018
https://www.continuitysoftware.com/blog/the-story-of-the-irss-11-hour-outage-on-tax-day-2018/
https://www.nextgov.com/it-modernization/2018/04/irs-60-year-old-it-system-failed-tax-day-due-new-hardware/147598/
https://www.theregister.com/2018/09/25/ibm_tax_day_irs_crash/
3. Wer zu spät kommt, den bestraft das Leben 3 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
4. Wer zu spät kommt, den bestraft das Leben 4 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
5. Wer zu spät kommt, den bestraft das Leben 5 | 76
❯ Behinderung von Geschäftsmodellen
Sind die lang- und mittelfristigen Bedürfnisses des Markts und die strategischen
Visionen mit diesem System nicht mehr umzusetzen?
Leidet der Geschäftserfolg durch fehlende Funktionalität?
Leidet die Agilität und Flexibilität, mit der Sie sich auf neue Anforderungen des
Markts einstellen können, durch das Softwaresystem?
Was kann Anlass zur Modernisierung sein?
6. Wer zu spät kommt, den bestraft das Leben 6 | 76
Warum modernisieren?
Anforderungen an
Security
DSGVO
Security
hohe
Wartungskosten
mangelnde
Innovationsfähigkeit
veraltete
Versionen von OS
Abhängigkeit von
on-premise Hardware
häufige
System-Crashes
Probleme mit
Softwarequalität
Behinderung von
Geschäftsmodellen
langsame Time-to-
Market-Zyklen
Inkompatibilität mit modernen
Infrastrukturplattformen
Kopfmonopole
7. Wer zu spät kommt, den bestraft das Leben 7 | 76
Treiber aus Businesssicht
Key
Drivers
Business
Fit
Business
Value
Business
Agility
https://www.gartner.com/smarterwithgartner/7-options-to-modernize-legacy-systems
8. Wer zu spät kommt, den bestraft das Leben 8 | 76
Treiber aus IT-Sicht
Key
Drivers
Business
Fit
Business
Value
Business
Agility
Cost
Complexity
Risk
9. Wer zu spät kommt, den bestraft das Leben 9 | 76
❯ Es gibt nicht den einen Modernisierungsprozess
… wir zeigen Ihnen grundsätzliche Phasen diese Prozesses
… wir teilen mit Ihnen einige Gedanken und Überlegungen
Wir fokussieren uns mehr auf die technologischen/inhaltlichen Aspekte
… weniger auf die Unternehmens- und Managementaspekte
… oder organisatorische Transformationsprozesse
Was zeigen wir Ihnen heute?
10. Wer zu spät kommt, den bestraft das Leben 10 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
11. Wer zu spät kommt, den bestraft das Leben 11 | 76
❯ Bei Software-Modernisierung geht es darum, Probleme zu beheben, die durch
veraltete Technologien, Prozesse, Methoden, Verfahren etc. entstanden sind.
❯ Diese können sich im Code oder Struktur der Software, aber auch im kompletten
Software-Entwicklungsprozess gebildet haben.
❯ Beispiel : Transformation eines auf einem on-premise Data Center basierenden
Systems auf eine Cloud-Infrastruktur
Was ist Software-Modernisierung?
12. Wer zu spät kommt, den bestraft das Leben 12 | 76
Um was geht es bei der Entscheidung zur Modernisierung?
“The objective is to determine whether the traditional
platform is helping the business or hindering it from meeting
its goals.”
Gartner Group
13. Wer zu spät kommt, den bestraft das Leben 13 | 76
Einflussfaktoren
Key
Drivers
Business
Fit
Business
Value
Business
Agility
Cost
Complexity
Risk
14. Wer zu spät kommt, den bestraft das Leben 14 | 76
Ausgleich zwischen Risiken und Chancen der neuen Technologien und Geschäftsmodellen
15. Wer zu spät kommt, den bestraft das Leben 15 | 76
❯ Modernisierungsprozess sollte durch Business Requirements getrieben sein
Nur dann kann der Ausgleich gewährleitstet sein
Entwicklung neigt dazu, alles möglichst innovativ zu modernisieren
16. Wer zu spät kommt, den bestraft das Leben 16 | 76
❯ Strategische Ausrichtung der Geschäftsprozesse
Business Fit: Was sind meine Ziele/Visionen?
Business Value: Was bringt es?
Business Agility: Wie schnell kann/will ich auf Änderungen regieren?
❯ Strategische Ausrichtung der System- und Infrastrukturplattform
Z.B. „Migration in Cloud“ sollte Antwort auf einen Geschäftsstrategie sein
❯ Abgleich der beiden Strategien
Strategische Ausrichtung
17. Wer zu spät kommt, den bestraft das Leben 17 | 76
Modernisierung der Software setzt voraus, dass die Geschäftsprozesse klar sind
18. Wer zu spät kommt, den bestraft das Leben 18 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
19. Wer zu spät kommt, den bestraft das Leben 19 | 76
20. Wer zu spät kommt, den bestraft das Leben 20 | 76
21. Wer zu spät kommt, den bestraft das Leben 21 | 76
22. Wer zu spät kommt, den bestraft das Leben 22 | 76
❯ Softwaresystem besteht aus
Anwendungen
Infrastruktur
zum Betrieb der Anwendungen
zur Kommunikation zwischen den Anwendungen
❯ Modernisierung
betrifft ggfs. eine bisherige Infrastruktur
Es muss eine moderne Infrastruktur aufgebaut werden
betrifft die Anwendungen des Systems
Modernisierung einer Anwendung im Kontext der Infrastruktur
System und Anwendungen
23. Wer zu spät kommt, den bestraft das Leben 23 | 76
❯ Braucht einen Bestands/IST-Zustand
❯ Braucht einen Ziel/SOLL-Zustand
❯ Braucht einen Weg von IST nach SOLL
Modernisierung ist ein Transformationsprozess
24. Wer zu spät kommt, den bestraft das Leben 24 | 76
❯ Braucht einen Bestands/IST-Zustand
❯ Braucht einen Ziel/SOLL-Zustand
❯ Braucht einen Weg von IST nach SOLL
Modernisierung ist ein Transformationsprozess
25. Wer zu spät kommt, den bestraft das Leben 25 | 76
❯ Strukturelle Analyse des Systems
Aus welchen Anwendungen besteht das System?
Wie kommunizieren diese miteinander?
Auf welcher Infrastruktur basiert das System?
Dekonstruktion des Systems in einzelne Komponenten/Anwendungen
Ggfs. Techniken wie application-mapping *)
Bestandsanalyse
26. Wer zu spät kommt, den bestraft das Leben 26 | 76
❯ Strukturelle Analyse des Systems
❯ Funktionale Analyse des Systems
Aufbau einer Geschäfts-/Facharchitektur
Zuordnung von Geschäftsprozessen/-objekten zu Komponenten
❯ Diese Analysen helfen,
das Ziel der Modernisierung zu definieren
die Modernisierung zu steuern
Bestandsanalyse
27. Wer zu spät kommt, den bestraft das Leben 27 | 76
❯ Strukturelle und fachliche Analyse des Systems
❯ Analyse des Technologiestacks der einzelnen Anwendungen
Bestandsanalyse
28. Wer zu spät kommt, den bestraft das Leben 28 | 76
❯ Strukturelle und fachliche Analyse des Systems
❯ Analyse des Technologiestacks der einzelnen Anwendungen
❯ Architekturreview der einzelnen Anwendungen und der Infrastruktur
Untersuchung der relevanten Qualitätsmerkmale
Wartbarkeit, Zuverlässigkeit, Interoperabilität, Performance, …
Werden durch die Geschäftsziele bestimmt
Methoden reichen von ATAM bis Lightweight Architecture Reviews
Bestandsanalyse
29. Wer zu spät kommt, den bestraft das Leben 29 | 76
❯ Strukturelle und fachliche Analyse des Systems
❯ Analyse des Technologiestacks der einzelnen Anwendungen
❯ Architekturreview
❯ Code-Review / Analyse der Code-Qualität
Analyse der Code-Qualität und der technischen Schulden
Ggfs. unterstützen automatisierte Code-Qualitäts-Analysen
Bestandsanalyse
30. Wer zu spät kommt, den bestraft das Leben 30 | 76
❯ Strukturelle und fachliche Analyse des Systems
❯ Analyse des Technologiestacks der einzelnen Anwendungen
❯ Architekturreview
❯ Code-Review
❯ Analyse des Entwicklungsprozesses
Z.B. value-stream-mapping *), um Schwachstellen zu analysieren
Bestandsanalyse
31. Wer zu spät kommt, den bestraft das Leben 31 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
32. Wer zu spät kommt, den bestraft das Leben 32 | 76
Das ist Ihr System
33. Wer zu spät kommt, den bestraft das Leben 33 | 76
… und da wollen Sie hin
34. Wer zu spät kommt, den bestraft das Leben 34 | 76
❯ Braucht einen Bestands/IST-Zustand
❯ Braucht einen Ziel/SOLL-Zustand
❯ Braucht einen Weg von IST nach SOLL
Modernisierung ist ein Transformationsprozess
35. Wer zu spät kommt, den bestraft das Leben 35 | 76
Am Anfang steht die grundsätzliche Entscheidung
Tolerieren Modernisieren
Entfernen Ersetzen
Qualität
Business Value
36. Wer zu spät kommt, den bestraft das Leben 36 | 76
Am Anfang steht die grundsätzliche Entscheidung
Tolerieren Modernisieren
Entfernen Ersetzen
Qualität
Business Value
37. Wer zu spät kommt, den bestraft das Leben 37 | 76
❯ Sie entscheiden, ob Ihr System modernisiert wird
… oder kann das weg?
❯ Sie entscheiden für jede Anwendung und Infrastrukturkomponente separat
Das Gesamtbild muss im Fokus bleiben!!!!
❯ Modernisierung eines Systems kann ‚Neu-Entwicklung‘ von Anwendungen umfassen
Modernisierung?
38. Wer zu spät kommt, den bestraft das Leben 38 | 76
❯ Es muss etwas geben, was sich zu bewahren lohnt
Implementierung von Geschäftslogik
Anwendung läuft auf neuer Plattform
… es muss möglich sein, zu bewahren
❯ Es ist zu risikoreich, die Anwendung neu zu schreiben
Es fehlt das Wissen um Geschäftslogik
Know-How ist nicht mehr vorhanden
Neuentwicklung ist einfach viel zu teuer
Was spricht für eine Modernisierung?
39. Wer zu spät kommt, den bestraft das Leben 39 | 76
… und da wollen Sie hin – Zielmodell
40. Wer zu spät kommt, den bestraft das Leben 40 | 76
❯ Definition der Geschäftsziele der Migration
Entscheidungen für die einzelnen Anwendung
❯ Definition der Zielplattform
❯ Definition des Zielsystems/Zielarchitektur
❯ Definition der Funktionalität des Zielsystems
Business Architecture erwünscht
❯ Definition des Entwicklungsprozess
Basiert auf agilen Prinzipien
Weitestgehende Automatisierung
Metriken zur Messung des Entwicklungsprozesses
Zielmodell
41. Wer zu spät kommt, den bestraft das Leben 41 | 76
❯ Infrastruktur definieren
Welche Anforderungen stellt Infrastruktur an Anwendung?
❯ Identifizieren der Anwendungen
Anpassungen des Schnitts der Anwendung(en) an Infrastruktur
Wahl des Architekturmusters der Anwendung(en)
z.B. Monolith vs. Microservice
❯ Abbildung zwischen Legacy und Zielarchitektur
Auf Geschäfts- und technologischer Ebene
Zielarchitektur – System und Anwendung
42. Wer zu spät kommt, den bestraft das Leben 42 | 76
Stolpersteine auf dem Weg
43. Wer zu spät kommt, den bestraft das Leben 43 | 76
❯ Modernisierungsprojekt ist i.d.R. komplex
Viele Systeme werden angefasst
… viele Abhängigkeiten untereinander
… oft nicht klar analysiert
Es sind i.d.R. unterschiedliche Organisationen/Abteilungen betroffen
Conways-Law
Modernisierung ist die hohe Schule der Softwareentwicklung
Herausforderungen des Modernisierungsprozesses
44. Wer zu spät kommt, den bestraft das Leben 44 | 76
❯ Modernisierung braucht ein long-term commitment des Managements
Modernisierung ist oft unternehmenskritisch
Modernisierung kann teuer werden
Modernisierung kann lange dauern
Modernisierungsprojekte werden gerne unterschätzt
Herausforderungen des Modernisierungsprozesses
45. Wer zu spät kommt, den bestraft das Leben 45 | 76
❯ Modernisierung braucht eine klar kommunizierte Modernisierungsstrategie
Es gibt standardisierte Methoden wie ADM
❯ Modernisierung verwobener Anwendungen muss abgestimmt sein
Falls mehrere Systeme modernisiert werden, muss die Modernisierung in einem
Gesamtprozess gesteuert und priorisiert werden
Herausforderungen des Modernisierungsprozesses
46. Wer zu spät kommt, den bestraft das Leben 46 | 76
❯ Es mangelt an einschlägigem Wissen
Das Wissen um den Code ist nicht mehr vorhanden
Dokumentation ist nicht vorhanden oder irrelevant
Third-party-Resources oder -Libraries sind nicht mehr verfügbar
Source Code wurde massiv durch viele Hände verändert
Herausforderungen des Modernisierungsprozesses
47. Wer zu spät kommt, den bestraft das Leben 47 | 76
❯ Parallelbetrieb
Bisherige Softwaresysteme laufen während der Modernisierung weiter
Bisherige Software wird weiterentwickelt
Parallelbetrieb beeinflusst Modernisierungsziel und -geschwindigkeit
Herausforderungen des Modernisierungsprozesses
48. Wer zu spät kommt, den bestraft das Leben 48 | 76
❯ Dokumentieren, Dokumentieren, Dokumentieren
… der Prozessschritte, um Transparenz zu schaffen
… der Ergebnisse aus Bestandsanalyse und dem Zielmodell
Herausforderungen des Modernisierungsprozesses
49. Wer zu spät kommt, den bestraft das Leben 49 | 76
❯ Revolutionär
Ersetzen des Systems im Ganzen
disruptiv
i.d.R. Abschalten des bisherigen Systems
… System kann die aktuellen Anforderungen nicht oder nur unzureichend erfüllen
… Risiken des aktuellen Systems sind zu groß (z.B. Security)
❯ Evolutionär
setzt einen schrittweisen, systematischen Modernisierungsprozess voraus
Evolution oder Revolution?
50. Wer zu spät kommt, den bestraft das Leben 50 | 76
❯ Abgestimmter und kommunizierter Plan von Transformationsschritten/-phasen
Auswahl der Modernisierungsansätze (siehe unten)
… beinhaltet die Adaption an neue Infrastruktur/Plattformen
Jede Phase ist explizit messbar
❯ Priorisierung der Modernisierungsschritte
… gerade zwischen den einzelnen Anwendungen
❯ Gesteuert durch Business Requirements
Business Requirements definieren das Ziel
Evolutionärer Modernisierungsprozess
51. Wer zu spät kommt, den bestraft das Leben 51 | 76
52. Wer zu spät kommt, den bestraft das Leben 52 | 76
?
53. Wer zu spät kommt, den bestraft das Leben 53 | 76
❯ Braucht einen Bestands/IST-Zustand
❯ Braucht einen Ziel/SOLL-Zustand
❯ Braucht einen Weg von IST nach SOLL
Modernisierung ist ein Transformationsprozess
54. Wer zu spät kommt, den bestraft das Leben 54 | 76
Einzelschritte in der Migration
55. Wer zu spät kommt, den bestraft das Leben 55 | 76
❯ Anwendung bleibt wie sie ist
… wird durch API abgeschirmt
… Code bleibt wie er ist
❯ Was bringt mir das?
Bestehender Code kann in neue Infrastruktur angepasst werden -> Rehosting
Geringer Aufwand
❯ Welche Nachteile/Einschränkungen hat diese Methode?
Encapsulation bringt keine interne Verbesserung
Methoden zur Modernisierung – Encapsulation
56. Wer zu spät kommt, den bestraft das Leben 56 | 76
❯ Anwendung wird auf eine neue Infrastruktur gebracht
Rehosting: Paas (Platform as a Service)
Replatforming: Saas (Software as a Service)
… Anwendung bleibt (fachlich) wie sie ist
… evtl. Containerisierung möglich
❯ Was bringt mir das?
Integration der Anwendung in Ziel-Infrastruktur
❯ Welche Nachteile/Einschränkungen hat diese Methode?
Rehosting/Replatforming bringt keine interne Verbesserung
Methoden zur Modernisierung – Rehosting/Replatforming
57. Wer zu spät kommt, den bestraft das Leben 57 | 76
❯ Refactoring, ohne das externe Verhalten zu verändern
Anwendung behält ihre Schnittstellen
Spezielle Verfahren wie Red-Green-Refactor method
Funktionalität des Systems bleibt bestehen
❯ Was bringt mir das?
technische Schulden werden abgebaut
(Architektur-)Qualitätsmerkmale werden erreicht/verbessert
Methoden zur Modernisierung – Code Refactoring
58. Wer zu spät kommt, den bestraft das Leben 58 | 76
❯ Anwendung wird auf eine neue Architektur gehoben
Anwendung wird i.d.R. neu geschnitten
Mögliche Architekturmuster sind Microservices
❯ Was bringt mir das?
Anwendung kann die Möglichkeiten der neuen Infrastruktur voll ausschöpfen
Anwendung bekommt eine neue Struktur
… und wird damit beispielsweise migrierbar
Neue Geschäftsprozesse können etabliert werden
❯ Welche Nachteile/Einschränkungen hat diese Methode?
aufwändig
Methoden zur Modernisierung – Re-Architecting
59. Wer zu spät kommt, den bestraft das Leben 59 | 76
Encapsulation
Rehosting
Replatforming
Refactoring
Rearchitecting
Replace
60. Wer zu spät kommt, den bestraft das Leben 60 | 76
Auswirkung
Auswirkung
Aufwand
Aufwand
Encapsulation
Rehosting
Replatforming
Refactoring
Rearchitecting
Replace
61. Wer zu spät kommt, den bestraft das Leben 61 | 76
Encapsulation
Rehosting
Replatforming
Refactoring
Rearchitecting
Replace
Architektur
Technologie
Geschäftslogik
Auswirkung
Auswirkung
Aufwand
Aufwand
62. Wer zu spät kommt, den bestraft das Leben 62 | 76
❯ Die Modernisierung einer Anwendung durchläuft i.d.R. unterschiedliche Phasen
unter Einsatz unterschiedlicher Methoden
❯ Beispielszenario:
Code Refactoring, um aktuelle Libraries einzubinden
Rehosting einer Anwendung in der Cloud
Replatforming, um auf Managed Databases der Cloud umzuschwenken
Re-Architecturing, um das System zu modularisieren (Anwendungsarchitektur)
Re-Architecturing, um Teile des Systems durch managed services abzulösen
Re-Architecturing, um neue Geschäftsprozesse zu etablieren
Phasen des Modernisierungsprozesses
63. Wer zu spät kommt, den bestraft das Leben 63 | 76
❯ Diese Phasen sollten
ein klares und messbares Ziel/Ergebnis haben -> neudeutsch Concern
auslieferbar
einzeln und isoliert durchgeführt werden
möglichst eine Ebene der Modernisierung betreffen
Teil einer Gesamtstrategie sein
❯ Abgestimmter und kommunizierter Plan von Transformationsschritten/-phasen
Phasen des Modernisierungsprozesses einer Anwendung
64. Wer zu spät kommt, den bestraft das Leben 64 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
65. Wer zu spät kommt, den bestraft das Leben 65 | 76
❯ Modernisierbarkeit der Fachlichkeit wird durch eine durchgängige
Business Architektur gefördert
❯ Modernisierbarkeit von Systemarchitektur wird durch Portabilität und Flexibilität
gefördert
❯ Modernisierbarkeit von Code wird durch gute Codequalität gefördert
❯ Modernisierbarkeit von Prozessen wird durch Agilität gefördert
Was fördert Modernisierbarkeit?
66. Wer zu spät kommt, den bestraft das Leben 66 | 76
Konzepte und Technologien zur Unterstützung von Modernisierbarkeit
Modernisier-
barkeit
Business
Architecture
Domain
Driven Design
Clean
Architecture
67. Wer zu spät kommt, den bestraft das Leben 67 | 76
Konzepte und Technologien zur Unterstützung von Modernisierbarkeit
Modernisier-
barkeit
Business
Architecture
Domain
Driven
Design
Clean
Architecture
Agile
Prozesse
DevOps
Orchestration /
Automatisation
68. Wer zu spät kommt, den bestraft das Leben 68 | 76
Konzepte und Technologien zur Unterstützung von Modernisierbarkeit
Modernisier
-barkeit
Business
Architecture
Domain
Driven
Design
Clean
Architecture
Agile
Prozesse
DevOps
Orchestration /
Automatisation
API
Microservice
69. Wer zu spät kommt, den bestraft das Leben 69 | 76
Konzepte und Technologien zur Unterstützung von Modernisierbarkeit
Modernisier
-barkeit
Business
Architecture
Domain
Driven
Design
Clean
Architecture
Agile
Prozesse
DevOps
Orchestration /
Automatisation
API
Microservice
Container /
Kubernetes
Cloud
70. Wer zu spät kommt, den bestraft das Leben 70 | 76
Konzepte und Technologien zur Unterstützung von Modernisierbarkeit
Modernisier
-barkeit
Business
Architecture
Domain
Driven
Design
Clean
Architecture
Agile
Prozesse
DevOps
Orchestration /
Automatisation
API
Microservice
Container /
Kubernetes
Cloud
Das sind Investitionen in die Modernisierbarkeit
71. Wer zu spät kommt, den bestraft das Leben 71 | 76
Agenda
❯ Warum modernisieren?
❯ Wie gehen wir es an? – Strategische Überlegungen zur Modernisierung
❯ Wie sieht es aus? – Bestandsanalyse
❯ Wie modernisieren? – Methoden zur Modernisierung
❯ Und nun? – Modernisierbarkeit von Software
❯ Take Home
72. Wer zu spät kommt, den bestraft das Leben 72 | 76
❯ Modernisierungsprojekt braucht Managementunterstützung
Modernisierung kann eine riskante Angelegenheit sein
Modernisierung ist oft unternehmenskritisch
Modernisierung betrifft i.d.R. unterschiedliche Teile der Organisation
❯ Software Modernisierung
Muss fachlich und nicht nur technologisch getrieben sein
Take Home
73. Wer zu spät kommt, den bestraft das Leben 73 | 76
❯ Machen Sie eine gründliche Bestandsaufnahme
Ist Basis jedes Modernisierungsprozesses
❯ Definieren Sie ihr Zielmodell
Ist Basis jedes Modernisierungsprozesses
❯ Beschreiben Sie den Transformationsprozess
Definieren Sie einzelne Phasen pro Anwendung/System
Faustregel: Pro Phase eine Methode mit einem definierten, messbaren Ziel
Jede Phase hat einen concern
Take Home
74. Wer zu spät kommt, den bestraft das Leben 74 | 76
❯ Planen Sie Ihre Modernisierung gut
Machen eine Risiko- und Chancenabwägung
Nicht immer ist die hippste Technologie auch der richtige Weg
❯ Bewerben Sie Modernisierung
Gelingt nur bei breiter Akzeptanz auf allen Ebenen
Take Home
75. Wer zu spät kommt, den bestraft das Leben 75 | 76
www.iks-gmbh.com
76. Wer zu spät kommt, den bestraft das Leben 76 | 76
Referenzen
❯ ADM (Architecture Driven Modernisation) :
https://www.amazon.de/Information-Systems-Transformation-Architecture-Driven-
Modernization/dp/0123749131/ref=sr_1_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=3QAOICVVBPMZ1&keywords=Information+Systems+Transformation
&qid=1683357738&sprefix=information+systems+transformation%2Caps%2C149&sr=8-1
❯ Application Mapping :
https://www.bmc.com/blogs/application-mapping/
❯ Code Refactoring
https://www.altexsoft.com/blog/engineering/code-refactoring-best-practices-when-and-when-not-to-do-it/
❯ Gardner Group:
https://www.gartner.com/smarterwithgartner/7-options-to-modernize-legacy-systems
https://www.fpt-intellinet.com/intelliblog/application-portfolio-management-overhauling-your-portfolio-with-time
❯ Strategic Domain Driven Design :
https://medium.com/nick-tune-tech-strategy-blog/legacy-architecture-modernisation-with-strategic-domain-driven-design-3e7c05bb383f
❯ Why Reengineering Projects Fail
https://www.cs.cmu.edu/~aldrich/courses/654-sp05/readings/Bergey99.pdf
❯ Value stream mapping :
https://asana.com/de/resources/value-stream-mapping
77. Wer zu spät kommt, den bestraft das Leben 77 | 76
❯ https://stock.adobe.com/images/haus-am-meer-auf-dune/58783748?prev_url=detail
❯ https://stock.adobe.com/images/bosco-gurin-dorfansicht/409046933?prev_url=detail
❯ https://stock.adobe.com/images/berliner-mischung-blick-auf-das-viertel-an-der-prenzlauer-allee-
mit-backfabrik-und-botzowbrauerei/309180520?prev_url=detail
❯ https://stock.adobe.com/images/stadtebauliches-modell-eines-dorfs-oder-einer-stadt-mit-
zentrum-kirche-und-wohngebauden/429101874?prev_url=detail
❯ https://stock.adobe.com/images/der-richtige-weg/73618276?prev_url=detail
❯ https://stock.adobe.com/images/felsiger-wanderweg-auf-der-rax-in-niederosterreich-
osterreich/500665426?prev_url=detail
❯ https://stock.adobe.com/images/keep-track-1/88560507?prev_url=detail
Bildnachweise
78. Wer zu spät kommt, den bestraft das Leben 78 | 76
❯ Technologische Alterung
System basiert auf veralteten Versionen von OS, Services oder Komponenten
System hat starke Abhängigkeit on-premise Hardware
Z.B. Backup-Prozesse auf Bandmaschinen
System häufige System-Crashes
System hat starke Abhängigkeiten zu bestimmen Devices
… falls Device-Unabhängigkeit eigentlich gewünscht ist
❯ Technologische Alterung erzeugt Risiken und Nebenwirkungen
Erhöhte Wartungskosten
Probleme bei der Erfüllung von ???
Was kann Anlass zur Modernisierung sein?
79. Wer zu spät kommt, den bestraft das Leben 79 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
Probleme mit Softwarequalität wie Performance, Zuverlässigkeit etc.
Inkompatibilität mit modernen 3rd party Systeme / Standards
Inkompatibilität mit modernen Infrastrukturplattformen
Fehlende Anforderungen an Security
Was kann Anlass zur Modernisierung sein?
80. Wer zu spät kommt, den bestraft das Leben 80 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
❯ Fehlende/geringe Compliance mit bestehenden Regularien
DSGVO
Was kann Anlass zur Modernisierung sein?
81. Wer zu spät kommt, den bestraft das Leben 81 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
❯ Fehlende/geringe Compliance mit bestehenden Regularien
❯ Hohe Kosten in Wartung von Alt-Systemen
Was kann Anlass zur Modernisierung sein?
82. Wer zu spät kommt, den bestraft das Leben 82 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
❯ Fehlende/geringe Compliance mit bestehenden Regularien
❯ Hohe Kosten in Wartung von Alt-Systemen
❯ Mangelnde Innovationsfähigkeit des Systems
Umsetzung von neuer Funktionalität
Anbindung an neue Kanäle
Integration in neue Infrastrukturen
System unterstützt neue Geschäftsprozesse nicht
Was kann Anlass zur Modernisierung sein?
83. Wer zu spät kommt, den bestraft das Leben 83 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
❯ Fehlende/geringe Compliance mit bestehenden Regularien
❯ Hohe Kosten in Wartung von Alt-Systemen
❯ Mangelnde Innovationsfähigkeit des Systems
❯ Mangelnde Agilität und Effizienz von Prozessen
Zu langsame Time-to-Market-Zyklen
Insbesondere der Entwicklungsprozess
Was kann Anlass zur Modernisierung sein?
84. Wer zu spät kommt, den bestraft das Leben 84 | 76
❯ Behinderung von Geschäftsmodellen
❯ Technologische Alterung
❯ Alterung der Architektur
❯ Fehlende/geringe Kompliance mit bestehenden Regularien
❯ Hohe Kosten in Wartung von Alt-Systemen
❯ Mangelnde Innovationsfähigkeit des Systems
❯ Mangelnde Agilität und Effizienz von Prozessen
❯ Wartung bindet Talente
Kopfmonopole
Moderne Technologien ziehen Talente an
Was kann Anlass zur Modernisierung sein?
https://www.simform.com/blog/legacy-system-modernization
85. Wer zu spät kommt, den bestraft das Leben 85 | 76
❯ Behinderung von Geschäftsmodellen
❯ Alterung der Technologie
❯ Alterung der Architektur
❯ Fehlende/geringe Kompliance mit bestehenden Regularien
❯ Hohe Kosten in Wartung von Alt-Systemen
❯ Mangelnde Innovationsfähigkeit des Systems
❯ Mangelnde Agilität und Effizienz von Prozessen
❯ Wartung bindet Talente
Was kann Anlass zur Modernisierung sein?
https://www.simform.com/blog/legacy-system-modernization
86. Wer zu spät kommt, den bestraft das Leben 86 | 76
❯ Business Requirements sind die Haupteinflussfaktoren im Modernisierungsprozess
Fachseite spielt eine entscheidende Rolle, um business requirements, incremental
deliverables, und ROI zu bewerten
❯ Eine durchgängige Architektur ist erstrebenswert
Von der Businessarchitektur bis zur technische Architektur
Domain Driven Design
Modernisierungsprozess – Goldene Regeln
87. Wer zu spät kommt, den bestraft das Leben 87 | 76
❯ Moderne Entwicklungsprozesse sind Teil der Modernisierung
Agile Prozesse erhöhen die Flexibilität
Automatisierung beschleunigt
❯ Dokumentieren, Dokumentieren, Dokumentieren
Modernisierungsprozess – Goldene Regeln
88. Wer zu spät kommt, den bestraft das Leben 88 | 76
❯ Abgestimmter und kommunizierter Plan von Transformationsschritten/-phasen
Auswahl der Modernisierungsansätze (siehe unten)
… beinhaltet die Adaption an neue Infrastruktur/Plattformen
Jede Phase ist explizit messbar
❯ Priorisierung der Modernisierungsschritte
… gerade zwischen den einzelnen Anwendungen
❯ Gesteuert durch Business Requirements
Business Requirements definieren das Ziel
Evolutionärer Modernisierungsprozess
89. Wer zu spät kommt, den bestraft das Leben 89 | 76
❯ Portabilität
❯ Separierung zwischen Fachlichkeit und ‚Glue Code‘
❯ Modularisierung
❯ Qualitativ hochwertiger Code
❯ Automatisierung
❯ Agile Vorgehensweise
Was macht Software ‚modernisierbar‘ ?
90. Wer zu spät kommt, den bestraft das Leben 90 | 76
❯ Portabilität
❯ Separierung zwischen Fachlichkeit und ‚Glue Code‘
❯ Modularisierung
❯ Qualitativ hochwertiger Code
❯ Automatisierung
❯ Agile Vorgehensweise
Was macht Software ‚modernisierbar‘ ?
Das sind Investitionen in die Modernisierbarkeit