soa technical overview - northwestern university · soa reference architecture implement deployment...
Post on 12-Jul-2020
3 Views
Preview:
TRANSCRIPT
1 1
SOA Technical Overview Achieve Business Agility
Glenn Gettman, WebSphere Connectivity Specialist
2
• In 1917, BC Forbes compiled his first list of the 100 largest American companies
• In 1987, Forbes published its Forbes 100 list and compared it to its 1917 list
• Of the original group, 61 had ceased to exist!
How will your company transform its business to beat competition and deliver increasing customer value over time?
Of the remaining 39, only 18 had
managed to stay in the top 100.
History has not been Kind to Brittle Businesses
Be prepared for change. It’s the only thing you can count on.
3
“Today’s IT architectures are the biggest
roadblocks most companies face when making
strategic moves.”
–McKinsey
“Flexible IT, Better Strategy”
Why are today’s architectures roadblocks?
• Complexity
• Monolithic and silo’d applications
• Hidden interfaces
• Custom coded connections
• Not designed for change
E01-EDI
Data Warehouse(Interfaces to and from the
Data Warehouse are not
displayed on this diagram)
DRAFT Best Buy - Application Diagram V4 DRAFT
November 10, 1999
G02 - General
Ledger
A05 - AP
S01 - Sales
Corrections
I01 PO
Receiving
I03 Return to
Vendor
I06 Warehouse
Management
Mainframe apps - Blue
PC/NT apps - Green
Unix apps - Yellow
3rd party interface - Orange
Lines: Colors have no special meaning.
They are to help make the diagram easier to
read.
For More Information: See the database
containing information about each
application: Application V4.mdb
S06 - Credit App
P15 EES Employee
Change Notice
OTHER APPS - PC
AP - Collections/Credit
TM - Credit Card DB
ACCTS REC APPS - PC
990COR
Bad Debt
Benefical Fees
Beneficial Reconcil
JEAXF
JEBFA
JEBKA
JEDVA
JESOA
JEVSA
JEVSF
NSF
TeleCredit Fees
INVENTORY CONTROL APPS - PC
Code Alarm
Debit Receivings
Devo Sales
Display Inventory
In Home
Junkouts
Merchandise Withdrawl
Promo Credits
RTV Accrual
Shrink
AP Research - Inv Cntrl
AP Research-Addl Rpts
Book to Perpetual Inventory
Close Out Reporting
Computer Intelligence Data
Count Corrections
Cross Ref for VCB Dnlds
Damage Write Off
Debit Receivings
DFI Vendor Database
Display Inventory Reconcil
Display Inventory Reporting
INVENTORY CONTROL APPS - PC
DPI/CPI
IC Batching
Inventory Adj/Count Correct
Inventory Control Reports
Inventory Levels
Inventory Roll
Merchandise Withdrawl
Open Receivings
PI Count Results
PI Time Results from Inv
Price Protection
Sales Flash Reporting
Shrink Reporting
SKU Gross Margin
SKU Shrink Level Detail
USM
VCB Downloads
Journal Entry Tool Kit
Scorecard - HR
L02-Resource
Scheduling
(Campbell)
P09 - P17
Cyborg
M02 - Millennium
M03 - Millennuim 3.0
Banks - ACH and Pos to
Pay
Cobra
B01 - Stock
Status
S03-Polling
P14 On-line New
Hire Entry
CTS
Plan Administrators
(401K, PCS, Life,
Unicare, Solomon
Smith Barney)
D01 Post Load
Billing
I04 Home
Deliveries
I02 -
Transfers
Arthur Planning
I07 Purchase
Order
I12 Entertainment
Software
I05
Inventory Info
E13
E3 Interface
S04 - Sales Posting
V01-Price Management
System
I10 Cycle Physical
Inventory
I55 SKU
Information
K02
Customer Repair
TrackingI35 Early Warning
System
B02 Merchandise
Analysis
I13- Auto
Replenishment
U18 - CTO
Intercept
I09 Cycle Counts
E02-Employee
Purchase
Texlon 3.5
ACH
Stock Options
I17 Customer Perceived
In-Stock
U16-Texlon
SiteSeer
C02 - Capital
Projects
F06 - Fixed
Assets
US Bank Recon
File
Star Repair
EDI
Coordinator
Mesa Data
NEW Soundscan
NPD Group
AIG Warranty Guard
Resumix
Optika
Store Budget
Reporting
P16 - Tally Sheet
Cash Receipts/Credit
S05 - House
Charges
Ad Expense
L01-Promo
Analysis
V02-Price
Marketing
Support
BMP - Bus
performance Mngt
Store
Scorecard
I11 Price
Testing
Valley Media
P09
Bonus/HR
I15 Hand Scan
Apps
Roadshow
POS
S08 - Vertex
Sales
Tax
A04 - Cust
Refund Chks
Equifax
ICMS Credit
Cellular
Rollover
S09 - Digital
Satellite
System
NPD,
SoundScan
Sterling VAN
Mailbox (Value)
I18
SKU Rep
X92-X96
Host to AS400
Communication
S02 -
Layaways
Washington,
RGIS,
Ntl Bus Systems
V04-Sign
System
I14 Count CorrectionsNARM
P01-
Employee
Masterfile
I06 - Customer
Order
Frick
Co
UAR - Universal Account
Reconcilliation
Depository
Banks
S07 - Cell
Phones
S11 - ISP
Tracking
AAS
Fringe PO
Cash Over/
Short
L60 MDF
CoopSKU Selection
Tool
SKU
Performance
Supplier
Compliance
1
I35 - CEI
ASIS
Misc Accounting/Finance Apps - PC/NT
COBA (Corp office Budget Assistant)
PCBS(Profit Center Budget System)
Merchandising Budget
AIMS
Merch Mngr Approval
Batch Forcasting
Ad Measurement
AIMS Admin
AIMS
ReportingAd
Launcher
V03- Mkt
Reactions
Spec
Source
CTO2.Bestbuy.
com
Rebate
Transfer
Sign
System
CopyWriter's
Workspace
ELT
PowerSuite
Store
Monitor
AIS Calendar
Stores & Mrkts
Due Dates
Smart Plus
Insertions
Orders
Budget
Analysis Tool
Print Costing
Invoice App
AIS Reports
Broadcast
Filter
Smart Plus
Launcher
General
Maintenance
Printer PO
Printer
Maintenance
Vendor
Maintenance
Vendor Setup
Connect 3
Connect 3
ReportsConnect 3
PDF Transfe
Spec Source
SKU Tracking
S20-Sales
Polling
Prodigy
PSP
In-Home
Repair
Warranty
Billing
System
Process Servers
(Imaging)
Prepared by Michelle Mills
Page 1 of 2
Actual application architecture for a consumer electronics company
Business flexibility depends on IT flexibility
4
Verify Part availability
Fulfill order
Bill and collect
EJBs and servlets
access database
PeopleSoft adapter
RPG Program
• Poor communication between LOB and IT
• Business managers view IT as costly and slow
• IT maintenance cost absorb 70+% of the funding
• IT too often viewed as a cost center not a strategic
business tool
The Big Divide
5
• Consider interacting with a waiter in a restaurant: o Order food
o Brings food
o Refills glasses
o Brings bill
• How the waiter achieves the task is not important, only that he does
• Waiter acts as an Interface to the restaurant
• Waiter is your view of the restaurant service
What is a Service?
6
• Existing software can be described as Services o Through adapters
o Through “Web Services”
o Through technology
• J2EE
• .NET
• … others
Services from Existing Software
7
• Services can be constructed for new applications o Web Services
o J2EE EJBs
o .NET assemblies
• Services can be constructed for new applications that
interact with existing software o Bridges
o Gateways
Services from New Applications
8
• A wide variety of systems to
be integrated
• Each one has a distinct set of
APIs and associated
semantics
• A very difficult task to write
“glue” code to join them all
together
Services in your Business
9
• Step 1: Break down your business into components o Decide what is strategically important, what is just operations in the value chain,
prioritize and scope your transformation projects
• Step 2: Define a Service Model o Identify your business services based on your business components, Identify your
business processes, specify the services, processes and components accordingly
• Step 3: Implement a Service Model o Develop a service-oriented architecture to support the Componentized Business,
Implement service based scoping policy for projects, Implement appropriate
governance mechanism
Services Oriented Architecture Steps
10
1
0
Instead of:
Architecture for
architecture’s sake
Complete re-engineering
Enterprise-wide initiatives
Start with:
End-to-end departmental
projects
Focus on IT
professional’s needs
Integrating existing
organizational structures
For Successful SOA, Keep It Simple
11
• Web Services SOA
• ESB SOA
• Component Architectures (and previous architectures)
failed
• The primary value of SOA is code reuse and
programmer productivity
= =
Dispelling Myths about SOA
12
SOA Reference Architecture
Implement
Deployment
Asset Mgmt.
Ad hoc composition
User Integration
Device Integration
Service Choreography
Business Rules
Staff
Partner Management
Protocol
Document Handling
Component
Data
Edge
Object Discovery
Event Capture
Security
Policy
IT Monitoring
Business Modeling
Workload Management
Business Dashboards
High Availability Virtualization
Business Monitoring
Master Data Management
Information Integration
Data Management
Service Enablement
Ap
ps &
In
fo A
sse
ts
Business Innovation & Optimization Services
De
ve
lopm
ent
Se
rvic
es
Interaction Services Process Services Information Services
Partner Services Business App Services Access Services
ESB
IT S
erv
ice
Ma
na
ge
me
nt
Infrastructure Services
Interoperability Mediation Registry/Repository (Connectivity)
13
Turning this…
Application Application Application Application
Application Application Application Application
Consolidate multi vendor
platforms into a unified
messaging backbone,
enable re-use of both the
business applications
and their interfaces,
Decouples
interfaces from the
business
applications and
reduces technical
complexity.
QoS to match
business need,
sending the right
data to the right
service, logs and
correlates events
Introduces rich
business abstractions
to describe the
application interface.
= interface
SOA + ESB:
Service Service Service
Service Service Service Service
Enterprise Service Bus (inc Backbone)
Service
…into this.
The ESB Virtualizes access to services.
SOA with an ESB – Simplifying Interfaces and Applications
14
The ESB facilitates the decoupling of interactions between requestor(s) and provider(s)
Service Virtualization Routing
Protocol and transports
Transformation of interfaces
Aspect Oriented Connectivity Security
Management
etc …
Log and Audit
Event tracking
Service Requestor
Service Requestor
Service Requestor
Service Requestor
Service Provider
Service Provider
Two Core Principles Enable Flexibility
15
ESB
An ESB enables flexible connectivity for integrating business applications, services and processes
Converts between different transport protocols
Distributes Business events
Connects everything to everything
Matches & routes communications between applications
Transforms between different data formats
Agile Connectivity Begins with Integration The Enterprise Service Bus (ESB)
16
• Universal Connectivity – Simplify application connectivity to provide a flexible and dynamic infrastructure
• Routes and transforms messages FROM anywhere, TO anywhere – Supports a wide range of protocols
• MQ, JMS 1.1, HTTP(S), Web Services (SOAP, REST), File, ERP (SAP, SEBL…), TCP/IP, SCA – Supports a broad range of data formats
• Binary (C/COBOL), XML, SOAP, CSV, Industry (SWIFT, EDI, HL7…), IDoc, User Defined – Interactions and Operations
• Route, Filter, Transform, Enrich, Monitor, Distribute, Decompose, Sequence, Correlate, Detect
• Simple programming – Patterns based for top-down, parameterized connectivity of common use cases
• e.g. Web Service façades, Message oriented processing, Queue to File… – Construction based for bottom-up assembly of bespoke connectivity logic
• Message Flows to describe application connectivity comprising…
• Message Nodes which encapsulate required integration logic which operate on…
• Message Tree which describes the data in a format independent manner
• Transformation options include Graphical mapping, PHP, Java, ESQL, XSL and WTX
• Operational Management and Performance – Extensive Administration and Systems Management facilities for developed solutions
– Wide range of operating system and hardware platforms supported
– Offers performance of traditional transaction processing environments
– Available in Trial, Remote Deployment, Get Started and Enterprise deployment options
WebSphere Message Broker
17
Message Broker Toolkit is Visual and Graphical
18
• Publish and Subscribe – Publication node to publish using WebSphere MQ
• Multiple Inputs – Collector node groups incoming messages from multiple sources
– Correlated set of messages or events propagated downstream
• Sequence / Resequence nodes – Messages arrive in any order, propagated according to monotonic
sequence number
– Sequence groups have defined start and end, propagated in order within group
– Strong synergy with aggregation and collector nodes
– Fully multi-threaded and handles parallel sequence groups
• Fan out / Fan In (Aggregation) – Generate multiple requests from single request
• Coordinate the responses to provide single consolidated response
– Improve response time because requests performed in parallel
– Fits nicely with several typical ESB patterns
Event Driven Architecture (EDA)
19
• PEP node for Authentication, Authorization and Identity Mapping – Can be placed anywhere in message flow to perform security functions
• Additional flexibility adds to existing input node security
• Enhanced Security Token Support for PEP and Input nodes – SAML, Kerberos, LTPA & RACF PassTickets complement existing user, password & X509 tokens – PEP node: all new tokens available
• Users can easily extend to support custom and non-standard tokens
– e.g. LTPA v1.1, Liberty tokens, TAM credentials… – SOAP nodes: adds support for SAML, Kerberos & LTPA tokens
• SAML WS-Security supports Passthrough/‘Bearer’ scenarios • Implementation allows for future addition of Sender Voucher & Holder of Key authentications
– MQ/HTTP nodes: adds SAML support to existing tokens
• Security Policy Decision Point (PDP) – WS-Trust 1.3 for token authentication & authorization – TFIM and LDAP PDPs also supported out-of-the-box – Kerberos WS-Security will exploit Key Distribution Cache
• e.g. Active Directory on Windows…
• Operational Control – Security Profiles allow operational reconfiguration of PDP without redeploy – Resource manager security statistics; totals, passes, exceptions, cached
Extensive Security Capabilities
20
Virtual Service
Service Provider
Service Requestor
A’ A
Capture metadata about services for use by Service Bus
1
Advertise availability of the ‘virtual services’
2
Service Registry
Use metadata to implement ‘smart’ mediations
3
Primary use cases:
Visibility: application catalog & relationships
Governance: who accesses which applications/services
Dynamicity: update registry to change ESB behavior without redeploy
Policy based Processing: policy enforcement and policy based service selection
Understand your application assets and control their access dynamically Catalog application and service assets using a registry, e.g. WSRR
– Web Service and MQ Service definitions – Classifications: by function, owning department – Relationships: applications dependencies for lifecycle management, versioning – User defined properties (metadata): Application=GOLD or Service=SILVER
Use registry information in ESB routing – Built-in facilities allow ESB to access registry – Enables policy based processing
Derive Value from an Application Inventory
21
6. Maintenance
costs soar /
provider
ends service
Currency conversion service
Accounting department
App. 1 App. 2
5. Fix works
temporarily
but problem
reappears
4. Service
is fixed at
provider’s
expense
3. LOBs
increase use
of service /
quality suffers
2. Other
LOBs
start using
the service
1. A currency
service is created
for a specific line
of business (LOB)
Sales
Order
fulfillment
Legal
Purchasing
Why Governance is Important
22
This could become… … like this
The promise of SOA A pile of services
… and so would go the promised benefits of SOA
Without Proper Management and Governance of SOA…
23
Policy
Design-Time,
Service Development,
Registry / Repository
Systems
Management
Run-Time,
Gateways,
Policy Enforcement
Run-time
SOA GOVERNANCE
Basics of an End-to-End SOA Governance Infrastructure
24
What is a registry … a repository?
Repository? Stores Service Artifacts
Business process
vitality
New value
through reuse
of assets
Improved
connectivity
Closer
alignment of IT
to business
Business
Flexibility
An integrated Registry / Repository Solution
is needed govern and manage SOA for maximum value
Registry? Contains Service Metadata
25
The WebSphere Service Registry and Repository provides
Value throughout the SOA Lifecycle
WebSphere Service Registry and Repository
Publish Find Enrich Govern Manage
Encourage Reuse
Find and reuse services
for building blocks for new
composite applications.
Enhance Connectivity
Enable dynamic and
efficient interactions
between services at
runtime.
Enable Governance
Govern services
throughout the service
lifecycle
Publish Find
Enrich
Govern Manage
Help optimize
service performance
Enable enforcement of
policies. Impact analysis
26
Register your services for visibility and reuse
Optimize resource costs by governing service
consumption with service contract management
Accelerate reuse with Automated Service Discovery
across heterogeneous environments
Reduce business risk with prescriptive service
lifecycle governance including MQ Applications
Tailor Service Governance implementation to fit your
business needs
Apply operational policies consistently to help
achieve reliability and compliance
WSRR is your Enterprise SOA Registry/Respository Highly Prescriptive Service Lifecycle Governance
27
WSRR 3 Layer Security Architecture
External Systems
User
Interface
Content
models
Web Eclipse
Plug -in ESBs
Process Servers
Appliances 3rd
Party Registries & Repositories +
Programming Interfaces
Java SOAP Extensions & Integrations
Events
generated
Registry & Repository
Create
Retrieve
Update Delete
Query
Admin Import/Export
configure
Governance Transition
Validate
Notify
Impact analysis
Audit
Validation
Notification
JMX
Lifecycle
Validators
Access Control
Classifications
Events
RDB
WAS Server
User Registry
WAS Authentication
WSRR Authorization
URI JAAS Security
Server WS-SEC
J2EE Security WAS Authorization
JMX Security
28
Granting Access to Service
External Systems
User
Interface
Content
models
Web Eclipse
Plug -in ESBs
Process Servers
Appliances 3rd
Party Registries & Repositories +
Programming Interfaces
Java SOAP Extensions & Integrations
Events
generated
Registry & Repository
Create
Retrieve
Update Delete
Query
Admin Import/Export
configure
Governance Transition
Validate
Notify
Impact analysis
Audit
Validation
Notification
JMX
Lifecycle
Validators
Access Control
Classifications
Events
RDB
WAS Server
User Registry
WAS Authentication
WSRR Authorization
URI JAAS Security
Server WS-SEC
J2EE Security WAS Authorization
JMX Security
1. Service found in WSRR
2. Request for Access Made
1 2
3. Governance Board Approves Request
3
4. WSRR Access Updated
4
4
5. Security Info Given to Requestor
6. Requestor Makes Updates
29
• WSRR Access Control editor provides
guidance for authoring roles and permissions
• Allows for advanced permissions with the
specification of an XPath expression
• Click-to-Assign permissions to roles
• Easy view for understanding what
permissions are assigned to the various roles
Configure Fine Grain Role Based Security with Ease WSRR Access Control Editor
30
ESB Integration
Publish Find Enrich Govern Manage
WebSphere Service Registry and Repository
+ Dynamic Endpoint Selection
1) ESB mediation is invoked 2) Mediation queries
WebSphere Service Registry and Repository for information about the requestor and candidate provider
3) Mediation matches requestor with best candidate provider
4) Message is routed
Availability Management
1) Selected provider fails to respond due to failure
2) Mediation queries WebSphere Service Registry and Repository to find other candidate providers
3) Mediation matches requestor with best candidate provider
4) Message is routed
Policy Enforcement
1) Mediation queries WebSphere Service Registry and Repository for information about the requestor and candidate provider
2) Mediation retrieves policy information from registry
3) Requestor and provider are matched based on these policies
4) Message is routed
31
32
top related