"IT ARCHITECTURE MATTERS ! SERVICE ORIENTED ARCHITECTURE"
IT ARCHITECTURE MATTERS! SERVICE ORIENTED ARCHITECTURE & COMPETITIVE ADVANTAGE Yogish Pai CTO-IT, BEA Systems firstname.lastname@example.org AGENDA The Promise of SOA A Roadmap to SOA Our Experience with SOA and Our Vision WHAT IF WE COULD...? A CIO’S QUESTIONS TO HER ARCHITECTURE TEAM Deliver business capability in weeks, not months, nor years? Systematically re-use existing components rather than build? Integrate seamlessly, organically? Dramatically lower our end-to-end cost of ownership? Limit funds at risk to micro-investments rather than massive investments? Focus on building business processes rather than applications? Develop in a massively parallel way where we need speed? WE CAN … THREE MAJOR TRENDS ARE TRANSFOMING ENTERPRISE COMPUTING 1 Interoperability enabling Service Oriented new, much faster and Architectures efficient ways to deliver IT Speed 2 Low Cost Linux-Intel High Performance dramatically reducing TCO of IT Efficiency Platforms 3 Differentiation Large global supply of Global Sourcing skills dramatically increasing affordability of labor SOA: A PARADIGM SHIFT Distributed Component Service Oriented Architecture Architecture Functionality Oriented Process Oriented Designed to Last Designed to Change Long Development Interactive and Iterative Cycle Development Cost Centered Business Centered Application Block Services Orchestration Tightly Coupled Agile and Adaptive Homogeneous Technology Heterogeneous Technology Object Oriented Message Oriented Known Implementation Abstraction AGENDA The Promise of SOA A Roadmap to SOA Our Experience with SOA and Our Vision A ROADMAP TO SOA Agile IT- Business Services- •Speed SOA Value 3 •Efficiency Add based Processes •Custom fit 2 Services- based Orchestrate Portals services into business processes 1 Data Exposing Consolidate Services services into composite Traditional applications Development Share providing 360 and information views Integration with multiple Time consumers SOA STEP #1 CONSISTS OF EXPOSING ENTERPRISE INFORMATION TO INTERNAL OR EXTERNAL “CLIENT” APPLICATIONS 1 Data Exposing Services Example: Product Shipping Status External Service Consumers Internal Service Consumers Customer A Customer B Customer Sales Portal Procurement Procurement Service Firewall A single, universal method Get_Shipment_ for making information Status Service available to multiple consuming applications independent of their platform Netcentric ERP Client Server Legacy STEP #2 CONSISTS OF CREATING PORTAL APPLICATIONS THAT CREATE “360 DEGREE” VIEWS OF THEIR USERS’ WORK ENVIRONMENT 2 Services-based Portals Example: A Sales Portal Firewall Consolidation of services into 360 Sales Portal a “composite application” or Get_Customer portal creating 360 views of _News a user’s world Get_Support_Call_ Get_Order_Status Track_Quota Get_Leads History Sales Force Marketing ERP Call Center Automation Automation Netcentric Client Server Legacy THE SALES BEAcon, A SALES PORTAL INTEGRATING INFORMATION USING A COMMON PARADIGM: SERVICES Real time, services- based integration of: • CRM • Financials Stock quote Service • Order Management • Knowledge/Document management • Collaboration tools • Productivity tools Alert Employee Task Service • External information Service Account Quota Revenue Service Service Service STEP #3 IS ORCHESTRATING SERVICES INTO BUSINESS PROCESSES 3 Services-Based Processes Example: A Solution Milestone Invoicing Process Verify Verify Map Validate Get Business Product Project Services Against Status Create Process Shipment Milestone Burn Rate Contract with Invoice Status Status Terms Customer Service Orchestration Get_Contract_ Burn_Rate Get_Shipment_ Get_Milestone Get_Customer Create_ Get_Terms Status _Status _Validation Invoice Professional Shipping - Contract Customer Services Billing ERP Management Portal Automation Netcentric Client Server Legacy EXAMPLE: AN HR PROCESS – THE EMPLOYEE ON-BOARDING PROCESS Services orchestration into a single workflow across: • Peoplesoft • Exchange • LDAP • HR Portal Easy to reconfigure via Workshop interface THE NEED FOR “A” IN SOA Opportunities for Architectural Standards and Shared Services Portal 1 Portal 2 … … Portal i Service 1 Service 2 Service 3 Service 4 Service n Enterprise-wide Shared Services or Standards Messaging – Service Directory and Brokering – QoS Management - Application and Database Connectivity – Security – Data Matching – Semantic Model – Profile Management - Single Sign On, etc. App 1 App 2 … … App P AGENDA The Promise of SOA A Roadmap to SOA Our Experience with SOA and Our Vision OUR ARCHITECTURE: EVOLUTION OVER THE PAST THREE YEARS A “The Basics” B 1st Generation SOA: C 2nd Generation SOA Infrastructure- Centric Architecture Integrate, Re-Use, and Extend and Develop Ultra-Rapidly Differentiate Efficiently Composite, Custom Portal Services-Based Applications Applications Traditional Infrastructure Packaged Infrastructure Services and Integration Services Integration Hub Traditional Traditional Traditional Packaged Packaged Packaged Applications Applications Applications 1996-1999 2001-2003 End Of 2003+ Our approach to enterprise architecture. The “Old Ways” “A Better Approach” Typical Legacy Enterprise Service-Centric Architecture Architectures – Complex, Expensive, Rigid Custom Custom • Proliferating applications Portal Portal …. (multiple ERPs, SFAs,etc.) Applications Applications • Costly bolt-on systems and customizations Enterprise Infrastructure Services • Point-to-point integrations • Poor data integrity ERP SFA Call … Center WebLogic Portal WebLogic Platform Packaged Applications We start with vanilla implementations of industry standard core applications. 1 Core Application Foundation: Simplicity and Efficiency •Industry standard core applications - robust core business logic and data structure •Vanilla implementations •Easier and cheaper to maintain Core Application Foundation •Easier and cheaper to upgrade or replace •Footprint limited to best-of-breed 1 ERP SFA Call … •One standard implementation Center worldwide Packaged Applications We integrate and extend our applications with layers of Enterprise Infrastructure Services. 2 Enterprise Infrastructure Services Foundation •Enterprise Infrastructure Services Integrate and Extend architecture: •Portal Services -presentation and user interface services Infrastructure Services Foundation •Shared Business Services -interfaces to the applications: requests for data, or business logic functionality 2 Enterprise Infrastructure Services •Messaging & Brokering Services -core integration services: messaging, transport, workflow, brokering, etc. 1 ERP Call •Shared Application Services - horizontal SFA … services and foundational components Center such as Logging, Packaged Applications •Efficient: re-use of common services, few WebLogic Platform point-to-point integrations •Powerful: business logic and data exposed and shared across enterprise And build custom portal applications tailored to our business needs. 3 Custom Portal Applications for Unique Capabilities Custom Portal Applications •Flexible: portal-based custom Custom Custom applications tailored to our 3 Portal Portal …. business needs - Secure customer Applications Applications applications that include business logic and provides interface with Enterprise Services, Applications and 2 Enterprise Infrastructure Services Data •Efficient: built on top of the Infrastructure Services (50%+ time Call and cost savings from re-use of 1 ERP SFA Center … common services) WebLogic Portal •Powerful: portlets integrate data and WebLogic Platform business logic from across enterprise Packaged Applications OUR 1st GENERATION SOA HELPED BUILD FRONT- END PORTAL APPLICATIONS VERY RAPIDLY AND EFFICIENTLY Custom Portal Applications – Front-end Employee eSupport eOrders eLicense Dev2Dev PartnerNet Renewals Manager (Customer (Quote-to- (SW license (developer (Partner rel. (Installed Portal Self-support) Order) mgt.) rel. Mgt.) mgt.) Base mgt.) Enterprise Infrastructure Services Portal Services Shared Application Services Enterprise Services Enterprise Applications – Back-end Enterprise Data Documentum (Content Mgt.) PeopleSoft 8 (ERP) Customers Google, Inquira Products (Search) Siebel (SFA) Employees Yahoo Messenger Partners Ent. Ed. (Chat) Clarify (Call Center) Licenses Directory Services Kana (Marketing Automation) Portal Architecture Approach Recommended Approach to Architecture Presentation Based on Service Oriented Architecture which Promotes re-use at all levels Business Delegate Provides capability to deliver in weeks not months (once we have a stable framework) DTOs DTOs DTOs Leverage each product for what it is good at, example: WLP for Presentation based on Services Entitlements Domain Allows business to combine services to deliver new capabilities Management Domain Access Layer provides abstracts the data source and the relationship, there by Database minimizing the impact of changes to the source systems Content Siebel De-coupling Presentation from the business logic makes it reliable and scalable Personali- sation SSO Presentation … Presentation and user interface services Login, Search Content … Registration Brokering Brokering Entitlements Portal Services Service Access Control Logging Monitoring Locator Services Horizontal services and Notification Search Exception Application foundational components Framework Handling Configuration Shared Application Services OUR SECOND GENERATION SOA: SERVICES TO INTEGRATE THE ENTERPRISE AND BUILD COMPOSITE APPLICATIONS Composite Applications Assembled from Composite Business Services Components and Applications Portlets that Expose Enterprise Data and Functionality Services Portal Sales Portal “Traditional” Portal Applications Get_Customer Get_Customer Employee Open_Case Create_Quote Manager eSupport Portal Get_History Get_Contract Enterprise Infrastructure Services Shared Business Services Portal Services Messaging & Brokering Services Shared Application Services Enterprise Services Enterprise Applications Enterprise Data Search, Customers Content ERP, CRM, etc. Products, etc. Mgmt, etc. Standard message format required to implement the Service & Message Broker Standard message format required for handling multiple protocols Header Shelter end applications from having to know routing information Message ID Required to route message through Request type the Service & Message Broker Message Header Attributes: Destination Message Id: Unique identifies for the message instance Source Request type: the time of request or reply the message contains Status Source Identifier of source system, for reply routing Destination: Identification or Payload destination system Status: Error message Payload attributes: XML Format Request XML formatted request / reply or Reply message Service & Message Broker architecture approach Portal All incoming and outgoing messages to the process shall Packaged App be in standard format App Messages shall not be transformed if they are already in the Portal Service & Message standard format App Broker The Service and Message broker should be able to handle Transform Process Transform any protocol or message format Packaged Portal Optional All incoming & Optional App Service can be executed locally or remotely App outgoing message to the process are in canonical format … … … … Vertical/business services: … … … … Web Services interfaces to the applications: requests for data, Shared Business Services or process Service Repository Service Finder & Broker Asynchronous Asynchronous Core integration services: Messaging Workflow messaging, transport, workflow, Messaging & Brokering Services brokering, etc. Message and Service Broker converts the messages to a standard format (if required) and routes them to the appropriate destination Non-standard messages are converted to standard message format before invoking the service broker The service broker can receive requests from any channel (synchronous & asynchronous) The services can be invokes either on the Service & Message Broker or remotely Client App Client Publish Web Service invocation App Messages JMS Queue Service 1 Client JMS JMS App Queue Workflow Message Service 2 Channel Request Service … Client Output File Service N App File Workflow Web Services Client event App View Service App Workflow Repository Message Standardization (WebLogic Integrator) Message Broker Service Broker Service Broker component Ability to handle anywhere from 40% to 70% of all messages routed through the I-Hub Configurable service broker eliminates the need to implement one Workflow per business process (traditional approach) Enables administrators to dynamically add / modify shared business services Get Support Cases by Account Header should be fully formed at this Get Customer time, question still AddFlatCustomer Address open whether SupportCaseXML adapters can handle formatting Invoke Start from Sync Yes Direct Yes Service Invocation (send w/ reply) Input Determine Translate Sync Format Sync S Service Payload Call? Channel Response Response? Start from Channel Invoke Publish All Messages Message No Response Service (send) Message to No Input Channel Implemented as a single JPD on WLI Service Repository Translation X-Ref Object Attribute Action Service Transform. Source Service Sync? object Customer Address Get GetAddiress KE GetSupportCases Customer SupportCase Action GetSupportCases Customer Contact Add AddContact eSupport GetSupportCases SupportCaseXML Sync Publish Message External AddContact AddFlatCustomer Async Service XML file If no transformation is XML file needed, leave blank Client Library enables services to be dynamically deployed / configured The Service Locator Client library allows for services to be deployed locally or remotely transparently to the client application Service locator allows for same service invocation whether services are local and invoked directly, or invoked through the Service Broker Services can be redeployed at will without affecting the client application nor its interfaces Service Provider Environment Client Application Web Service Service Interface Locator Repository Service Target GetAddiress EJB Service Service GetSupportCases WSService Locator AddContact Service Broker EJB Service Web Service Integration Hub Service Proxy Proxy Proxy Broker EJB Web Service Service Client Environment Integration Hub Security Model Firewall Firewall 1. client makes a login request internal users Clarify PSFT Siebel perimeter direct call 4. save token as Dev2Dev blocked: no or invalid cookie token 5. client makes a service request perimeter eSupport 3. return a token after authentication 6. Web service call Internet with user Request Service authentication perimeter token PartnerNet Get Support Cases by Account 7. Authorize Web Services web service perimeter call vs. Integration HUB eLicense 2. App forwards authorization token plus The objective is to request user roles leverage this security model for the entire perimeter Authenticate User Other Enterprise – including Web Services Network Services Authentication Authority user store How it works: business applications interact through Enterprise Infrastructure Services layers. Get_ Get_ Get_Purchase Get_ Licenses Case_History _History Customer Vertical/business services: Create_ Update Create_ … Web Services interfaces to the Order _Lead Contact applications: requests for data, Shared Business Services or process Personali- Entitlement Single sign-on … zation Presentation and user Presentation Authenti- Universal Content interface services cation User Brokering Profile Portal Services Service Repository Service Finder & Broker Asynchronous Asynchronous Core integration services: Messaging Workflow messaging, transport, workflow, brokering, etc. Messaging & Brokering Services Customer Web Services Logging Monitoring Repository Security Services Horizontal services and Unique ID Data Services Exception Application foundational components Generator Handling Configuration Shared Application Services The architecture leverages the BEA platform and Web Services extensively. Get_Case_History Get_Purchase _History Get_Licenses Web Services Workshop … WLS WLI Liquid Data Shared Business Services Personali- Presentation Authentication Entitlement Universal User Content Single sign-on zation Profile Brokering WLP WLP WLS WLS WLP WLP WLP WLS Portal Services Service Repository Service Asynchronous Asynchronous Finder & Workflow Messaging UDDI Broker WLS Other WLI WLI JMS WLS WLI Messaging & Brokering Services Data Logging Exception Application Web Monitoring Unique Customer Services Handling Configuration Services Customer Repository Security… ID Generator WLS WLS WLS WLI WLS WLS WLI Other WLS Other WLS Other Shared Application Services It allows us to build powerful new business applications. Superior Customer Insight MyQuotes Sales Portal - Example Leads Contracts Better Coordination and Sharing Account AT&T Wireless Seattle Intelligence Among Selling Team Campaigns Customer News Service Experience Integration of Selling (what we Words you cannot search for and which Overall Statisfaction: 4.5 cannot improve your search include: …. Loyalty Index: 3.1 promise) with Delivery (what the Order History Date Name Product Issue Level Support Case History customer experiences) Date Name Product Issue Level 03/15 P. James WLI 1 03/15 P. James WLI 1 03/15 M. Wright WLP 2 Get_ Get_ Get_Purchase Get_ 03/15 M. Wright WLP 2 03/15 J. Yu WLS 1 Licenses Case_History _History Customer 03/15 J. Yu WLS 1 03/15 T. Chen Workshop 3 03/15 T. Chen Workshop 3 03/15 A. Petit WLI 1 03/15 A. Petit WLI 1 Create_ Update Create_ … Professional Services Projects Order Personali- Entitlement _Lead Single Contact sign-on … Licenses Installed Base zation Project Name Product Status Product License # Contacts IP Addresses Supply Chain Portal WLI In Progress Shared Business Services WLI 12345 P. James IP addresses Enterprise Billing WLP In Progress Presentation Authenti- Universal Content WLP 67890 J. Chen IP addresses Settlement Automation WLS Complete cation User Brokering Workshop 12345 M. McCain IP addresses Customer Care Portal Workshop Complete Profile WLS 67890 A. Haggarti IP addresses Service Service Finder Portal ServicesAsynchronous Asynchronous Repository & Broker Messaging Workflow Customer Web Services Logging Monitoring Repository Security Services Messaging & Brokering Services Unique ID Data Services Exception Application Generator Handling Configuration Shared Application Services The new architecture and many of the same services can enable customer facing applications. MyContacts 360 degree view of my Customer Portal - Example MyConfigs Support Tools relationship with BEA Events Company AT&T Wireless Seattle Improved coordination with BEA Name J. Cheng Service Experience and my team members Position Sr. Director, eBusiness Support Case History Date Name Product Issue Level Order History 03/15 P. James WLI 1 Reduced productivity losses Date Name Product Issue Level 03/15 M. Wright WLP 2 03/15 P. James WLI 1 03/15 J. Yu WLS 1 03/15 M. Wright WLP 2 03/15 T. Chen Workshop 3 03/15 A. Petit WLI 1 Get_ Get_ Get_Purchase Get_ 03/15 J. Yu WLS 1 Case_History _History Customer 03/15 T. Chen Workshop 3 Professional Services Projects Licenses 03/15 A. Petit WLI 1 Project Name Product Status Supply Chain Portal WLI In Progress Create_ Update Create_ … MyLicenses Enterprise Billing WLP In Progress Order Personali- Entitlement _Lead Contact sign-on Single … Product License # Contacts IP Addresses Settlement Automation WLS Complete zation WLI 12345 P. James IP addresses Customer Care Portal Workshop Complete Shared Business Services WLP 67890 J. Chen IP addresses Presentation Authenti- Universal Content cation User Brokering Workshop 12345 M. McCain IP addresses Profile WLS 67890 A. Haggarti IP addresses Service Service Finder Portal ServicesAsynchronous Asynchronous Repository & Broker Messaging Workflow Customer Web Services Logging Monitoring Repository Security Services Messaging & Brokering Services Unique ID Data Services Exception Application Generator Handling Configuration Shared Application Services OUR LATEST ARCHITECTURE VISION IN ITS SIMPLEST FORM Applications Universal Portals assembled in remote portals – Service Portlet Service “the user is the owner”- multi- channel delivery Portlet Service Portlet Functionality and Data exposed via Services and Portlet Libraries Services Libraries Portlets – cataloged in libraries Enterprise Services Hub Enterprise Applications and Data integrated via Application Data Sources Enterprise Services Engines (ERP, (Customers, Hub CRM, SCM…) Products,…) THE RESULTING PORTALS AGGREGATE PORTLETS HOSTED BY SOURCES AND IS FULLY CONFIGURABLE Available Portlets can reside either in internal servers or external providers – all communication to remote portlets through Web Services New functions and Google Search x content can be Welcome, Rhonda Hocker added on the fly simply by adding the Wednesday, February 4 2004 BEA Weblogic review Go Configure Portal remote portlet web V service definition to Results Employee Self Service the catalog – The BEA Email x - LinuxPlanet reviews: BEA Weblogic for Linux… - BEA Weblogic review forum My Benefits x resulting portals can be continuously From Subject Received - More >> My Information x expanded without My Payroll affecting current Philippe.B…. WLI Strategy 02/04/2004 Major Opportunities x Dale Slaug... Re: SOA Architecture 02/03/2004 My Travel x functions Yogish Pai SOA Architecture 02/03.2004 Customer Name Value My Purchasing Albertson’s 8.1 WLI / WLP $7.5M Electronic W2 More >> AT&T Portal 8.1 … $2M x Verizon W.. Platform / Ent.. $15M Yahoo Mail Sales Support More >> Major Opportunities x Registry Sender Subject Date Size Customer Contacts of existing My Travel x portlets jk100@... Friday trip Sun 2/1 2K Conf # Descrfption Start Date (local & lara.en… Request Sun 2/1 1K Productivity Remind… 0192985 SFO-BOS-SFO Feb 14 x remote) Birthday Reminder Fri 1/30 3K BEA Address Book 0194677 SFO-LHR-SFO Feb 22 More >> BEA Email x Draft - Folders - Trash Make a reservation >> BEA Calendar BEA Address Book x BEA News (Factiva) x External Sources Ashburn Go Prudential Selects BEA Systems … - BEA news (Factiva) x - E*Trade Japan builds Linux-based … Tom Ashburn 408-570-8628 Email - IM - Norvergcence Standardizes on BEA... Industry news - More >> Stock Quotes Google Search x Placement of portlets in the x Yahoo Mail portal will be dynamic and V also configurable by user THIS NEW ARCHITECTURE RADICALLY REDUCES TIME TO BUSINESS VALUE Time to Business Value Delivered 12 - 16 months + Our 2004 Delivery Model Ultra-rapid delivery with highly parallel development (each service component has contained scope) Highly flexible with lower risk 3 - 4 months Weeks* Typical ERP – First Generation Second Major Packaged SOA with 12x4 Generation SOA Application Delivery Model Integration * 3 weeks from requirements to deployment of Web Services (once infrastructure is built) Multiple services can be built in parallel; 3- 4 weeks for assembly of new applications based on pre-built services We started migrating from Unix to Linux in 2002. Linux-Intel is now our deployment and development standard Deployment Standards Proxy Tier Portal Composite Apps Apps Application Tier Enterprise Infrastructure Services Security Shared Business Services Services Portal Services Messaging & Brokering Services Integration Shared Application Services Services Enterprise Enterprise Applications Enterprise On a case-by-case basis Services (ERP, CRM, Data etc.) Linux is ideally suited for SOAs. High Processing Power for the Dollar Portal Composite Ideal for transaction intensive Apps Apps components (portals, messaging and brokering services) Enterprise Infrastructure Services Openness Shared Business Services Allows OS tuning for single purpose components where performance is key Portal Services (messaging and brokering, authentication, security services, etc.) Messaging & Brokering Services Small Footprint Shared Application Services Ideal for creation of single purpose (“plug and play”) appliances (grid computing) IT ARCHITECTURE MATTERS! SERVICE ORIENTED ARCHITECTURE & COMPETITIVE ADVANTAGE Yogish Pai CTO-IT, BEA Systems email@example.com