Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Trivadis TechEvent 2019: Wir prügeln den Monoli...

Manuel Meyer
September 13, 2019

Trivadis TechEvent 2019: Wir prügeln den Monolithen ins Web

In Projekten für unsere Kunden treffen wir heutzutage immer wieder die gleiche Situation an: Die Kernapplikation der Unternehmung ist über mehrere Jahrzehnte und verschiedene Technologien zu einem funktionalen aber hässlichen Monolithen herangewachsen. Allen ist klar, dass eine Modernisierung nötig ist. Aber wie? Mehrere Modernisierungsprojekte sind bereits katastrophal gescheitert. In dieser Session beleuchten wir einen Ausweg aus der Misere. Wir zeigen einen Ansatz, bei welchem hochkomplexe Desktop-Applikationen allen Problemen zum Trotz schrittweise ins Web überführt werden können. Wir plaudern aus dem Nähkästchen und erzählen, wie wir für unseren Kunden die Migration von VB/C#/WinForms/WPF nach Angular geschafft haben.

Manuel Meyer

September 13, 2019
Tweet

More Decks by Manuel Meyer

Other Decks in Technology

Transcript

  1. Wir prügeln den Monolithen ins Web Thomas Gassmann, Manuel Meyer

    @gassmannT @manumeyer1 www.thomasgassmann.net/ www.manuelmeyer.net/
  2. Agenda ▪ Die Ausgangslage ▪ Die Herausforderungen ▪ Wo ist

    eigentlich das Problem? ▪ Der Lösungsansatz ▪ Probleme (und Lösungen) aus der Praxis.
  3. „The worst strategic mistake is rewriting code from scratch“ --Joel

    Spolsky Things you should never do: https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/
  4. „The integration Problem“ & „The black hole of coupling“ --Udi

    Dahan Own the Future: https://www.youtube.com/watch?v=2iYdKQXGY2E Slides: https://www.slideshare.net/udidahan/own-the-future
  5. „The integration Problem“ & „The black hole of coupling“ --Udi

    Dahan Own the Future: https://www.youtube.com/watch?v=2iYdKQXGY2E Slides: https://www.slideshare.net/udidahan/own-the-future
  6. Ziele des Lösungsansatzes ▪ Kein Big Bang ▪ Keine grüne

    Wiese ▪ Den User nicht überfordern ▪ Exploratives testen & ablösen ▪ Agile Entwicklung.
  7. Was ist SignalR? ▪ Ist eine Bibliothek für ASP.NET ▪

    Ermöglicht die Kommunikation vom Server zum Client (der im Browser läuft)
  8. Wieso Angular? ▪ Enterprise Ready Webapplications ▪ Grosse Community und

    Google ▪ Hohe Performance, im Kundenprojekt: Initial load ~193 Request < 2 sec Page switch < 0.5 sec.
  9. Master / Slave Beziehung ▪ Das alte System ist das

    Master System ▪ Der Master startet das Slave System ▪ Der Master verwaltet das Login/Logout der User im Slave-System ▪ Mittelfristig wird das neue System zum Master.
  10. Das Veto-Recht ▪ Jede Applikation sollte ein Veto-Recht haben ▪

    Beispiel: Während System A einen Datensatz bearbeitet, darf in System B nicht auf einen anderen gewechselt werden.
  11. Lösung 2 ▪ Einen Partner für UX & UI Design

    involvieren ▪ Muss können: «Web User Experience Design» ▪ Muss können: «Web User Interface Design» ▪ Muss können: CODE liefern! ▪ ….sonst…
  12. Lösung 3 ▪ «Schau im alten System wies funktioniert» reicht

    nicht als Spezifikation ▪ Die Kunst der Anforderungsaufnahme muss beherrscht werden ▪ Nicht alles selbst bauen! ▪ Kompromisse eingehen!.
  13. Zusammenfassung ▪ Die Big Bang Migration und die grüne Wiese

    sind Illusionen ▪ Die Ablösung muss als normale Evolution des Produkts angeschaut werden ▪ Der gezeigte Lösungsansatz bietet einen Weg aus der Misere ▪ Aber: Das Web ist und bleibt eine andere Welt.