Skip to content

Software Architecture

Never say refactoring is impossible

with Andreas Kleinbichler

Friday 10 July 16:45 – 18:45 Room R2 (30 Seats)

About This Session

In this talk I want to show possibilities for refactoring a CRUD based distributed system into an event driven architecture. I selected two scenarios that are refactored within interactive live coding sessions. First an implementation of distributed consensus, typically realized by a SAGA pattern with direct calls between the services, is transformed into an event based choreography approach. A CRUD service build on top of a relational database is evolved to an event store solution. The demonstrated development method consists of TDD and trunk based development, so that during each change the system remains fully operational and a new version is deployed with zero downtime. AI support in IDE will be used for efficient working with the technology stack C#, Java, Angular, PostgreSQL and Docker. This will be demonstrated by a locally hosted system with simulated traffic where the changes are deployed immediately.

Topics

  • C#
  • Databases
  • Event-Driven Architecture (EDA)
  • Event Sourcing
  • Java