anchor.diff:  
   === Unsere Entscheidung
   
  +[%step]
   * URI-Versioning
   * Grund: viele SOAP Service, Rest Service sind noch nicht ressourcenorientiert
   
   === Implementieren des Services
   
  -=== Mehrfaches Deployen eines Services
  +
  +=== Jede Serviceversion separat deployed
   
   [%step]
  -* Wenn ein Service zwei Versionen implementiert, können einfach beide Versionen gestartet werden
  -* Vorteile: funktioniert out of the box
  -* Nachteile: Kosten und Skalierung des Services
  +* Service wird mit jeder Serviceversion deployed
  +* Vorteil: funktioniert out of the box
  +* Nachteil: Kosten und Skalierung des Services, Wartungskosten
  +
  +=== Jede Serviceversion separat deployed
   
   * DEMO
   
  
positive.code: 
  [%step]
  * Businesscode wird vollständig kopiert
  
  * DEMO
  
  
negative.code: image::classDiagramConverter.png[background]
  
  [%step]
  * Konvertieren auf internes Model ODER neueste Serviceversion
  * muss vollständig sein (vereinfacht die Unterstüzung verschiedener Version immens)
  können
  
  [NOTE.speaker]
  --
  * Internes Model besonders beim Löschen nützlich
  * Konvertierung einfacher
  --
  
  === Adapterpattern zwischen Service Versionen (Sequenzdiagram)
  
  image::sequenceConverter.png[background]
  
  === Adapterpattern zwischen Versionen eines Services (Modelmapper)
  
  [%step]
  * Einsatz einer Bibliothek, die automatisch Klassen in einander konvertiert
  * Beispiel: modelmapper, dozzer,
  * Vorteil: OK für simple Schnittstellen, da schnell aufgesetzt
  
  
  === Adapterpattern zwischen Versionen eines Services (Modelmapper)
  
  [%step]
  * Nachteil: Probleme bei Typhierachien
  * Nachteil: Mappingmechanismus nicht durchschaubar
  * Nachteil: Manuelle Anpassungen am Mapping kompliziert
  * Nachteil: Teilweise Performanceprobleme
  * Nachteil: Konvertierung müsste getestet werden
  
  [NOTE.speaker]
  --
  