Upload
zubin67
View
1.398
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
Agenda• SOA Big Rules
• Understanding SOA
• ESB
• JBI
• Registry & Repository
• Security
Section
Introduction to SOA
Hype or Reality?
So What?SOA!?
Reuse
Encapsulate
The New EDI?
Remember CORBA?Web Services
Aligned
Cross-PlatformVendor Neutral
Multi-Vendor
Register & Discover
Described
StandardsFlexible IT
XML
Wrap & Reuse
Composability Legacy
Layering
Agile
Stateless
Loosely Coupled
Messaging
Integration
QoS
Federation
Transformation
On Demand
Autonomous
Interoperable
Extensible
Location Transparency
What is SOA?
• Service Oriented Architecture implies that the IT organization of an enterprise pursue business and technical strategies which promote the exposure of business functionality and data within and between enterprises in a manner which is:
>Consistent>Published>Secure>Contractual
Accidental Architecture?Silo Oriented Architecture
• Rigid
• Complex
• Expensive
• Slow to Market
• Monolithic
• Hard to Integrate
Mature information systems grow old disgracefully as successive waves of hacking result in accidental architectures which resist the reflection of on-going business process change.- Anthony Lauder & Stuart Kent; University of Kent. (2000)
Promise of SOA
• Interoperability• Federation• Dynamic Discovery• Loose Coupling• Reuse and Composition• Evolution, not Revolution• Wrap and Reuse; Not Rip and Replace• Standards based approach• Alignment of Business and Technology
SOA Conceptual Model
Elements of SOA
1st Class Artifacts QoS Explicitly Specified
Layering Principle
• Shared Network-based Layered Services
Process Layer
Access Layer
Service Layer
Resource Layer
The “Move” to Service Orientation
AccidentalRigid
Silo-Oriented
LayeredExtensible
Service-Oriented
The SOA Shift
SOA and Standards
ReliableMessaging Security
PolicyQuality
ofServices
Registry & Repository Discovery
Service DescriptionDescription
IntegrationOrchestration
Choreography
Addressing & Notifications
MessagesMessaging
Transport Protocols
Context
Transaction
Coordination
Portal Access
Management Management
SOA and Standards
ReliableMessaging:
WS-ReliabilityWS-ReliableMessaging
SecurityWS-Security, WS-TrustSAML, XACML, XKMS
XML-SignatureXML-Encryption
Liberty ID-FF, ID-WSF, ID-SISWS-Federation
WS-I Basic Security Profile
PolicyWS-PolicyQuality
ofServices
Registry UDDI, ebXML RS Repository ebXML RS/RIMDiscovery
Service Description Language WSDLDescription
IntegrationBusiness Process Languages: Orchestration
WS-BPEL*, WFMC XPDL
Business Collaboration Languages: ChoreographyWS-CDL, ebXML BP
Addressing & Notifications WS-Addressing, WS-Notification, WS-Topics, WS-Eventing
Messages SOAP, WS-MetadataExchange, XML, XML Schema, Encoding
Messaging
Transport Protocols HTTP, IIOP, Other
ContextWS-Context (WS-
CAF)
TransactionWS-AtomicTransaction
WS-TXM (WS-CAF)
CoordinationWS-Coordination WS-CF (WS-CAF)
Portal WSRPAccess
Management Management WS-Management, WS-DistributedManagement (WSDM)
Section
SOA Big Rules
LayeredModular &Autonomous Service Reuse Interoperable
Coarse-GrainedBusiness Services
Composable Stateless XML Doc-Based Asynchronous Conversational
Reliable Messaging Secure Policy-Driven Described Orchestrated
SOA Big Rules – Eye Chart
Registered & Discovered Loosely Coupled Versioned Self HealingChoreographed
SOA Big Rule
Layered
Process
Service
Resource
Access
SOA Big Rule
Modular & Autonomous
● Cohesive● Independent
SOA Big Rule
Reuse
Service Reused
● Different Applications● Different Use Cases● Operation Level Reuse
SOA Big Rule
Interoperable
Interoperability● Platform● Vendor● Protocol● Data
SOA Big Rule
Coarse Grained Business Services
Application Services
● Relative:Coarser to Finer
● Defined by real business needs
SOA Big Rule
Composable
● Reuse & Modularity● Assembly● Orchestration
SOA Big Rule
Stateless
● State not in Service
● Document Exchange
SOA Big Rule
XML Document-Based Exchanges
Note: Coordinator is optional
SOA Big Rule
Mostly Asynchronous Interactions
Note: Coordinator is optional
SOA Big Rule
Conversational Services
● Conversational state is outside the service
● Intermediary Coordinator
SOA Big Rule
Reliable Messaging
Note: Coordinator is optional
● Acknowledgement● Failure Handling● Sequencing● Assurance
SOA Big Rule
Secure
Note: Coordinator is optional
● AuthN/AuthZ● Federation● Identity & Trust● Non-Repudiation● Message (Enc/Sig)● Integrity● Transport-Level● Message-Level
SOA Big Rule
Policy Driven
Note: Coordinator is optional
● Security● QoS● Other
SOA Big Rule
Described Services
Note: Coordinator is optional
● Contract● Endpoint● Operation● MEP● Policies
SOA Big Rule
Orchestrated Services
OrchestrationInteractions that a given service can engage in with other services from the viewpoint of that service, includes internal steps.
SOA Big Rule
Choreographed Services
WS-CDLChoreographyGlobal view of multiple services interacting (observable behavior) towards a common goal. No internal steps.
SOA Big Rule
Registered & Discovered
● Service Description● Dynamically Found● Dynamically Bound
SOA Big Rule
Loosely Coupled1 = Lookup2 = Bind and Invoke
● Implementations (Interfaces)● Requestor & Provider (Contracts)● Business Process and Application Logic (Services)● Hardware/OS/Tools/Middleware/Applications/...
SOA Big Rule
Versioned
● Multiple Versions● Deprecation & Retiring● Routing & Transformation● Automated Deployment
SOA Big Rule
Self Healing
● Client Transparency
LayeredModular &Autonomous Service Reuse Interoperable
Coarse-GrainedBusiness Services
Composable Stateless XML Doc-Based Asynchronous Conversational
Reliable Messaging Secure Policy-Driven Described Orchestrated
SOA Big Rules – Eye Chart
Registered & Discovered Loosely Coupled Versioned Self HealingChoreographed
Combine & Inter-Relate to create SOA
Section
SOA And ...Enterprise Service Bus (ESB)
JBIRegistry/Repository
SecurityComposite Applications
Section
SOA and the Enterprise Service Bus (ESB)
ESB Features
Security
Logging
Monitoring
Alerting
Transactions
Routing
Load Balancing
Synchronization
Correlation
Messaging
Communication
Transformation
BPM
BAM
ResourceAdapters
ChannelAdapters
Serv
ice
Prov
ider
sService C
onsumers
Open standards, reliable, message-based, distributed, integration solution and mediation services
Enterprise Service Bus
SOA and ESB
• ESB is a technology to implement SOA> Multiple connection types (Web Services, MOM, ...)> Multiple service protocols (Sync/Async)
• ESB alone is not enough to implement SOA> Application Platforms, Integration Platforms, and
MOMs that support services
• A pluggable ESB architecture supports > Many value-added technical & application services
Section
SOA and Java Business Integration (JBI)
JSR-208
SOA and Java Business IntegrationJBI (JSR 208)
• Current Integration Industry> Proprietary Approaches> Converging on a service-based model> Converging on standard messaging model
>> Ready for Standardization
>> JBI
What is JBI?• Standard “meta-container” for integrated
services• Service-Oriented Architecture infrastructure• Provides for plug-in:
> Engines—providing business logic and functions> Bindings—providing communications protocols:
> Access to remote services> Allowing access to other services
What is JBI?
JBICore
Services
J2SE™/J2EE™ Platforms
Syst
emM
anag
emen
t
InstallationDeploymentManagement
Normalized Message RouterNormalized Message Router
Protocol BindingComponents
Service Engines
Example SEs & BEs
JBICore
ServicesNormalized Message RouterNormalized Message Router
J2EE™ Platform
Syst
emM
anag
emen
t
Orchestration(BPEL)
Transformation(XSLT)
J2EE Platform
AS2 JMSWS-I BasicSOAP
Service Provider Self-Description
JBICore
ServicesNormalized Message Router
J2EE Platform
Syst
emM
anag
emen
t
Orchestration(BPEL)
Transformation(XSLT)
J2EE Platform
AS2 JMSWS-I BasicSOAP
WSDL WSDL WSDL
WSDLWSDLWSDL
Components register theservices they provide
Engines
Bindings
Admin
Rules
EDI
xForm
JMS
BPE
WS-I
Java Business Integration
Rules/PoliciesBPEL
Service Service Service Service Service Service Service Service
Evolution of the Platform to Enable SOA
Section
SOA andRegistry / Repository
Why a SOA Registry?
SOA Project Inter-dependent Artifacts:●XML Schemas, XSLT Transforms, etc.●Descriptions: WSDL, WSRP, etc.●Definitions: BPEL, etc. & Policies
SOA Governance: Role of Registry/Repository
SOA Artifacts Need Governance
• Centralized manageability & Point of Control • Policy Management Enforcement
> Service Management> Security> Versioning, Deprecation/Retiring, etc.
• ebXML Registry standard includes functions supporting governance use
Section
SOA and Security
SOA and Security
Shared Application Components/ Services
Shared Infrastructure Services + Secure Network Enclaves
Secure Execution Containers
Services
Logical and Physical System and Storage
Services
Services
Services
Services
Value Added Business Services + Business Process Management
Secure Presentation Services (e.g., Portals, Proxies)
E-Mail(SMTP/IMAP)
Services
Services
Web Services (HTTP/S)
Services
Services
Services
Services
Directory (LDAP)
Services
Services
Identity/Access
Services
Services
Database (SQL)
Services
Services
Policy Identity AuditTrust AuthN AuthZ Privac
yIntegri
ty
SecurityWS-Security, WS-TrustSAML, XACML, XKMS
XML-SignatureXML-Encryption
Liberty ID-FF, ID-WSF, ID-SISWS-Federation
WS-I Basic Security Profile
Section
SOA and Composite Applications
Composite Application
• Set of reusable services composed into a new application
• Consumes existing services• Exposes new service interfaces• Encapsulates business processes/collaboration• Unit of deployment for services• May or May not expose a user interface
Composite Application EquationMonolithicApplication
Service-Oriented Applications
Services
CA 1 CA 2
CA 3 CA 4
+ =
+ = . . .
Composite Applications
Two Monolithic ApplicationsMonolithicApplication
Monolithic Application with Business Logic Built-in
• Monolithic Applications – Poor Fit
BusinessProcess
Composite Applications – Best Fit
Orchestrated Business Services: Composite Applications
• Closely aligned with business
• Easy to maintain
• Easy to change
Business Process
Composite Applications – Best Fit
Orchestrated Business Services: Composite Applications
BusinessProcess
• Closely aligned with business
• Easy to maintain
• Easy to change
Solution Build and Development
Testing
Deployment
Project Management
Project Contingency
Total Design-to-Deploy Time
Maintenance Years 2 and 3
Total Savings
Design Phase
Benefit
SOA Composite Application DevelopmentButler Customer Study on Sun Java CAPS Suite
Percentage Saving
Source: Butler Group October 2004
58%
70%
50%
57%
60%
37%
50%
86%
25%
IT Silo
CheckCustomer Status
Determine ProductAvailability
CheckCustomer Status
Determine ProductAvailability
VerifyCustomer Credit
Order Status
CalculateShipping Charges
Order Status
VerifyCustomer Credit
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
MonolithicApplications
AccountsManagement
OrderProcessing
FieldService
Scheduling
IT Silo
CheckCustomer Status
Determine ProductAvailability
Order Status
CalculateShipping Charges
Verify
Customer Credit
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
MonolithicApplications
AccountsManagement
OrderProcessing
FieldService
Scheduling
CheckCustomer Status
Determine ProductAvailability Order Status
Verify
Customer Credit
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
Reuse Services Via Re-composition
ElementalBusinessServices
AccountsManagement
OrderProcessing
FieldService
Scheduling
DataRepository
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
Reuse Services Via Re-composition
AccountsManagement
OrderProcessing
FieldService
Scheduling
DataRepository
ComposedBusinessProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
ElementalBusinessServices
CheckCredit
CheckOrder Status
CreateInvoice
CheckCustomer Status
CheckInventory
Installation Scheduling
CheckCustomer Status
CheckInventory
Reuse Services Via Re-composition
ElementalBusinessServices
AccountsManagement
OrderProcessing
FieldService
Scheduling
DataRepository
ComposedBusinessProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment
CreateInvoice
CheckCreditCheck
Order StatusCheck
InventoryCheck
Customer Status
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
Process Customer Order
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
Reuse Services Via Re-composition
ElementalBusinessServices
AccountsManagement
OrderProcessing
FieldService
Scheduling
DataRepository
ComposedBusinessProcessesInstallation Scheduling Process Customer Order Bill Presentment/Payment
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
Bill Presentment/Payment
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
CheckOrder Status
CreateInvoice
ElementalBusinessServices
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
Business Processes Are Composed Hierarchicallyto Create Composite Applications
AccountsManagement
OrderProcessing
FieldService
Scheduling CompositeApps
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
OracleFinanceSystem
SiebelCRM
System
AS400Sales
System
CustomMarketing
System
Shared Services – Composite Apps – Increased Functionality
AccountsManagement
OrderProcessing
FieldService
SchedulingAnother
OneManage
ExceptionOrders
SubmitChangeOrder
ElementalBusinessServices
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
ElementalBusinessServices
SOA Principles
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
AccountsManagement
OrderProcessing
FieldService
SchedulingAnother
OneManage
ExceptionOrders
SubmitChangeOrder
• Registered anddiscoverables
• Coarse-grained services• WSDL-described
• JBI-based
• Document-based• Mostly asynchronous• Conversational• Reliable
CheckCustomer Status
CheckCredit
CheckInventory
CheckOrder Status
CreateInvoice
ElementalBusinessServices
SOA Principles
DataRepository
ExternalTradingPartner
AnotherBusiness
Unit
Red PrairieWarehouse
Mgmt. System
SAPFinanceSystem
OracleCRM
System
AS400Sales
System
CustomMarketing
System
AccountsManagement
OrderProcessing
FieldService
SchedulingAnother
OneManage
ExceptionOrders
SubmitChangeOrder
• Secure• Policy-driven
• Orchestrated
Service Oriented Architecture
GRACIAS !!