Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

With events to a modern integration architecture

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 25 Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Ähnlich wie With events to a modern integration architecture (20)

Anzeige

Weitere von confluent (20)

Aktuellste (20)

Anzeige

With events to a modern integration architecture

  1. 1. With events to a modern integration architecture How to use events in a modern microservice world Allianz in Germany | Junker Munich, Berlin 19, 2022 © Allianz 2022
  2. 2. • Principal Enterprise Architect at Allianz in Germany • Worked in different roles: developer, product owner, architect Publications Lösungsmuster für Cross-Cutting-Concerns in Microservices, IT Aktuell, 06/2020 Microservices: Event-getriebene Integrationsarchitekturen im Einsatz, heise developer,.04/2022 Agile Unternehmensarchitekturen, Java Magazin 12/2020 Blog: https://annegretsarchitecture.blog/ Github: https://github.com/Grinseteddy LinkedIn: https://www.linkedin.com/in/dr-annegre t-junker-141a99a4/ Twitter: Grinseteddy About myself 2 © Wieland, 2020 INTEGRATION ARCHITECTURE
  3. 3. Event-Driven Architecture Event-driven microservices allow for real-time microservices communication, enabling data to be consumed in the form of events before they’re even requested. © Allianz 2022 3 https://www.confluent.io/resources/event-driven-microservices/?utm_medium=sem&utm _source=google&utm_campaign=ch.sem_br.nonbrand_tp.prs_tgt.technical-research_mt. xct_rgn.emea_lng.eng_dv.all_con.event-driven-architecture&utm_term=event%20driven %20architecture&creative=&device=c&placement=&gclid=CjwKCAjw0a-SBhBkEiwApljU 0v-fXs4y5uLX9L5YNgy94X2gu3-JkbBlXP37BnhhcRGQdWVNYZ62yRoCcqIQAvD_BwE, 5.4.2022 INTEGRATION ARCHITECTURE
  4. 4. 4 Event driven architecture
  5. 5. What is an event? An event is something what already happened. Usually we use “event” as something which should happen – a birthday, Christmas, … But technically something happened e.g. a business object reached a new status e.g. a task became “Done”. © Allianz 2022 5
  6. 6. What is a command? If you use a command, then something should happen, e.g. a certain object should be created. Commands can be transferred as technical events. But when we design a certain architecture we need to differentiate in a clear way. © Allianz 2022 6
  7. 7. Microservices Require Events © Allianz 2022 EVENTS @ ALLIANZ 7 Self-Contained Domain Service Business Service 1 Business Service 2 Post Response Client Post Response Post Response
  8. 8. Microservices Require Events © Allianz 2022 EVENTS @ ALLIANZ 8 Self-Contain ed Domain Service BO Repository Business Service 1 BO Repository Business Service 2 BO Repository Self-Contained Domain Service Business Service 1 Business Service 2 Post Response Client Post Response Post Response
  9. 9. Server2Server vs. Client2Server © Allianz 2022 EVENTS @ ALLIANZ 9 Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository Self-Contained Domain Service BO Repository West – East - Communication Client Domain MFE Domain MFE Domain MFE Domain MFE Domain MFE Domain MFE Domain MFE Domain MFE North-South-C ommunication
  10. 10. © Allianz 2022 10 Design Principles • Flexible architecture, which allows partners, employees, and tied agents, to access the different applications in different way so that they can work according to their necessities • Evolutionary architecture, which supports step by step approaches and don’t require big-bangs • Flexible interface architecture, which allows a standardized access, which includes legacy interfaces • Decoupling of applications via events, to support an independent and fast implementation by the according development teams • Integration of different backend applications, to support a domain-driven development
  11. 11. A Sample for Events 11
  12. 12. Event-Driven Architecture © Allianz 2022 12 The processing of architectural modules (micro services) is controlled by events. The scheduling diagram shows the event bus and producer and consumer. Otherwise than a message broker, an event broker stores events over a longer period. The event broker does not send the events actively to the consumer. The consumer reads the events at the event bus. So the consumer does not need to be up and running, when an event occurs. INTEGRATION ARCHITECTURE
  13. 13. How to get an event © Allianz 2022 INTEGRATION ARCHITECTURE 13 Subjective user view on a business process and visual glossary for definition of terms Collecting of business events along the process, assigning of aggregates (business objects), roles, technical processes, views to the events, definition of domains, and necessary APIs Formulating of the API as Swagger file (OpenAPI 3.0 standard) – contract between partner and Allianz A Domain Story Telling B Event Storming C JSON Object/ Swagger File / Business Description Procedural Step Descrip tion
  14. 14. Onboarding Process of a Customer © Allianz 2022 14 Allianz Customer Model - ACM Lead Generation and Management Relationship Building Quotation Offer and Follow-up ▪ Generation of Leads and their qualification ▪ Start of the real sales opportunity process ▪ Parametrization and calculation of the quotes ▪ Offer is presented for signature ▪ Customer is bidden for feedback ▪ Follow-ups are arranged Sales Opportunity ▪ Get in contact with the prospect ▪ Collect of the prospect data ▪ Invitation of the prospect to the advisory meeting ▪ Introduction of the agent and risk assessment of the prospect INTEGRATION ARCHITECTURE
  15. 15. 15 Quote Product x Enter Parameters Calculate Tariff Assess Risk Calculate Tariff Offer with Variants Quotation Underwriter Workplace Task Mngmt Hand over Documents Create Customer Documents Select Quotes Feedback Session Arrange next Steps Contract Creation Create Applications Accept Risk Create Contract Quotes Document Services Advisor y Lead Management Qualify Lead Automatically Create Lead Qualify Lead Manually Customer Management Check / Enhance Data g Quotation Parameters Risk Assessment Automatically Quotation Automatically Offer Creation Underwriter Workplace Manual Risk Assessment Manual Quotation Advisory Life Situation Introduce Agency Risk Assessment Product Selection Feedback Session Task Management Contact Prospect Arrange Appointment Arrange next Steps Document Services Create Documents Hand over Documents Select and Sign Documents Policy Management Automatic Application Creation Automatic Risk Assessment Automatic Contract Creation Policy Mnmgt Task Mngmt Task Mngmt Cust. Mngmt Advisor y Contact Prospect Check & Enhance Data Arrange Appointm. Life Situation Introduce Agency Risk Assessment Product Selection Lead Mngmt Create Lead Qualify Lead Qualify Lead New New Legacy New Legacy New Legacy Legacy Legacy INTEGRATION ARCHITECTURE
  16. 16. Domain Model © Allianz 2022 16 Opportunity Process Lead Task Customer Advisory Quote Risk Document Contract Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key Process ID as Foreign Key 1 1 1..* 1 1 1 1 1 ✔ Flexible architecture ✘ Evolutionary architecture ✘ Flexible interface architecture ✔ Decoupling of application via events ✘ Integration of different backend applications including legacy applications INTEGRATION ARCHITECTURE
  17. 17. Synchronous Approach © Allianz 2022 17 Lead Management Customer Management Quotation Advisory Task Management Document Services Policy Management Sales Portal Sales Process Management INTEGRATION ARCHITECTURE Layer Layer Layer
  18. 18. Domain Model © Allianz 2022 18 Opportunity Process Lead Task Customer Advisory Quote Risk Document Contract Lead Event Task Event 1 1 1..* 1 1 1 1 1 ✔ Flexible architecture ✔ Evolutionary architecture ✔ Flexible interface architecture ✔ Decoupling of application via events ✔ Integration of different backend applications including legacy applications INTEGRATION ARCHITECTURE Customer Event Advisory Event Quote Event Risk Event Document Event Contract Event
  19. 19. Asynchronous Approach © Allianz 2022 INTEGRATION ARCHITECTURE 19 Lead Management Customer Management Quotation and Underwriter Advisory Task Management Document Services Policy Management Sales Portal Sales Process Management Kafka Layer Layer Layer Layer Layer
  20. 20. © Allianz 2022 20 INTEGRATION ARCHITECTURE
  21. 21. Events on Kafka as Topics © Allianz 2022 21 INTEGRATION ARCHITECTURE
  22. 22. Take aways 22
  23. 23. Take Away Decoupled Systems are easier to understand © Allianz 2022 23 With event-driven systems, we can decouple systems and better understand our software. INTEGRATION ARCHITECTURE
  24. 24. Take Away Integration of legacy systems are simply easier with an event-driven approach. © Allianz 2022 24 With event-driven systems, we can decouple systems and better understand our software. INTEGRATION ARCHITECTURE
  25. 25. © Allianz 2022 Vielen Dank! annegret.junker@allianz.de

×