Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively...
Transcript of Effectively Taming SOA Chaos - indicthreads.com Oriented Architecture is an ... Cost effectively...
Taming the SOA Chaos
Debu Panda
Oracle
Slide 2
Many initiatives lack Business/IT collaboration
Sell products
Servicecustomers
Getpaid
Business -
Strategic modelingIT – Executable modelingRequirements, powerpoint,
visio model, Export files
• No visibility into IT ? • Disconnect between conceptual model and implemented process
• Not sure how to improve process and reduce costs ?
• Change in business rules and processes
• Requirements not clear ?• Business is constantly asking for changes•No visibility to process execution•Change in partners and technology
Enter order
UpdateERP
UpdateGL
invoice
Fulfill
order
Slide 3
SOA Quiz Context: SMS to 55555
Which of the following is true:
A. SOA is no longer a buzz word
B. SOA creates chaos
C. SOA is the answer to solve all IT chaos
D. All of the above
A Lucky winner will be appointed as Head of SOA COE ☺
Slide 4
Service Oriented Architecture Defined
Service Oriented Architecture is an architectural style whose goal is to achieve loose coupling among interacting software
agents. A service is a unit of work done by a service provider to achieve desired end
results for a service consumer.
Dr. Hao He, W3C Web Services Architecture Working Group
Slide 5
Characteristics of Service Oriented Architecture• Services have platform
independent, self describing interfaces (XML)
• Messages are formally defined
• Services can be discovered
• Services have quality of service characteristics defined in policies
• Services can be provided on any platform
SOASOASOAInteroperable
LooselyCoupled
Re-Usable
Composable
Slide 6
An example SOA solution
SHOPPING PORTAL
Web Services Interface: XML, SOAP, WSDL, WSIF
EJB 3.0
Customer service
Product
Suppliers
Order DB
Approval
(Rich Workflow)
Notification
Service
Order Booking BPEL PROCESS
receive
Insert Order
end
getCustInfo
SelectMfr RapidMfr
5-15 min
invoke
receive
invoke
receive
Manual
Review
?
Fulfill Order
Notify Cust
ESB
RulesEngine
Rule Author
Rulesrepository
DecisionService
FedEx
USPS
ESB
Operational dashboard
BAM
Slide 7
WSDL/WSIF
XML/XML Schema
SOAP JCA JMS
BUSINESS SERVICES
More Interoperable
ERP/Legacy Apps
Custom Apps& Services
Web services
Key SOA Standards
Process FlowLogic
XSLT/XQuery
BPEL
More Adaptable
PROCESS ORCHESTRATION
WSRP, JSR-168
USER INTERFACE
Struts/JSF
Portal
Web Application
API
WS
Richer Experience
PKIDashboards
BAM
MONITORING
JMX
Fusion Effect
WS-Security
SERVICE BUS
SecurityReliabilityLoggingFailover
Dynamic Routing
WS-Policy, SAML
Web Services Mgmt
Slide 8
Broad Adoption of SOA…
Financial Services Order/Payment ProcessingNew Account Provisioning ProcessTrade Exception Management
High Tech Order ManagementTrading Partner Integration
Telecom Cell Phone ActivationVoIP ProvisioningDSL Provisioning
Government Medicare Eligibility Determination and Enrollment Satellite Data ExchangePublish and Process FormsEmployee On-boarding
Transportation Fleet and Asset Management
Travel Reservations
Retail Sales Data Integration
Slide 9
•Apache SOAP
•XQS is a Vision
•Developer Centric
•Limited Tooling Integration
•Proprietary Web Services Stacks
Early
•J2EE 1.4
•JAX-*
•WS-Reliability & WS-Security
•Attachments & Annotations
•Enterprise Ready
•Scalable & Performant
•Uptake consolidation starting
•Java EE 5
•JAX-WS / .Net
•WS-*, MTOM, UDDI
•Event Infrastructure
•Async Web Services
•Interop Focus
•Integration Focus
•Consolidated Tech Stack
•Metadata Driven Integrated
Tooling
•Enterprise Ready
•Scalable & Performant
•Mesh/SCA
Web Service Stack Evolution
With the buzz word
The Reality
Slide 10
Complying to Web Services-Interoperability
Oracle Containers for Java EE
Web ServicesMetadata
JAX-WS
JMSJMSSOAPSOAP
HTTPHTTPSOAPSOAP
HTTPHTTPRESTREST
JAX-BData Binding
SCA Metadata Model & Service BindingSCA Metadata Model & Service Binding
Attachment(MTOM/SwA)
JAX-R
WS-Security
SAMLWS-
ReliableMessaging
Auditing LoggingAgent
Web Services Java Programming Model – Java EE
Declarative QoS - Web Services Interoperability Infrastructure (WS-*)
WSIF
Slide 11
Key Standards: BPEL and Process
Orchestration
Duplicate
Number!
SalesDB start
end
Router
Billing
Standard markup language for composing a set of discrete
services into an end-to-end process flow
• 10+ years of R&D from
MSFT and IBM
• Rich Flow Semantics
• Optimized Bindings (not
just Web services)
• Transformation
• WS-Security
• A Process is a Service
Slide 12
The BPEL Process Manager
Process Console
MA
NA
GE
J2EE Application Server
(Oracle AS, WebLogic, JBoss, WebSphere)
Core BPEL Engine
BPEL
JDeveloper
BPEL Designer
BPEL Process Manager
Integrated BPM Services
Workflow DecisionService
Sensors
Dehydration Store
(Oracle Database)
WSDL Binding
File, FTP
Web services
Java, JMS
Database
Apps
Enterprise-strength infrastructure for BPM
• Comprehensive and native
BPEL implementation
• Easy-to-use modeling tool
• Scalable and reliable engine
• Flexible binding framework
• Rich management and
monitoring
BPA Suite
Process
Modeler
Workflow Services
Slide 13
Business Process Blueprint
Problem– Models are only used for documentationand project planning. They become obsolete as soon as they are released.
– Gap between functional experts andtechnical experts.
Solution
- Business Process Blueprint - Shared metadata between BPA suite and
SOA suite
- Annotation on existing process metadata (NOT import/export)
- Link operational models to strategic and conceptual models
- Self-Documenting Processes
- Self-Auditing Processes
Process Outline
Business Analyst
Application Composer
• Automated Activities• Human Activities• Business Events• Business Rules• Notifications• Key Performance Indicators
Slide 14
Enterprise Service Bus: Component
Architecture• Components
– Integrated Designer
– Rich Monitoring Console
– JCA Adapters
– Routing Service
• XPATH Filter Expressions
• XSL Transformation
– Metadata Repository/Server
• Features
– Content Based Routing
– Enterprise Messaging - OEMS
– Native XML and Web Services
– Multi Transport Fabric
• Usage Patterns
– Point to Point
– Canonical Modeling
– Store and Forward
– Request/Response
– Externalized Services
Enterprise Service Bus
fx
BPEL BAMPortlets Web UI
MDS
UDDI
ESBConsole
Composite Applications, Portals, BI and BAM
JCA
SAPJAX
SOAP JMS
Mainframe
In Memory
Java
B2B
TradingPartner
SecurityPolicies
Slide 15
Business Rules
• Are declarative not procedural
• Best practice for SOA applications
– Agility
– Transparency
– Can be generated from GUIs
• Applications requiring agility
– Frequently changing (legal) regulations
– Frequent policy changes to reflect market changes
– Requirements for high levels of customization
Rules de-couple decision services from SOA applications
Slide 16
Process Models – continuous refinement
2. Process Blueprint (Logical Design)
1. Business Process model
3. Complete Executable Process
Business Process Model
Logical Design
Physical Design
Shared Metadata
Business Process Model
Logical Design
Physical Design
Shared Metadata
Oracle BPA Suite - EPC/BPMN models
Oracle JDev - Process Designer (BPEL)
Business
Modeling
Technical
Modeling
Slide 17
Challenge #1 – Capture Real-Time Data
RFID and Sensors� Active and Passive
� Location, Temperature, Moisture,
Motion, etc.
Security� Authentication, authorization, audit trail
Database� Streams
System Management� Performance metrics, alerts, logs
Business Processes (BPEL)� Monitoring activities, states
Messaging Systems� JMS, TIBCO, MQSeries
Business Apps� Business Events, state transitions
Slide 18
Challenge #2 – Analyze Processes,
Trends, and Context
Monitor a Single Process� Track each process step� Identify failures
Process Aggregations� Averages, KPIs, SLAs� Identify bottlenecks
Complex Event Processing� Correlate independent events� Identify threats & opportunities
Context� Historical performance� Rolling average
Past
WeekToday
Past 15
Minutes
Slide 19
• Real-Time KPIs
• Thin Browser GUI
• Role-Based Access
• Live Display Technology
• Portal Compatible
• Embedded Actions
Challenge #3 – Deliver Information to
Business Users
Slide 20
CreditRating
start
end
Request Offer Request Offer
Receive Offer Receive Offer
Select Lowest Offer?
Handle Negative
Credit Exception
A Typical SOA Application
Slide 21
CreditRating
start
end
Request Offer Request Offer
Receive Offer Receive Offer
Select Lowest Offer?
Handle Negative
Credit Exception
1. Limit who can initiate processes
<SSN>
011-22-4488
</SSN>
2. Encrypt SSN
3. Callback has to go through firewall
4. Make sure no other sensitive data is unprotected
The Security Requirements
Slide 22
start
end
Request Offer Request Offer
Receive Offer Receive Offer
Select Lowest Offer?
Handle Negative
Credit Exception
Managing Web Services Security
Add Oracle WSM Gateways/Agents
1. SAML: Role-based access control2. WS-Security:
Authentication & auto-encryption of SSN in XML message
3. Web services Management: Service virtualization in DMZ
4. WS-Policy: System-wide service auditing
Slide 23
Web Service Management
• Without WSM, policy is hard-coded into each Web Service
• Result is siloed, inconsistent security and management
• A change in enterprise standards = rework of every service
• Higher cost, more fragile, harder to change
• No unified insight into operations across services
Decouple your Security and Management Policies from Service
Logic
Slide 24
Policy Attachment
• Search for available policies
• Attach/detach policies to a port
Slide 25
Policy Management - Policies
• Search for policies
• Port dependency per policy
• Customize out-of-box policies –create like
• Create new policies
• Edit policies
• Generate client policies
• Export/import policies
• Policy subject validation
Slide 26
Oracle WSM Components
BUILDPolicies
ENFORCEPolicies
Deployment as Gateway Process or as Embedded Agents
MONITORPolicies
PolicyManager
PolicyGateway
PolicyAgents Oracle Enterprise
Manager
Web Services
Slide 27
The UDDI - Registry?
Provides visibility into services, service providers
and related resources across the enterprise
SOA InfrastructureServices, BPEL Processes, ESBs
Policy ManagerPolicies
SOA RepositoryXSDs, XSLTs, Etc.
Slide 28
Who Uses a UDDI Registry?
• B2B partner relationships
– Provisioning/release of services to partners
– Portal integration to enable discovery
• Business analysts/IT management
– Definition of service portfolio
– Visibility into current portfolio
– Impact analysis
• Product development
– Re-use of existing services
– Design-time access to related artifacts such as policies and schemas
Slide 29
Enables service providersto categorize, catalogue and advertise offerings
Allows users and consumers to find, access and/or invoke services that meet defined criteria
Key Benefits
Slide 30
Service Registry - Provides Key SOA
Governance Capabilities
• Lifecycle management
via custom taxonomies
• Change notification
• Controlled view and
access into services
• SOA metadata
management
• Quality control through
approval process
“Those IT managers seeking closer alignment with business goals must combine the ideas of registries, policy and business services to increase the chances of success.”
— Gartner Group
Slide 31
Key Challenges for Administrators
• Manage and Monitor
– Complex IT Infrastructure
– Complex Applications
• Discovering Topology
• Maintain SLA
• Diagnose and fix Issues
Slide 32
Mind boggling SOA – How do I manage
Manage SOA Chaos
UDDI
ESB
RULES
………
BPEL
JAXWS
WS-*
SCA
Slide 33
Key Challenges for Administrators
• Manage and Monitor
– Complex IT Infrastructure
– Complex Applications
• Discovering Topology
• Maintain SLA
• Diagnose and fix Issues
Slide 34
ProvisionProvisionSoftwareSoftware
Deploy andDeploy andSecureSecure
ApplicationsApplications
EnsureEnsureHigh High
AvailabilityAvailability
MonitorMonitorSystems &Systems &
ApplicationsApplications
OptimizeOptimizeWorkloadWorkload
ManagementManagement
Patch &Patch &ReconfigureReconfigureSystems &Systems &
AppilcationsAppilcationsIntegratedIntegratedSystems &Systems &
ApplicationsApplicationsMgmt.Mgmt.
Slide 35
Composite Application Management Solution
•AS Provisioning
Pack
•Change, Clone wizards
•Deployment Procedures
Lifecycle
Automation
•AS Config Mgt Pack
•Config Mgt Pack for
Non-Oracle
•Configuration discovery, compare, search
•Change history
•Configuration Policies
Configuration
Management
•SLM Pack
•AS Diagnostics Pack
Other:
•Plug-ins
•End User Monitoring – synthetic, real
•Web Service Monitoring
•Cross-tier performance
•Call stack analysis
•Integration with SQL diagnostics
Application
Performance
Management
•Service modeling (including web services)
•SLA monitoring, real-time reporting
•Service & System Dashboards
•Auto discovery of process dependency
•BPEL process monitoring
•BPEL integration server monitoring
Key Capabilities
•Service Level Mgt
Pack
Service Level
Management
•SOA Management
pack
SOA Runtime
Governance
ProductsSolution
Slide 36
Service Level ManagementAlign IT and business customers on service levels
That’s what you aim for
1. Real-time view of SLM, enabling you to resolve issues before service level violations
2. SLA based on both, system and end usermetrics
Slide 37
Lifecycle Automation Cost effectively manage “many as one”
• Provisioning Framework
– Pre-tested software image libraries
– Automated software image deployment
– Direct connection to MetaLink
– Provisioning of bare metal OS
• Patching, Cloning Wizards
– Intelligent cloning makes adjustments for IP address, host name, etc.
– Critical Patch Facility (security)
– OS patching
• Deployment Procedures
– Customize EM to company process
– Automate complex deployments
Web Cache
Overview
HTTP Server
OC4J
Visual ID of
Root Cause
Failure
LO
AD
BA
LA
NC
ER
Dehydration Store(Oracle Database)
App. Server
App. Server
App. Server
BPEL Server
BPEL Server
Cluster of Servers
BPEL Process
EM
GR
ID C
ON
TR
OL
SOA Infrastructure Management
Slide 39
The Oracle SOA Technologies
J2EE Application ServerOracle AS, JBoss, WebLogic, WebSphere
Messaging
Metadata Repository
DATA SERVICES & CONNECTIVITY
Apps
AdaptersAdapters
Partners
B2BB2B
RFID
SESSES
DB Bulk
ODIODI
ETL
Multi Protocol
RoutingXSLT
Transform
Enterprise Service BusEnterprise Service Bus
NativeBPEL
Business Rules
Human Workflow
BPEL Process ManagerBPEL Process Manager
ROUTING & ORCHESTRATION
DiscoveryPolicies
Management
Security
Web Services Web Services ManagerManager
RegistryRegistry
GOVERNANCEEvents AnalyticsBusiness
Monitoring
System Monitoring
Enterprise Enterprise ManagerManager
BAMBAM BIBI
MANAGEMENT&
MONITORING
App DevFramework
JDeveloperJDeveloper
Analyst Tools
BPA SuiteBPA Suite
Slide 40
<Insert Picture Here>
More information
Oracle SOA center http://otn.oracle.com/soa
Slide 41
<Insert Picture Here>
Shameless Marketing plug
http://manning.com/panda
http://debupanda.com