dosug tech overview of xaware
DESCRIPTION
This is the Denver Open Source Users Group (DOSUG) presentation on XAware given by Kirstan Vandersluis, Chief Science OfficerTRANSCRIPT
© XAware Inc. 2008
XAware Technology Overview
2
Presenter
Kirstan Vandersluis Founder, Chief Science Officer at XAware XAware Project Leader
3
Agenda
XAware Project Overview XAware Technology Features XAware’s place in the SOA Stack Product Components XAware Metadata Creating an XML View Deployment Environments Demonstrations
Data Service from File, Database Inbound XML Processing into different databases
4
XAware Project Overview
XAware provides real-time data integration environment Eclipse Plugin IDE Runtime Engine: J2EE, Servlet, Batch Mode, Java API
Project hosted on www.xaware.org Forums, Wiki, Hives, Blogs Self-training material Forge on www.SourceForge.net
Binary Distributions (All-In-One and Eclipse Plugin) Source Code Bug Tracker
5
Problem: Over 60% of development time spent on Data Access
Transactions Error Handling Extension Points Security
Inbound XML Decomposition Synchronization Conditional Logic
Aggregation Data Chaining
Solution: XML abstraction layer reduces complexity and speeds development
6
SOA Stack
7
XAware and the ESB
On-ramp to ESB for information-rich messages XAware generates XML message, sends to ESB ESB passes XML message to XAware for processing
ESB handles transport & guaranteed delivery Orchestration layer (included with some ESB offerings)
Orchestrates services Data services exposed by XAware
8
XAware Components
XAware Designer – Eclipse plug-in Visual drag-and-drop, wizard-based IDE that speeds the
development of XAware-powered applications XAware Engine
High-performance, scalable, dynamic data integration and data services execution engine
J2EE, Servlet, Batch, or Embedded
Adapters Provide connectivity to requested data sources and systems;
SQL, FTP, Email, SNMP, Text, RMI, Cobol Copybook, File, XSL, LDAP, Java, EJB, JMS, MQ, others…
Connectors Provides synchronous and asynchronous connectivity from
client applications to XAware-delivered services via SOAP, JMS, EJB, HTTP, HTTPS, and Java API
9
XAware Metadata
Format,Rules
LogicalData set
ConnectionInformation
ClientApps
ClientApps
10
Contract-First Service Design
11
Deployment Environments
J2EE Application Server EAR file JBoss, BEA, WebSphere, Sun
Servlet Container WAR file Tomcat
Batch Windows & Linux command line Scheduled execution
Java API Embed XAware into another application
XAware metadata files packaged as XAware Archive file (XAR) Deployed to a server enabled with the XAware Engine
12
Supporting Development, QA, and UAT Processes
ACORD
BizDocumentBizDocument BizComponentBizComponent BizDriverBizDriver
Orchestrate ConnectTransform
ACORD
XAwareDesign
Environment
ACORD
BizDocumentBizDocument BizComponentBizComponent BizDriverBizDriver
Orchestrate ConnectTransform
ACORD
ACORD
BizDocumentBizDocument BizComponentBizComponent BizDriverBizDriver
Orchestrate ConnectTransform
ACORD
Development Test Production
Visual Design• Eclipse based visual design
environment• Packaging and deployment tools
Versioning• XAware meta-components are
XML files.• Source management via
Subversion, CVS/PVCS, Rational.
• Also can be versioned in Meta-Data Repositories
Testing• Development, test and
production deployments can be pointed at specific source databases/data sets for testing.
• BizDrivers enable pointing to different data sources
XAwareRuntime
Environment
XAware Tools create meta-components:
•BizDocument
•BizComponent
•BizDriver
.XAR File
13
XAware Demonstration
ACORD Policy Policy record received as structured text Party information received from database Service deployed and invoked over HTTP, SOAP
14
ACORD Policy
policyFile
Policy Number
Policy COBOL Data(Copy Book)
ClientApps
ClientApps
policyFile
Party DB
PolicyGetPolicy
Insured
Message Queue
15
Data Chaining
16
Inbound XML Processing
17
Information Exchange
18
Community Contributions
Product designed to support community contributions Easy, well documented extensions to the product
Contribution opportunities Adaptor technologies to allow new data sources to participate New Eclipse Plugins for data-related features (metadata apps?) Localization
19
BizView Architectural Diagram Example
20
A BizView to Synchronize and Migrate Data