Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Composite Apps using SCA (Service Component Architecture)
1. Composite Apps using SCA (Service Component
Architecture)
Shameer Thaha
April 2014
Composite Apps using SCA
Shameer Thaha
@ April 2014
Service Component Architecture aka SCA
2. Agenda
Introduction to SOA
Integration Frameworks and ESB
Business Process Modelling (BPM)
Service Component Architecture aka SCA
SCA Features
jBoss Switch Yard
Switch Yard Features
Switch Yard Demo
Reference
Q & A
4. Introduction to SOA
SOA is an architectural style for building software applications.
Need for SOA
-- Heterogeneous IT infrastructures
-- Interfaces use different technologies, protocols and data formats.
SOA Advantage :
-- Software Re-usability, loosely coupled , policy-driven
-- Service-based technology includes CORBA, SOAP , REST, SCA etc
- 4 -
5. Integration Frameworks and ESB
Light weighted integration frameworks include Spring Integration and apache
camel and suited for simple integration needs.
For complex integrations we need any one of the ESB's like Mule ESB , JBOSS
ESB or Apache Service Mix.
All above Frameworks implements well know Enterprise Integration
Patterns (EIP)
- 5 -
6. BPM
BPM enables Process centric thinking instead of functional thinking.
Collaboration between business and IT to foster effective, agile and
transparent business processes [extract from BPM_For_Dummies - Kiran K,
VP-Software AG]
Popular BPM includes IBM Process Manager, Oracle BPM Suite, TIBCO
Active Matrix, JBPM
- 6 -
7. Service Component Architecture aka SCA
Architecture for building composite application following
SOA Principles.
Similar to electrical components in Circuit board, Build
Service Component and wire them together to Composite
application using SCA.
Components can be built in Java or any one of the programming languages
supported by SCA
Created by major software vendors including IBM and Oracle and the
specification is maintained by Oasis Technical Committee.
Open Source Implementations of SCA includes Switchyard, Fabric3m, Trentino
etc.
- 7 -
8. SCA Features
Specification includes Component Implementation, Binding, Assembly and Policy
SCA is Language Agnostic
Supports diverse technologies , protocols and frameworks
SCA is not JBI
JBI (Java Business Integration) mostly addresses middle ware vendor requirement ,
eg : ( Service Interfaces for creating of new bindings )
SCA is for Developers who want to built Composite applications
- 8 -
9. JBOSS Switch Yard
Light weighted component based development framework
Focused on building structured, maintainable services using the concepts and best
practices of SOA.
Switchyard is set to replace JBoss ESB, adding better modeling and services
support.
- 9 -
10. Switch Yard Features
Annotation over Configuration ( eg : Service dependency using @Service,
Dependency injection using @Inject )
jBPM Components for Business Process Modelling
Drools for Business Rule Processing
Camel Components for Routing
Supported bindings includes Http, SOAP, Rest (Rest Easy) , JCA, JPA, JMS,
AMQP etc (Bindings defines how one component communicates with other
another)
- 10 -
11. Switch Yard Demo
Getting Started :
Patch EAP with downloaded switchyard zip (switchyard-1.1.0.Final-
EAP6.1.GA)
Model your Services using Jboss Visual Tools
Export Services to jar file and deploy the same in EAP
Test the services via SOAP/UI or Maven Test
Development Environment:
Eclipse with Jboss Tools Plug-in / Jboss Developer Studio
Java 6 or above
JBoss EAP 6.0.1 integrated with Switchyard Module
SOAP UI / Maven
- 11 -