Overview Of Xaware

1,555 views

Published on

Presented to Colorado Springs Open Source Users Group on February 28, 2008 by Kirstan Vandersluis.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Overview Of Xaware

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

×