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

Architekturtransformation in der Praxis

Architekturtransformation in der Praxis

Keynote von Stefan Tilkov und Gernot Starke, Architecture-Summit März 2017, Mümchen

Dr. Gernot Starke

March 29, 2017
Tweet

More Decks by Dr. Gernot Starke

Other Decks in Programming

Transcript

  1. Image Credits Sämtliche hier verwendeten Fotos von Personen sind lizenzfrei

    und stammen von: > https://www.pexels.com > https://unsplash.com/ Ausnahmen sind gekennzeichnet...
  2. You return to work from that nice conference. Your ideas

    are met with resistance. There are three paths. They are labeled quit, give up, work. $>|
  3. They are labeled quit, give up, work. $> quit. That

    might be clever or not. Fatal CannotDecideException. Keynote over – exited. $>|
  4. $> give up. No option – try again. (and if

    you give up again, you‘re awarded weakling-of- the-month, so think twice!)
  5. $> work. You need to think and act strategically. But

    first, listen to the two old men.
  6. Change By Split Client Type 1 Flawed System Client Type

    2 Kopiere für alle Client-Typen 1 Client Type 1 Flawed System Client Type 2 Flawed System Client Type 1 Reduced to Type 1 Client Type 2 Reduced to Type 2 Commons Reduziere und extrahiere Gemeinsamkeiten 2 Client Type 1 Reduced to Type 1 Client Type 2 Reduced to Type 2 New Commons Optimiere Gemeinsamkeiten 3
  7. Change By Split (2) Client Type 1 Reduced to Type

    1 Client Type 2 Reduced to Type 2 New Commons Optimiere spezifische Teilsysteme („Splits“) New Type 1 System Client Type 1 Client Type 2 New Commons New Type 2 System return to overview
  8. Change-By-Abstraction (1) Client Code Flawed Supplier Client Code Abstraction Layer

    Kapsele die Interaktion mit den schlechten Teilen Lasse sämtlichen Client-Code diese Kapselung nutzen Erstelle einen besseren Supplier Client Code Flawed Supplier Client Code Abstraction Layer Abstraction Layer New Supplier Client Code Flawed Supplier Client Code Client Code Flawed Supplier Client Code Abstraction Layer Martin Fowler nennt das „Branch-By-Abstraction“
  9. Change-By-Abstraction (2) Vervollständige den Supplier, ggfs. entferne den alten. Client

    Code Flawed Supplier Client Code Abstraction Layer Abstraction Layer New Supplier Client Code Flawed Supplier Client Code Abstraction Layer New Supplier return to overview
  10. Ingredients (appropriate) new technology (as desired) 2 Cups of pragmatism

    1 XL portion of economics 1 large portion of politics