Date post: | 05-Dec-2014 |
Category: |
Technology |
Upload: | terry-cho |
View: | 5,898 times |
Download: | 0 times |
BEA Confidential. | 1
SOA Overview and Layered Model
Byungwook Cho K.
2006-05-25
BEA Confidential. | 2
Agenda
1. What is SOA?
2. What is Service?
3. Service Type
4. SOA Layered Model
5. SOA Elements
6. SOA platform
7. Technical things we need to support SOA
8. Reference
BEA Confidential. | 3
1. What is SOA?
Software architecture history Structured programming / SSADM (C/Pascal)
Object Oriented Programming / OOADM & CBD (C++/Java)
+ coarse grained , loosely coupled, platform independency, standard interface
= Service Oriented Architecture
BEA Confidential. | 4
1. What is SOA?
SOA is “Legoware”.
SOA is an architecture that a software system is divide into high flexible and re-usable component unit called service and compose with interconnection of these services.
The general concept of service in SOA is that service is a major unit of software component with business sense. These services have low dependency and each can be implemented without platform dependency while the interfaces that the service provides must be standardized .
BEA Confidential. | 5
1. What is SOA?
Conceptual view of SOA
G H I
J KL
Software Component
System (Platform).NET CRM JAVA KMS
Services
Business Process
A B C D E F
Application FrontendWeb Client, Rich Client, Enterprise Portal etc
BEA Confidential. | 6
1. What is SOA?
SOA Definition BD : A SOA provides the flexibility to treat elements of business
processes and the underlying IT infrastructure as secure,standardized components(services) that can be reused and combined to address changing business priorities. – IBM
Resource is application or resources built on IT systems. SOA is a software architecture that integrate the resources to maximized reusability and flexibility of composition.
SOA is Not a technical standard Not a technology Just architecture blue print
BEA Confidential. | 7
1. What is SOA?
Contemporary SOA WebService
BPM
G H I
J KL
Services
Business Process
A B C D E FWebService
BPM
BEA Confidential. | 8
2. What is Service?
Service is component of distinctive functional meaning that typically encapsulate
a high-level business concept
Lego block
Service contains Contract – message type def, constraint, description (comment)
Interface – set of operations
Implementation – Logic and data
BEA Confidential. | 9
2. What is Service?
Conceptual structure of service
NOTE: Every service is an entity of distinctive functional meaning that typically encapsulates a high-level business entity. Services impose a strong vertical slicing of application that defines the coarse-grained structure of the whole system.
BEA Confidential. | 10
2. What is Service?
Service is Lego block. Building Block
Has standard based interface
Loosely coupled
Platform independent
Composable
Discoverable
Vertical slicing
BEA Confidential. | 11
3. Service Type
5 main type of service Application Service
Business Service
Intermediary Service
Process Centric Service
Public Enterprise Service
BEA Confidential. | 12
3. Service Type
Application Service Provide technology-specific functionality. It does not have business meaning Wrapper service
Expose legacy functionality to service requestor.
Service adapter from legacy vendor
Example) Tuxedo Services, SAP RPC Utility Service Can be used by P2P integration. Can be custom developed or 3rd party services Can be avoided in perfect SOA world Example) System Notification Service,Load Balancing Service, Transaction
management Service etc.
BEA Confidential. | 13
3. Service Type
Business Service Business meaning + compose application service
Composable unit SOA is accomplished by orchestartion of Business Service
Hybrid service service contains business process (orchestration) and application logic
BEA Confidential. | 14
3. Service Type
Business Service Task centric service
Has business algorithm or logic
Similar to logic layer in traditional application. Eg. Session Bean
Example) Booking Service etc Data centric service (Entity centric service)
Only update and query data
Easy to reuse
Similar to data access layer in traditional application. Eg. Entity Beans in EJB
Example) Employee Service, Vendor Profile Service, Purchase Order Service
BEA Confidential. | 15
3. Service Type
Intermediary Service Stateless service that bridge design gap or conceptual gap in an
architecture
Transformer service (Adapter Service)
Routing service
Function adding service
Façade service
BEA Confidential. | 16
3. Service Type
Intermediary ServiceTransformation Service
NAME
ADDR
SEX
AGE
NAME
ADDR
PERSONAL INFO
Service ANew Service
Message type mismatch
NAME
ADDR
SEX
AGE
New Service Intermediary Service
TransformationPersonal = SEX + “:”+ AGE
NAME
ADDR
PERSONAL INFO
BEA Confidential. | 17
3. Service Type
Intermediary Service Routing Service
Service BCustomer
ServiceService B
Customer
Service
* Before change VIPService
* After new service “VIP Service” added,We have to add control logic to service consumer “Service B”
If there are a lot of service consumer of “Customer Service”We have to change a lot of things..!!
Intermediary
Service
Customer
Service
VIPService
Service B
If balance > 10m$ thengoto VIP Service
* If we just add “Intermediary Service”, we don’t have to fix consumer Service B.Intermediary service will route service request to appropriate client by routing rule.
BEA Confidential. | 18
3. Service Type
Process centric service Orchestrate business services
Implement business process (flow)
Process centric service are stateful
Public enterprise service Service interface for B2B
Will be Business service in service consumer side.
BEA Confidential. | 19
3. Service Type
Application Service
Data centric Business Service
Task centric Business Service
Intermediary Service
Process centric Service
Public enterprise service
Software components
(Used for Business Service & Intermediary Service)
T TT
D D D D D
A A A
I I I
P
B
BD
Web Client, Rich Client, Enterprise Portal etc Application Frontend
SOA service stack
BEA Confidential. | 20
3. Service Type
Service Type SummaryApplication Service
Business Service
Intermediary Service
Process centric Service
Public Enterprise Service
Description Express technology-specific functionality
Contains business logic and data.
Bride the gap from concept or design
Encapsulate business process and orchestrate other services
Export business logic to other enterprise or organization
Sub category Wrapper svcUtility svc
Task centric ,Entity centric
Façade,Function Adding,Routing,Transforming
Process centric
State mgmt No No No Yes No
Reusability ?? High Low Very Low High
Mandatory in SOA
No Yes No No No
Note Most Important Service
* Hybrid svc
It needs when new service or new service connection is made
BEA Confidential. | 21
3. Service Type (optional *)
How can I define services? Task centric business services from business process
Data centric business services from Entity relationship diagram
Process centric service each business process is process centric service
Intermediary service Adding new service or re-implement
Application services In design or implementation phase
The most important factor in SOA is
finding business service and define scope of it… !!
BEA Confidential. | 22
4. SOA Layed Model
SOA Layered Model Fundamental SOA
Networked SOA
Process enabled SOA
Other layered model
BEA Confidential. | 23
4. SOA Layered Model
Fundamental SOA
T TT
D D D D D
A A A Application Service
Data centric Business Service
Task centric Business ServiceBT
Software components
(Used for Business Service & Intermediary Service)
Web Client, Rich Client, Enterprise Portal etc Application Frontend
BEA Confidential. | 24
4. SOA Layered Model
Fundamental SOA Easy to implement. Good starting point for SOA
Integration only
Consists of only Application Service & Business Service
Complex Application Frontends
Business process control is in Frontends
BEA Confidential. | 25
4. SOA Layered Model
Networked SOA
T TT
D D D D D
A A A
I I I
Application Service
Data centric Business Service
Task centric Business Service
Intermediary Service
BT
Software components
(Used for Business Service & Intermediary Service)
Web Client, Rich Client, Enterprise Portal etc Application Frontend
BEA Confidential. | 26
4. SOA Layered Model
Networked SOA Fundamental SOA + Intermediary Service = enable Flexibility
Reduce complexity of frontends
Business control still reside in application frontend
BEA Confidential. | 27
4. SOA Layered Model
Process enabled SOA
T TT
D D D D D
A A A
I I I
P
Application Service
Data centric Business Service
Task centric Business Service
Intermediary Service
BT
Process centric Service
Software components
(Used for Business Service & Intermediary Service)
Web Client, Rich Client, Enterprise Portal etc Application Frontend
BEA Confidential. | 28
4. SOA Layered Model
Process Enabled SOA Networked SOA + Business Process (BPM) = enable Agility
When it has complex business flow
Implements business control
BEA Confidential. | 29
4. SOA Layered Model
SOA Maturity Level
BEA Confidential. | 30
4. SOA Layered Model
SOA introduction plan Define integration scope
Select SOA level depends on budget,skill,required agility.
CF. 6 Domain architecture from BEA
Service maturity level Based on the required scope of business integration
Intra-department~Cross department : Fundamental SOA
Cross-department~Cross Business unit : Networked SOA
Simple B2B~Complex Business integration : Process enabled SOA
BEA Confidential. | 31
4. SOA Layered Model
Other Layered Model Task centric service
Task centric service + Data centric service
Process centric service + Hybrid service
Process centric service + Task centric service
Process centric service + Data centric service
Process centric service + Task centric service + Data centric service
BEA Confidential. | 32
5. SOA Elements
SOA is based on 3 major elements Service
Service Repository
Application Frontend
optionally ESB
BEA Confidential. | 33
5. SOA Elements
Application frontend Active player of an SOA
Service consumer
Initiate and control all activity of enterprise system
BEA Confidential. | 34
5. SOA Elements
Service Message format
Input message, output message
Data type
Message exchange pattern
BEA Confidential. | 35
5. SOA Elements
Service repository Service repository is “provides facilities to discover services and
acquire all information to user the service “
Service repository is indispensable in long term
It contains
In addition to service contract : location,provider,contact ,usage fee,technical constraints,security issues and availble service level
SVC Info,ACL,SLA,Transactional properties of SVC & operation (CRUD)
In cross enterprise : security,user registration, service subscription,billing and versioning
BEA Confidential. | 36
6. SOA Platform
Revise SOA stack
T TT
D D D D D
A A A
I I I
P
Application Service
Data centric Business Service
Task centric Business Service
Intermediary Service
BT
Process centric Service
Software components
Web Client, Rich Client, Enterprise Portal etc Application Frontend
BEA Confidential. | 37
6. SOA Platform
BEA SOA Platform
I way adapter
WS-WLW
WS-WLS ant task
AquaLogicData Service Platform
WebLogic Integration
AquaLogic Service Bus (ESB)
Aqua Logic BPM Suite (BPA+BPM+BAM)
Weblogic PortalAquaLogic User
Interaction
Aq
ua
Lo
gic
Se
rvic
e R
eg
istr
y
Subprocess (BPM)
Application Service
Data centric Business Service
Task centric Business Service
Intermediary Service
Process centric Service
Application Frontend
Make service it selfData storeLegacy System
Aq
ua
Lo
gic
En
terp
rise
Se
curit
y
BEA Confidential. | 38
6. SOA PlatformCustomer System Approver System
Request Loan
Approve Loan
AquaLogic BPM Suite
WebLogic Integration
Backend Systems
Human-centric process integration
Leverage reusable services
System-centric process integration
Build reusable services that solve complex integration problems
LO
B C
EN
TR
IC IT
CE
NT
RIC
AquaLogic Service Bus
Service Infrastructure
BEA Confidential. | 39
6. SOA Platform – AL BPM Life Cycle
Process Modeling, Simulation and Documentation
Process Management and Real-Time BAM
Historical & Trend Analysis Tools
BusinessOwners
HiPer Workspace
ProcessParticipants
Process Server and Monitoring Repository
AquaLogic BPMEnterprise Server
BusinessSystems
CRMDB
ERP
BusinessAnalysts
Use Cases1.0 Get the stuff2.0 Build the picture3.0 BAM Consoles
Requirements1.1 Process Diagram2.1 Launch screen3.1 Monitoring screen
Use Cases1.0 Get the stuff2.0 Build the picture3.0 BAM Consoles
Requirements1.1 Process Diagram2.1 Launch screen3.1 Monitoring screen
ProcessAnalyst Process Development
and Systems Integration
BPA
BAM
BPM
Start
BEA Confidential. | 40
6. SOA Platform
WebService Technical Stack
JAXP
JAX-RPC
SAAJ
XML Parser
SOAP Protocol Handling
SOAP With Attachment
WebService
JAXR
UDDI
UDDI Interface
BEA Confidential. | 41
7. Technical things we need to support SOA
Services XML Skills name space ,XSD ,XML
XML Apis JAXP,JAX-RPC,JAAS,JAXR
WS Standard SOAP, WSDL
WS* WS-Reliable Messaging,WS-Security
CF. WS I Basic Profile
ESB (ALSB) Additionally Xquery, Xpath
BEA Confidential. | 42
8. Reference
Enterprise SOA Best Practice – Dirk Krafzig,Karl Banke,Dirk Slama
Good book to run contemporary SOA whole concept
Service Oriented Architecture – Concepts,Technology, and Design by Thomas Erl
Good for SOA Analysis and design
BEA Confidential. | 43
Questions?