sca overview
Post on 05-Jan-2016
44 Views
Preview:
DESCRIPTION
TRANSCRIPT
OpenCSA Member Section – Service Component Architecture 1OpenCSA Member Section – Service Component Architecture 1
SCA OverviewSCA Overview
www.oasis-open.org
Sanjay Patil – SAPMike Edwards - IBM
OpenCSA Member Section – Service Component Architecture 2OpenCSA Member Section – Service Component Architecture 2
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 3OpenCSA Member Section – Service Component Architecture 3
A little history “…once upon a time, some programmers
thought it would be good to have a programming model to support Service Oriented Architecture…”
That model is SCA Industry collaboration grew from just 2
companies to 18 today published 1.0 SCA specifications, March 2007
SCA specifications now ready for standardization in OASIS
OpenCSA Member Section – Service Component Architecture 4OpenCSA Member Section – Service Component Architecture 4
OpenCSA Member Section – Service Component Architecture 5OpenCSA Member Section – Service Component Architecture 5
Time Line Summary
SDO V1 SDO V2 SDO V2.01 SDO V2.1
SCA V0.9 SCA V0.95 SCA V1.0
Further complementary incubation
Finalization offurtherSCA Specs
Press Announcement of
Project Launch New Partners Announced
July 2006
Nov 2005
March 2007
Specs 1.0 Submission for Standardization
SDO TC
SCA TC’s
OtherStandards
Bodies
ISVs Customer Value System VendorsEarly Adopters
Adoption
OpenCSA Member Section – Service Component Architecture 6OpenCSA Member Section – Service Component Architecture 6
Standardization
OASIS to guide the standardization of Specifications from the collaboration in the OpenCSA Member Section
Member Section Structure 6 Technical Committees (TCs) to address one or more Specifications
from the collaboration
SDO V2.1 for Java will be completed in the JCP as JSR235
Specification development to continue within OSOA collaboration for technologies not yet ready for standardization
OpenCSA Member Section – Service Component Architecture 7OpenCSA Member Section – Service Component Architecture 7
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 10OpenCSA Member Section – Service Component Architecture 10
What are SCA and SDO? Service Component Architecture
an executable model for building service-oriented applications as composed networks of service components
“how to build composite service applications”
Service Data Objects a unified model for the handling of (service) data
irrespective of its source or target
“how to handle data in a services environment”
OpenCSA Member Section – Service Component Architecture 11OpenCSA Member Section – Service Component Architecture 11
Service Component Architecture (SCA): Simplified Programming Model for SOA
model for: building service components assembling components into applications deploying to (distributed) runtime environments
Service components built from new or existing code using SOA principles
vendor-neutral – supported across the industry language-neutral – components written using any
language technology-neutral – use any communication
protocols and infrastructure to link components
OpenCSA Member Section – Service Component Architecture 12OpenCSA Member Section – Service Component Architecture 12
Key benefits of SCA
Loose Coupling: components integrate without need to know how others are implemented
Flexibility: components can easily be replaced by other components
Services can be easily invoked either synchronously or asynchronously
Composition of solutions: clearly described
Productivity: easier to integrate components to form composite application
Heterogeneity: multiple implementation languages, communication mechanisms
Declarative application of infrastructure services
Simplification for all developers, integrators and application deployers
OpenCSA Member Section – Service Component Architecture 13OpenCSA Member Section – Service Component Architecture 13
Warehouse Service
WarehouseComposite
WarehouseBroker
Component
WarehouseComponent
Order Processing
Service
OrderProcessingComponent
Shipping Reference
External Warehouse
Reference
PaymentsComponentPayment
Service
AccountsComposite
ExternalBanking
Reference
AccountsLedger
Component
SCA assembly
BPEL
Java EE
C++
SOAP/HTTP
JMS
RMI/IIOP
Mixed:- technologies- app locations
Multi-levelcomposition
OpenCSA Member Section – Service Component Architecture 14OpenCSA Member Section – Service Component Architecture 14
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 15OpenCSA Member Section – Service Component Architecture 15
Bottom-up Composition
Select a set of existing component implementations for building the new composite
services references
properties
Configure the component properties
Hand off the composite to Deployer
Composite
Draw internal wires
propertiesWrap the components in a composite and configure external services/references
OpenCSA Member Section – Service Component Architecture 16OpenCSA Member Section – Service Component Architecture 16
Top-down Composition
Start with gathering requirements for the top-level composite
Define the services/references and properties for the composite
Composite
Service
Ref
Properties
Break down the composite into individual components and wires between them
Recursively break down each component
Hand off the individual component contracts to developers for implementation
Ref
OpenCSA Member Section – Service Component Architecture 17OpenCSA Member Section – Service Component Architecture 17
Heterogeneous Assembly
Components in the same composite share a common context for many aspects such as installation, deployment, security settings, logging behavior, etc.
JavaBPEL
Legacy
PHP
C++
OpenCSA Member Section – Service Component Architecture 18OpenCSA Member Section – Service Component Architecture 18
Implementation Reuse – By Configuration
Select an existing component implementation
Configure its behavior (via setting props, refs) to match the current requirements
E.g. Configure multiple instances of product pricing component, each with different currency, tax rate, discount charts, etc.
Component
… …
Services
References
Properties
Implementation- Java- BPEL- Composite
Deploy the component implementation- Multiple instances of the same implementation may be running simultaneously
OpenCSA Member Section – Service Component Architecture 19OpenCSA Member Section – Service Component Architecture 19
Deployment Flexibility
Services
References
PropertiesSOAP/HTTPWS Binding
JMS Binding
JCA Binding
WSClients
WSClients
JMSClients
JMSClients
ERPService
ERPService
Deployer chooses and configures communication mechanisms for services/references without having to modify the component implementation
OpenCSA Member Section – Service Component Architecture 20OpenCSA Member Section – Service Component Architecture 20
Abstract policy decleration
0. Policy Administrator authors SCA policySets with concrete policies1. Developer specifies intents on SCA assembly2. Developer hands over SCA assembly to Deployer3. Deployer configures SCA assembly by assigning SCA policySets (could be automated)4. Deployer deploys configured SCA Assembly to SCA Runtime5. Deployer updates Registry
Repository
RegistrySCApolicySets
Developer
SCA Runtime
Deployer
SCAAssembly
1 2SCA
Assembly
Policy Administrator
0
34
5
OpenCSA Member Section – Service Component Architecture 21OpenCSA Member Section – Service Component Architecture 21
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 22OpenCSA Member Section – Service Component Architecture 22
SCA Technology
How do I define, configure and assemble components to create composites? SCA Assembly Spec
SOAP/HTTP
JMSJCA
How do I develop SCA components in BPEL? Or in Java? Or C++, PHP,… SCA BPEL Client & Impl Spec, …
How do I configure SCA services/references to use SOAP/HTTP or JMS or JCA, … SCA WS Binding Spec, …
How do I define, use and administer policies for non-functional aspects (QoS, etc)? SCA Policy Framework Spec
Composite
Component
OpenCSA Member Section – Service Component Architecture 23OpenCSA Member Section – Service Component Architecture 23
The SCA Specifications
Assembly
ImplementationLanguages
Policy Framework Bindings
Java JEE
Spring
C++
BPEL
Security
RM
Transactions
Web services
JMS
JCA
OpenCSA Member Section – Service Component Architecture 24OpenCSA Member Section – Service Component Architecture 24
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 25OpenCSA Member Section – Service Component Architecture 25
OASIS SCA Technical Committees
OpenSCA Member Section SCA Assembly TC SCA Bindings TC SCA Policy TC SCA J TC SCA C-C++ TC SCA BPEL
OpenCSA Member Section – Service Component Architecture 26OpenCSA Member Section – Service Component Architecture 26
Work of the SCA TCs Produce OASIS standard versions
of SCA specifications conformance statements mandatory vs optional portability, interoperability
Test suites define test suites to check
conformance
OpenCSA Member Section – Service Component Architecture 27OpenCSA Member Section – Service Component Architecture 27
Challenges What is a good test suite for SCA?
Coordination between TCs
OpenCSA Member Section – Service Component Architecture 28OpenCSA Member Section – Service Component Architecture 28
Agenda A little history SCA and SOA SCA scenarios SCA specifications OASIS SCA TCs
major challenges Related & future work
OpenCSA Member Section – Service Component Architecture 29OpenCSA Member Section – Service Component Architecture 29
Possible Future work C specification COBOL specification REST binding(s)
JSON, ATOM,…
OpenCSA Member Section – Service Component Architecture 30OpenCSA Member Section – Service Component Architecture 30
Related Work OASIS SDD
Management WSDM, SML, …
WS-* specifications
OASIS SOA RM other RM’s
OpenCSA Member Section – Service Component Architecture 31OpenCSA Member Section – Service Component Architecture 31
Summary OASIS SCA
an exciting challenge major effort over the next year aim to appeal to a very wide audience
6 SCA TCs to run & coordinate!
OpenCSA Member Section – Service Component Architecture 32OpenCSA Member Section – Service Component Architecture 32
Useful links… OASIS Open CSA
http://www.oasis-opencsa.org/
OASIS SCA Technical Committees http://www.oasis-opencsa.org/committees
Open SOA Collaboration http://osoa.org/display/Main/Home
V1 level of SCA specs found here:http://osoa.org/display/Main/Service+Component+Architecture+Specifications
Useful papers and interesting SCA information: http://osoa.org/display/Main/SCA+Resources
OASIS Webinar downloads: http://www.oasis-open.org/events/webinars/
top related