ZENOS goes Messaging Neue Kopplungsarchitektur bei der BARMER GEK Fritz Weichbrodt BLUECARAT AG Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 1 Agenda Worum geht es fachlich: oscare®-Einführung bei der BARMER GEK Was ist der Businesspartner (BP) Worum geht es bei der Kopplungsarchitektur Kurzer Überblick über die Kopplungsarchitektur BP Ist die Kopplungsarchitektur ein Widerspruch zum ESB-Ansatz? Fazit und Ausblick Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 2 Worum geht es überhaupt? Einführung der SAP-basierten Standardsoftware oscare® (AOK-Systems) – CRM (der enthält den BP) – SAP HR, SAP FI – FSCD – PKM (Privatkundenmanagement) – Claims (das ist das Leistungswesen) Projektbeteiligte – BARMER GEK (Kunde) – IBM (Projektlead) – ACTUM (ZENOS-Lead) – BLUECARAT ZENOS bei BARMER GEK bereits eingeführt Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 3 Worum geht es bei der Kopplungsarchitektur? Replikation von Businesspartnern(BP) (zwischen MeldeBeitragsWesen MBWCRM) – hier in der Rolle PK (Privatkunde) – FK (Firmenkunde) Was ist ein Businesspartner (bei der BARMER GEK)? – Alle Informationen, die den BP identifizieren und zur Person/Firma gehören – Rollen, Adressen, Kommunikationsdaten, Beziehungen (zu anderen BPs), Schlüsselbegriffe (Mitgliedsnummer, Rentenversicherungsnummern, EGK-Nr, et.) und vieles mehr – Aber auch Meldungen, Merkmale, Entgelte (das ist Krankenversicherungsspezifisch) Wo ist der Businesspartner abgelegt? – im BUS (zOS Legacysystem der BARMER B-Welt) – im MBW (zOS Legacysystem der BARMER G-Welt) – im SAP-CRM – im SAP-Core (mit FS CD und Claims) – in diversen sonstigen internen und externen Systemen Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 4 Wo gibt es den BP bei der BARMER? (sehr stark vereinfacht) PK BUS (zOS) PK CRM (SAPoscare®) FK FK enthält alle BPs Wurde mit ZENOS umgesetzt Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 5 Situation 2007 Wo gibt es den BP bei der BARMER? (ursprüngliches Ziel) CRM (SAPoscare®) BP (PK/FK) Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 6 2010 das war das ursprüngliche Ziel Wo gibt es den BP bei der BARMER GEK? (Die Fusion mit der GEK ändert das Bild) MBW (zOS) PK BUS (zOS) PK CRM (SAPoscare®) FK FK MeldeBeitragsWesen Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 7 2009 Fusion mit GEK Wo gibt es den BP bei der BARMER? (MBW übernimmt einen großen Teil von oscare®) PK MBW (zOS) BUS (zOS) PK CRM (SAPoscare®) PK FK FK Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 8 2010 Entscheidung für MBW als PKM Wo gibt es den BP bei der BARMER? (jetzt hat MBW alle PKs) PK MBW (zOS) PK PK(B) BUS (zOS) X PK(G/B) CRM (SAPoscare®) FK FK darum geht es Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 9 2012 MBW hat alle PK Wo gibt es den BP bei der BARMER? (jetzt hat MBW auch die FKs) PK MBW (zOS) PK(G/B) FK darum geht es PK PK(B) CRM (SAPoscare®) BUS (zOS) FK FK Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 10 2013 MBW hat alle PK/ FK Wo gibt es den BP bei der BARMER? (Ziel erreicht) PK MBW (zOS) PK(G/B) FK CRM (SAPoscare®) FK Claims (SAPoscare®) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 11 2014 BUS entfällt Das ist schon eher die ganze Wahrheit!! Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 12 Rahmenbedingungen? asynchrone Replikation ist gesetzt! keine strategische Entscheidung für einen ESB (Enterprise Service BUS) vorhanden bzw. kurzfristig umsetzbar die Replikation von BPs erfordert komplexe Logik im jeweiligen Zielsystem (und im Quellsystem) Die Verbuchungszeiten liegen im Schnitt bei 0,5-2 sec Verbuchungs- und Anwendungstransaktion sind nur lokal (nicht verteilt) In den Anwendungssystemen und bei den Verbuchungen sind nur lokale Transaktionen erlaubt Es müssen täglich 300.000 Replikationen durchgeführt werden in Spitzen bis 500.000 Serialisierung (zumindestens auf Partnerebene) muss gewährleistet sein Skalierung notwendig Logik muss im Quell- und Zielsystem implementiert werden Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 13 Wie replizieren? (Entscheidungsprozess stark verkürzt) ESB (Enterprise Service Bus) – es gibt aber keinen Standard in der BARMER GEK und auf den kann man sich kurzfristig nicht einigen – es gibt kein Geld, wenn der Mehrwert nicht gegeben ist (wegen der komplexen Logik im Zielsystem fungiert der ESB hier nur als Durchlauferhitzer und das reicht nicht für die Einführung) also: zunächst kein ESB WebSphere MQ auf zOS (HOST) gesetzt! – aber SAP kann kein MQ, was tun? SAP kann doch MQ (zumindest mit dem HOST) – SAP kann native SQL (natürlich auch remote) – DB2 bietet MQ-Funktionalität auf SQL-Syntax Details?? Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 14 SAP-Zugriff auf MQ native SQL Open SQL (SAP) EXEC SQL. Connect to zOS. ENDSQL. EXEC SQL. SELECT MQGET(„QUEUE“) FROM SYSIBM.SYSDUMMY1 INTO :P_msg ENDSQL. Insert Msg Into SAP_TABLE. COMMIT WORK. TwoPhaseCommit zurück Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 15 Entwicklungsumgebung zOS – Innovator (MDA-Tool) – COOL (COBOL-Generator) – GUI auf WIN32 mit C# SAP – ABAP – ZENOS Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 16 Messageaufbau Metainformation QMsgHeader Kennung, Funktionscode, Länge FachMsg (RPC, DI-Struktur, XML, …) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 17 PK-Replikation mit der Kopplungsarchitektur MBW BasisBaustein (BP-PK) SAP-CRM lokale MBW- Transaktion DB QuittungsVerarbeit. Q-Leser AuftragsReplikator ReplikationsEvent verteilte Transaktion MQ MQ over PK-Auftrag DB2 Mapping BasisSkalierung get Queuename ReplTabs MQ-Sender (Outbound) native SQL QuittungsProzessor Repl Auftrag AuftragsProzessor verteilte Transaktion MQ PK-Out Sender lokale MsgQueue Q-Checker (ProzessKontrolle) PK-Outb.Verarbeit. Replikator Externer Trigger MQ over DB2 MQ-Reader (Inbound) native SQL LokaleQ PK-In MsgStat Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 18 BPStat Kontroller Kontroller LVQ-Reader BEK_1011 BasisBaustein (Verbuchung) ZENOS-Komponenten MQ-SENDER Auftrags Queue ZENOS Lokale SendeQueue Liest Daten aus der lokalen Sende-Q und schreibt diese in die ferne MQ im PK-Szenario Q - CHECKER Fehlerklasse > A Prüfende Instanz Anforderung Komplettlieferung Dynamische MQREADER RPC-Error Handler Parallelisierung LVQLVQPK-SST READER PK-SST LVQVerarbeitung READER Verarbeitung PK-SST READER der PK-Daten der Verarbeitung PK-Daten der PK-Daten RPC Handler Eingangs Queue Liest Daten aus der Eingangs-Q AnwendungsFB Basis-Skalierung LVQ ZENOS lokale Q Liest Daten Liest aus derDaten Liest aus derDaten LVQ LVQaus LVQ Fehlerklasse A Erneute Verarbeitung Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 19 RCODE4 BP-Error Handler MQ-Reader (Daemon: Instanz je INB-Queue) Verbindung aufbauen stopped? Begin Tra Remote Queue QMsg lesen ja Queue leer? warten ja Verbindung trennen Fehler? Customizing lesen ja Start Ende Rollback das ist die allg. INBOUNDSchnittstelle KennungVersteher (RfC) Fehler? ja Status remote gespeichert lokale ZielQ ZENOSQ MsgStat Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 20 MQ-Sender (Daemon: Instanz je INB-Queue) Verbindung aufbauen stopped? Begin Tra lokale Queue QMsg lesen ja Queue leer? warten ja Verbindung trennen Fehler? Customizing lesen ja Start Ende Rollback das ist die allg. OUTBOUNDSchnittstelle mqsend (RfC) Fehler? ja Status remote gespeichert Remote ZielQ MQ MsgStat Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 21 Wie kann man die Kopplungsarchitektur in einen ESB integrieren? die Schnittstellen sind bereits vorhanden Es entfällt der MQ-Prozess MQ-Reader, dessen Funktionalität wird vom ESB übernommen Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 22 PK-Replikation (ohne ESB) Externer Trigger MBW BasisBaustein (BP-PK) SAP-CRM lokale MBW- Transaktion DB QuittungsVerarbeit. ReplikationsEvent Q-Leser AuftragsReplikator verteilte Transaktion MQ MQ over PK-Auftrag DB2 Mapping BasisSkalierung get Queuename ReplTabs QuittungsProzessor Repl Auftrag AuftragsProzessor verteilte Transaktion MQ PK-Out Sender MQ-Sender (Outbound) native SQL Q-Checker (ProzessKontrolle) PK-Outb.Verarbeit. Replikator lokale MsgQueue MQ over DB2 MQ-Reader (Inbound) native SQL LokaleQ PK-In MsgStat Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 23 BPStat Kontroller Kontroller LVQ-Reader BEK_1011 BasisBaustein (Verbuchung) PK-Replikation (mit ESB) MBW BasisBaustein (BP-PK) ESB (z.B. PI) lokale MBWDB Transaktion AuftragsReplikator QuittungsVerarbeit. Q-Leser ReplikationsEvent MQ PK-Auftrag PK-Outb.Verarbeit. Replikator Externer Trigger Sender SAP-CRM verteilte Transaktion jms-Writer RfC MQ-Sender (Outbound) native SQL Q-Checker (ProzessKontrolle) lokale MsgQueue QuittungsProzessor Repl Auftrag AuftragsProzessor verteilte Transaktion MQ PK-Out LokaleQ PK-In jms-Reader Kontroller Kontroller LVQ-Reader RfC Mapping BasisSkalierung get Queuename ReplTabs MsgStat Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 24 BPStat BEK_1011 BasisBaustein (Verbuchung) Architektur BP(PK und FK) Gesamtübersicht BARMER GEK BP(PK/FK)-Gesamtsicht (mit „alter S11 und S14") MBW BUS (bis Stufe 4) BUSMBWS11Replikation BUSMBW.FK. REPLIKATOR BUS-S11Replikation PK MBWBUS.PK. REPLAUFTRAG S11Aufträge PK BUS-S14Replikation FK S11Aufträge PK DSNACICS SAP CRM PK-OutboundReplikation MQ-Sender MBW_MQ11 (PK) CRMMBW.PK. REPLAUFTRAG PK-Inbound Aufträge und Quittungen PK-Inbound Aufträge und Quittungen PK-Inbound Replikation MBWCRM.PK. REPLIKATOR PK-Inbound Replikation FK-OutboundReplikation MQ-Reader MBW_MQ01 (PK) CRMMBW.FK. REPLIKATOR MQ-Sender MBW_MQ12FK FK-OutboundReplikation lokale SendeQueue SAP-BP FK-Intbound Aufträge und Quittungen FK-Inbound-Replikation CRMMBW.FK. REPLAUFTRAG MQ-Sender MBW_MQ13FK MBWCRM.FK. REPLIKATOR MQ-Reader MBW_MQ03FK PK-OutboundAuslöser SAP-BPTransaktion FK-Inbound Aufträge und Quittungen FK-Inbound-Replikation Legende: FK-Inbound Übergangsreplikation FK-Outbound Aufträge und Quittungen MBWCRM.FK. REPLAUFTRAG MQ-Reader MBW_MQ02FK FK-Outbound Aufträge und Quittungen Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 25 PK-In/-Outbound Replikation FK-Outbound finale Replikation S14Auslöser technische Daten Repliziert werden – ca. 13 Mio BPs (Privatkunden) Inbound – ca 5 Mio BPs (Firmenkunden) Outbound durchschnittliche Verfügbarkeit einer Replikation: ca. 3 Sekunden – d.h. nach 3 Sekunden ist die Verbuchung im abhängigen System erfolgt Durchsatz – ca. 50.000 Msg pro Remote Queue pro Stunde – diese Messages werden mit 10-40 Dialogprozessen in einer Stunde verarbeitet Verfügbarkeit – 7x22 (nur während der SAP-TV wird das Inbound-Messaging gestoppt) Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 26 Fazit und Ausblick ZENOS eignet sich sehr gut, um SAP in Standard-Messaging-Architekturen einzubinden – mit ESB – ohne ESB genügend Performance erreicht – weitere Skalierungen sind möglich – mehrere Queues – weitere Anzahl von Verbuchungsprozessen – … jede Menge an technischen und fachlichen Monitoringfunktionalitäten implementiert gut in den Betrieb integrierbar – Problemmails – Tickets – BLOG Verallgemeinerung jederzeit möglich – an andere Queueingsysteme – an „Queue-ähnliche“ Systeme – … Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 27 Snapshots: Lastverteilungsmonitor Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 28 Snapshots: Q-Monitor Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 29 Snapshots: BP-Replikationsstatus Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 30 ZENOS goes Messaging Vielen Dank für Ihre Aufmerksamkeit! Fritz Weichbrodt BLUECARAT AG Und vielen Dank an das Actum-Team (für die gute und erfolgreiche Zusammenarbeit)! Kopplungsarchitektur bei der BARMER GEK ZENOS-Forum │ 28.02.2013 │ Seite 31