Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Martin Krasser & Christian Ohr | ICW AGDie Open eHealthIntegration Platform(IPF)
Martin Krasser Position     Software architect and engineer @ ICW  Fokus     Verteilte Systeme     Anwendungsintegration, ...
Christian Ohr Position     Software architect and engineer @ ICW  Fokus     Anwendungsentwicklung     Anwendungsintegratio...
Agenda   IPF Grundlagen   Anwendungsfälle   Healthcare Standards und IPF   Beispiel & Demo: IHE Transaktion (ITI-8)
Integrationsoptionen                     Portals   Presentation      Mashups         Other      Layer                     ...
Was ist IPF?• Open Source Java/Groovy Integrations-Framework  für den Healthcare Bereich     • Hilft dem Entwickler, Healt...
Was ist IPF?• Artikel   • Introduction to the Open eHealth Integration Platform,     by Martin Krasser   • http://architec...
Was ist Apache Camel?• Open Source Java Integrations-Framework   • “… framework that focuses on making integration easier ...
Camel Architektur  Domain-specific languages (DSL)               Components                                               ...
Bsp.: Programmieren mit CamelÜberblickEnterprise Integration Patterns (EIPs)Domänenspezifische Sprache (DSL)BeispielFilter...
Anwendungsfall: Krankenhaus Unterschiedliche Szenarien     Patientenverwaltung     Leistungsanforderung     Medizinisc...
eHealth Enterprise              Patienten-             Management   Küche  Labor-IS               Klinisches             I...
Enterprise Departments
Community Integration
Cross-Community Integration
Patienten-           Management KücheLabor-IS             Klinisches           Informations-   Radiologie-IS              ...
Standards
Patienten-      Register PatientManagement         – IHE „PIX“ Profile                       HL7 v2.3 ADT^A01           ...
Wie kann IPF dabei helfen?• Unterstützung bei funktionaler Integration  über Standards  • Datenaustausch (z.B. HL7, CDA)  ...
IPF Camel Erweiterungen• Integrationskomponenten     •    IHE Profile: XDSa, XDSb, PIX (v2/v3), PDQ (v2/v3), ...   IHE Pro...
IPF Camel Erweiterungen• Content DSL   •   HL7v2 DSL   •   CDA/CCD DSL• Routing (Camel) DSL Erweiterungen   •   HL7/CDA Va...
Bsp.: Programmieren mit IPFÜberblickRouting DSL ErweiterungenContent DSL (HL7v2)BeispielValidierung und Filterung von HL7 ...
Bsp: IHE ITI-8                           Patientenmanagement                                HL7       ADT-A01: Patient adm...
Bsp: Integration layer                       HL7                      HL7                       msg                      m...
Die Open eHealth Integration Platform
Nächste SlideShare
Wird geladen in …5
×

Die Open eHealth Integration Platform

3.062 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie, Bildung
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Die Open eHealth Integration Platform

  1. 1. Martin Krasser & Christian Ohr | ICW AGDie Open eHealthIntegration Platform(IPF)
  2. 2. Martin Krasser Position Software architect and engineer @ ICW Fokus Verteilte Systeme Anwendungsintegration, Systemintegration Sicherheit in verteilten Systemen Open Source Projekte Open eHealth Integration Platform (Founder) http://gforge.openehealth.org/gf/project/ipf Apache Camel (Committer) http://camel.apache.org ...
  3. 3. Christian Ohr Position Software architect and engineer @ ICW Fokus Anwendungsentwicklung Anwendungsintegration Mitarbeit in eHealth-Standardisierungsgremien Open Source Projekte Open eHealth Integration Platform (Committer) http://gforge.openehealth.org/gf/project/ipf HAPI (Contributor) http://hl7api.sourceforge.net
  4. 4. Agenda IPF Grundlagen Anwendungsfälle Healthcare Standards und IPF Beispiel & Demo: IHE Transaktion (ITI-8)
  5. 5. Integrationsoptionen Portals Presentation Mashups Other Layer Applications Messages, Service Layer SOA/ROA Other (Business Logic) Applications IPF Shared DB Data Replication Other Store Applications
  6. 6. Was ist IPF?• Open Source Java/Groovy Integrations-Framework für den Healthcare Bereich • Hilft dem Entwickler, Healthcare Standards (HL7, IHE, CDA ...) zu implementieren • Fokus auf erweiterbare Healthcare DSLs • Basiert auf dem Apache Camel Integrations-Framework • Deployment Optionen: embedded, standalone und distributed• Integrations-Platform auf OSGi Basis • Dynamisches Laden/Entladen von Integrationsanwendungen • Development and monitoring tools (IPF Tools Projekt) • IPF als Eclipse plugin• Open Source seit Nov. 2008 • http://gforge.openehealth.org/gf/project/ipf/ • Letztes Release: IPF 2.0.0 • Apache 2 Lizenz
  7. 7. Was ist IPF?• Artikel • Introduction to the Open eHealth Integration Platform, by Martin Krasser • http://architects.dzone.com/articles/introduction-open- ehealth
  8. 8. Was ist Apache Camel?• Open Source Java Integrations-Framework • “… framework that focuses on making integration easier and more accessible to developers …” • “… concrete implementations of all the widely used Enterprise Integration Patterns …” • “… connectivity to a great variety of transports and APIs …“ • “… easy to use Domain Specific Language (DSL) to wire EIPs and transports together …”From: Apache Camel: Integration Nirvana, by Jonathan Ansteyhttp://architects.dzone.com/articles/apache-camel-integration
  9. 9. Camel Architektur Domain-specific languages (DSL) Components Connectivity to external systems or resources. More than 70 components! Endpoints Send/receive messages to/from external systems Processors Extension points Transform, validate, filter, router etc. Routes Endpoints connected by processors using DSL
  10. 10. Bsp.: Programmieren mit CamelÜberblickEnterprise Integration Patterns (EIPs)Domänenspezifische Sprache (DSL)BeispielFilterung von XML Nachrichten über HTTP http://somewhere.com:8090/subscribers http://somewhere.com:8080/subscribers D D HTTP XPath HTTP Endpoint Filter Endpoint (inbound) (outbound) Camel DSL (Java)from("jetty:http://0.0.0.0:8090/subscribers") // inbound HTTP endpoint.filter().xpath("/person[@name=John]") // XPath filter.to("http://somewhere.com:8080/subscribers"); // outbound HTTP endpoint ICW Developer Conference
  11. 11. Anwendungsfall: Krankenhaus Unterschiedliche Szenarien  Patientenverwaltung  Leistungsanforderung  Medizinische Dokumentation  Medizinische Spezialanwendungen Heterogene Systemlandschaft  Einsatz vieler unterschiedlicher vernetzter Anwendungen  Ausgeprägte Historie  Standardfall: ereignisgetriebene Kommunikation
  12. 12. eHealth Enterprise Patienten- Management Küche Labor-IS Klinisches Informations- Radiologie-IS system PACS Archiv
  13. 13. Enterprise Departments
  14. 14. Community Integration
  15. 15. Cross-Community Integration
  16. 16. Patienten- Management KücheLabor-IS Klinisches Informations- Radiologie-IS system PACS Archiv
  17. 17. Standards
  18. 18. Patienten-  Register PatientManagement – IHE „PIX“ Profile  HL7 v2.3 ADT^A01  MLLP (Socket)  Register Document – IHE „XDS.b“ Profile ?  ebXML KlinischesInformations-  WebService (Soap 1.2) system  HTTP(S)  Audit – IHE „ATNA“ Profile  RFC 3881 Archiv  Syslog  UDP
  19. 19. Wie kann IPF dabei helfen?• Unterstützung bei funktionaler Integration über Standards • Datenaustausch (z.B. HL7, CDA) • Transportprotokolle (z.B. MLLP, HTTP, WebServices)• Kapselung kompletter Standard-Stacks • IHE IT-Infrastructure (ITI) • HITSP
  20. 20. IPF Camel Erweiterungen• Integrationskomponenten • IHE Profile: XDSa, XDSb, PIX (v2/v3), PDQ (v2/v3), ... IHE Profil (Konzept) IHE IHE Actor 2 Actor 3 Application Layer Actor Interface Actor Interface IHE IHE Transaction 1 Transaction 2 Integration Layer Actor Interface IHE Actor 1 Application Layer Application Component Integration Component Message
  21. 21. IPF Camel Erweiterungen• Content DSL • HL7v2 DSL • CDA/CCD DSL• Routing (Camel) DSL Erweiterungen • HL7/CDA Validierung ... • Schematron Validierung ... • Groovy closure support • ...• DSL Erweiterungsmechanismus auf Groovy Basis • Zur Definition neuer DSL Elemente (z.B. für projekt-spezifische DSLs)
  22. 22. Bsp.: Programmieren mit IPFÜberblickRouting DSL ErweiterungenContent DSL (HL7v2)BeispielValidierung und Filterung von HL7 Nachrichten über HTTP D ? D HTTP HL7 HL7 HTTP Endpoint Validator Filter Endpoint (inbound) (outbound) IPF DSL (Groovy) from(jetty:http://0.0.0.0:8090/admissions) // inbound HTTP endpoint .unmarshal().ghl7() // HL7 parser .validate().ghl7() // HL7 validator .filter {it.in.body.PID[8].value == F} // HL7 filter using HL7 DSL .to(http://localhost:8080/admissions) // outbound HTTP endpoint
  23. 23. Bsp: IHE ITI-8 Patientenmanagement HL7 ADT-A01: Patient admission MLLP HL7 IHE ITI-8 msg msg ADT-A08: Patient update ACK, NAKIntegration layer ? Patient ServiceService layer Klinisches Informationssystem
  24. 24. Bsp: Integration layer HL7 HL7 msg msg MLLP IHE ITI-8 Bean endpoint binding endpoints A01 Transformer ? A08 Transformer HL7 Message Content- HL7 toon error message queue based domain validation router object transformer Mail server user2@localhost

×