Oracle OpenWorld 2010 Practical Insights on Using AIA (presentation only)


Published on

Published in: Technology, Business
  • Be the first to comment

Oracle OpenWorld 2010 Practical Insights on Using AIA (presentation only)

  1. 2. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  2. 3. Practical Insight on Using Oracle Application Integration Architecture Rajesh Raheja Senior Director, Development Rohit Agarwal Consulting Solution Architect @RahejaRajesh
  3. 4. Connector Service Session Agenda EBM EBS EBF ABCS Adapters GuaranteedDelivery ErrorHandlingFramework PLW MEP BPEL ESB ODI OER PIPS Integration Flow SOA SCA Governance CAVS ServiceArtifactGenerator BPM BPA FoundationPack FP PIPAuditor XMAN PSAA XREF DVM EBO AdapterServices LifecycleDatabase Harvestor NetworkTopology ConfigurationWizard AIAInstallationDriver BusinessTask ServiceSolutionComponent JDeveloper Canonical DeploymentPlan Cluster Rollout Extensions Share Implementation Best Practices
  4. 5. Application Integration Architecture Solutions Which Deliver Sustainable Integration Complete. Open. Integrated. Foundation Pack Reference Process Models Common Objects & Standard Shared Services SOA/BPM Framework & Methodology Packaged Integration Accelerators For Specific Applications & Processes (PIPs and Direct Integrations) Pre-built Integrations BPM Suite Process Management Registry & Repository Service Management SOA Governance Process Integration B2B Integration SOA Suite ODI Suite Bulk Data Processing Data Quality Developer Utilities
  5. 6. Example PIP Implementation Agent Assisted Billing Care - Communications Process Integration Pack Customer Agent No problem, let me look at your current bill I have a question about a current charge Siebel CRM Call Center Oracle Billing and Revenue Management <ul><ul><li>What It Does: </li></ul></ul><ul><ul><li>Eliminate CRM  Billing “swivel chair integration” </li></ul></ul><ul><ul><li>Goal: </li></ul></ul><ul><ul><li>Increase Agent productivity and reduce ramp up time </li></ul></ul><ul><ul><li>Benefits: </li></ul></ul><ul><ul><li>Improve Call Handling KPIs and reduce training costs </li></ul></ul>AIA - Service Usage Details
  6. 7. Implementation Requirements Start with Agent Assisted Billing Care Pre-built Integration Accelerator AIA - Service Usage Details Siebel CRM Call Center Oracle Billing and Revenue Management AIA - Service Usage Details + Data Plan Usage R 1 Self Service Web Channel Custom Application R 2 Oracle Billing and Revenue Management US Subscribers Only R 3 Mobile Apps Customer I will look up my data plan usage charge online.
  7. 8. . . . Implementation Task List Based on AIA Development Lifecycle Business Process Modeling Functional Definition Service Design & Construction Deployment Plan Generation Install & Deploy Tools Used
  8. 9. Reuse & Extend Services
  9. 10. Review Service Design Select Integration Flows to Extend Service Usage Event Details Service Usage Details Search Usage Send Service Usage Event Details Send Service Usage Details Send Search Results CRM Billing Customer Provides Account Info Search Customer Inquires Service Usage Get Balance Resource Detail Send Balance Resource Detail Service Usage Business Process Internal to CRM Integration Points Oracle BPA Suite
  10. 11. Review Service Design Identify Implementation Sub-Projects BRM Provider ABCS QueryServiceUsage BRMCommsProvABCSImpl ServiceUsageEBS ServiceUsageEBO PCM_OP_BILL_GET_ITEM_ EVENT_CHARGE_DISCOUNT QueryServiceUsageList() OpCode API EBM Query Service Usage Event Details a.k.a Usage Allocation or Charge Distribution ABM Requestor ABCS QueryUnbilledEventDetails SiebelCommsReqABCSImpl QueryServiceUsageListEBM Siebel CRM 1 Extend EBO 2 Extend Mappings BRM OpCode API 3 Additional Instance Self Service Application ABM Requestor ABCS QueryUnbilledEventDetails SelfServiceCommsReqABCSImpl 4 New Connector QueryServiceUsageListEBM Oracle Enterprise Repository AIA PIP Implementation Guides
  12. 13. Extend Message Payload Add New Attributes to Extension Area 1 ../Custom/Common/V2/CustomCommonComponents.xsd (Upgrade Safe Sandbox) ../EBO/ServiceUsage/V2/ServiceUsageEBO.xsd Extend EBO JDeveloper 11g
  13. 14. Enrich Attribute Mappings Map New Attributes to Connector Service … _Custom.xsl (Upgrade Safe Sandbox) <ABM>_To_QueryServiceUsageListResponseEBM.xsl 2 Extend Mappings BRM Provider ABCS Mapping ABM-EBM Response JDeveloper 11g
  14. 15. Receive Transform EBM-ABM Transform ABM-EBM Reply Invoke Extension XSLT Extension XSLT Extension Service PreInvoke Extension Service PostInvokeExtension Service Extension Service Callout Callout Callout Callout BRM Opcode PCM_OP_BILL_GET_ITEM_ EVENT_CHARGE_DISCOUNT Enrich Attribute Mappings Call out to External Systems to Validate or Add Content BRM ProviderService QueryServiceUsageBRM CommsProvABCSImpl 2 Extend Mappings Service Usage EBS QueryServiceUsageList() Synchronous Request Response MEP Request EBM Response EBM … Extension Service Upgrade Safe Sandbox JDeveloper 11g
  15. 16. Ensure Service Interoperability Mapping Consistency – Entity Attributes, XREF, DVM Potential Functional Interoperability Issue 2 Extend Mappings XMAN CSV Pivot Table – EBM Attribute Usage Analysis AIA XSL Mapping Analyzer
  16. 17. Provider ABCS Service EBS Create() Update() Query() BRM ABM EBM EBM EBM Provider ABCS Service Provider ABCS Service EBM EBM EBM ABM ABM Add Application Instances Reuse Connector Services and Configure Adapters 3 Additional Instance BRM ABM <ul><li>Artifacts Affected </li></ul><ul><li>Adapters: Services, Connection Factories, Connection Pools, Datasources </li></ul><ul><li>SOA Configuration: XREF column, DVM column, Routing Rules </li></ul><ul><li>AIA Configuration: PLW System Entries, Endpoint URLs </li></ul>JDeveloper 11g AIA Project Lifecycle Workbench Web Logic Server
  17. 18. Provider ABCS Service EBS Create() Update() Query() BRM ABM EBM EBM Provider ABCS Service ABM 3 rd Party App Provider ABCS Service Provider ABCS Service EBM EBM EBM ABM ABM Add Application Instances (3 rd Party) Implement as New Connector Service EBM Modify Routing Rules (Mediator) 3 Additional Instance JDeveloper 11g AIA Project Lifecycle Workbench
  18. 19. Implementation Task Summary Reuse Services using AIA Extensibility Features and Programming Model
  19. 20. Build New Services
  20. 21. Register Integration Metadata Project, Business Task and Service Solution Component 4 New Connector AIA Project Lifecycle Workbench
  21. 22. Generate Services Enter Implementation Details for Desired Service 4 New Connector AIA Service Constructor (JDev)
  22. 23. Review Functional Annotation Ensure Completeness before Modifying Files Ensure all <svcdoc> annotations are complete in composite.xml Design View Source View 4 New Connector JDeveloper 11g
  23. 24. Add Message Transformations Add Message Transformation Mappings – ABM to EBM 4 New Connector JDeveloper 11g
  24. 25. Ensure Service Interoperability Review Service Entity Mapping for Consistency 4 New Connector AIA PIP Implementation Guides Siebel CRM EBO (Common Object) Oracle BRM Account CustomerParty Account Billing Profile CustomerParty BillInfo/PayInfo Invoice Invoice Bill ServiceUsage ServiceUsage ServiceUsage Payment PaymentReceipt Payment Adjustment AccountBalanceAdjustment Adjustment
  25. 26. Ensure Service Interoperability Mapping Consistency – Entity Attributes, XREF, DVM 4 New Connector AIA XSL Mapping Analyzer
  26. 27. Register Service Implementation Harvest Metadata in OER and AIA Lifecycle DB Design Time. Run Time. Visibility and Control = Governance AIA Harvester/Lifecycle Database Oracle Enterprise Repository
  27. 28. Test Service Deployment Create Deployment Plan and Test Initial Deployment WHAT to Deploy = Composites List + Harvested Annotations Generated from AIA Project Lifecycle Workbench HOW to Deploy = Bill of Materials + Deployment Specific Info WHERE to Deploy = Installer properties Extensible framework to bundle and deploy custom components. AIA Installation Driver AIA Project Lifecycle Workbench
  28. 29. Validate Integration Flow Technical Compliance to AIA Standards AIA Code Auditor SOA Validation Checklist
  29. 30. Validate Integration Flow Write Automated Integration Tests and Simulators <ul><li>Testing Tips </li></ul><ul><li>Automate regression tests of all integration points </li></ul><ul><li>Validate optional attributes in service payload </li></ul><ul><li>Test business exceptions as well as system faults </li></ul>Provider Participating Application Provider Participating Application Provider ABC Service Provider ABC Service Provider ABC Service Requester Participating Application Enterprise Business Service Requester ABC Service Test Definition Simulator Requester Participating Application Enterprise Business Service Requester ABC Service AIA CAVS SOA 11g Composite Testing Fwk
  30. 31. Implementation Task Summary Adopt a Holistic, Productive Approach to SOA Development
  31. 32. Plan Rollout Integration Solution
  32. 33. Siebel CRM BRM ABM Requester ABCS Service Provider ABCS Service Enterprise Business Service Provider ABCS Service 3 rd Party App ABM ABM 3 rd Party App ABM Requester ABCS Service EBM EBM EBM EBM Complete Integration Scenarios Add New Integration Flows or Pre-packaged Integration Accelerators <ul><li>New EBOs and EBMs </li></ul><ul><li>New EBS </li></ul><ul><li>New operations for an existing EBS </li></ul><ul><li>New ABCS </li></ul><ul><li>New Direct Integrations </li></ul>
  33. 34. Refine Service Resiliency Make Services Production Ready <ul><ul><ul><ul><li>Message Handling (Re-sequencer / Aggregator / Throttling) </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Guaranteed Message Delivery - Milestones </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Correlations for Asynchronous Service Invocations </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Configuration Properties e.g. bpel.config.transaction, oneWayDeliveryPolicy </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Deployment Descriptors </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Fault Policies and Error Handling </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Security Policies </li></ul></ul></ul></ul>JDeveloper 11g <ul><ul><ul><ul><li>Guaranteed Message Delivery </li></ul></ul></ul></ul>
  34. 35. Test Advanced Deployments Remote, Cluster, Files Only, Patch Deployment Cluster Deployment Remote Deployment AIA Installation Driver
  35. 36. Plan Network Topologies Logical Topologies PIP Based Clusters (supported by PIPs) Functional Flow Based Clusters XREF AIA SOA Cluster Customer Flows AIA SOA Cluster Order Flows AIA SOA Cluster Product Flows XREF XREF XREF AIA SOA Cluster PIP 1 AIA SOA Cluster PIP 2 AIA SOA Cluster PIP 3
  36. 37. Plan Network Topologies Physical Topologies Web Servers Load balancer App Servers Database DMZ Firewall J2EE Firewall Intranet Firewall
  37. 38. Prepare for Go-Live <ul><li>Environment Provisioning </li></ul><ul><ul><li>Dev, QA, Stage, Prod, Training, Performance </li></ul></ul><ul><li>Performance, Scalability and Reliability </li></ul><ul><li>Data Migration </li></ul><ul><ul><li>Seed Data, Test Data, Initial Load </li></ul></ul><ul><li>End User Training </li></ul><ul><li>Adequate Resources! </li></ul>Think Big. Start Small. Adopt Incrementally.
  38. 39. Implementation Task Summary Ensure Integration Solution is Production Ready
  39. 40. Session Summary 3 Key Take Aways Implementing AIA
  40. 41. For More Information Oracle Application Integration Architecture Page Oracle AIA – Application Integration Architecture Group
  41. 45. Extensible Architecture for Implementations Provided by Application Integration Architecture Enrich Transform Validate Application Business Connector Service Application Business Object Application EBM(EBO) Adding fields to existing service/API Change validation rules Alter enrichment process Alter transformations to add new fields or change how existing fields are mapped Modify common object payload with new application content Configure routing rules, filter conditions, new operations and error handling Enterprise Business Service Replace service providers
  42. 46. Enrich Attribute Mappings Call out to External Systems 2 Implement, deploy & activate extension service using supplied abstract WSDL. Extend Mappings Tools Used: JDeveloper 11g
  43. 47. Provider ABCS Service EBS Create() Update() Query() BRM ABM Validate() BRM Provider ABCS Service ABM EBM EBM EBM Provider ABCS Service Provider ABCS Service EBM EBM EBM ABM ABM EBM Add New Operations Implement new operations – Connector Service cannot be Reused 3 Configure Additional Instance All new artifacts - EBM, EBS WSDL, Mediator routing, therefore upgrade safe. EBM Tools Used: JDeveloper 11g
  44. 48. Generate Service Draft Select Service Solution Component and Enter Implementation Details 4 New Connector Tools Used: AIA Service Constructor (JDev)
  45. 49. Add Message Transformations Review Cross Reference Usage within Existing Connector Services 4 New Connector Operation Cross Reference Entity Siebel CRM ID Oracle BRM ID Inserts & Lookups CUSTOMERPARTY_ACCOUNTID Account RowId Account POID Inserts & Lookups CUSTOMERPARTY_BILLPROFILEID Bill Profile RowId BillInfo POID Inserts & Lookups CUSTOMERPARTY_PAYPROFILEID Bill Profile RowId PayInfo POID Inserts & Lookups CUSTOMERPARTY_CONTACTID Contact RowId Account POID(s) and/or PayInfo POID(s) Inserts & Lookups CUSTOMERPARTY_PARTYID Party RowId N/A Inserts & Lookups CUSTOMERPARTY_PARTYCONTACTID Account RowId : Contact Row Id N/A Inserts & Lookups CUSTOMERPARTY_PARTYLOCATIONID Account RowId : Address Row Id N/A Inserts & Lookups CUSTOMERPARTY_LOCATIONREFID Siebel Location Id N/A Inserts & Lookups CUSTOMERPARTY_ACCOUNT_COMMID Siebel Account Communication Id N/A Inserts & Lookups CUSTOMERPARTY_CONTACT_COMMID Siebel Contact Communication Id N/A Inserts & Lookups CUSTOMERPARTY_CONTACT_PHONECOMMID Siebel Contact Phone Communication Id N/A Inserts & Lookups CUSTOMERPARTY_CONTACT_EMAILCOMMID Siebel Contact Email Communication Id N/A Inserts & Lookups CUSTOMERPARTY_CONTACT_FAXCOMMID Siebel Contact Fax Communication Id N/A Inserts & Lookups CUSTOMERPARTY_ADDRESSID Address RowId Account POID(s) and/or PayInfo POID(s) Inserts CUSTOMERPARTY_DEFAULTBALANCEGROUPID N/A Account’s Default Balance Group POID Tools Used: AIA PIP Implementation Guides
  46. 50. Generate Deployment Plan Harvest Integration Metadata Tools Used: AIA Harvester AIA Lifecycle Database Oracle Enterprise Repository
  47. 51. Validate Integration Flow Service Usage Details UI
  48. 52. Test Advanced Deployments Analyze Co-Deployment routing rule clashes between PIP combinations Tools Used: AIA Shared Artifact Analyzer
  49. 53. AIA is an Architecture Designed for Adaptability Customer Thank you for resolving it in the first call itself. I am glad I can check this online. Agent AIA - Service Usage Details AIA - Service Usage Details + Data Plan Usage 1 Self Service Web Channel (Custom Application) 2 3
  50. 54. Getting Started with Oracle SOA Suite Download pre-built Virtual Box: Run on the Amazon EC2 Cloud: Install free evaluation: > downloads or “ Oracle SOA” Group 1. Get the software 2. Go through tutorial 3. Join thousands of others at: or ©2010 Oracle Corporation