Copyright (c) 2008 innoQ
SOA-Governance: Order vs. Chaos?
Stefan Tilkov | innoQ Deutschland | stefan.tilkov@innoq.com
1 Dienstag, 11. November 2008
‣
Technologie-Beratung
‣
Fokus auf Architekturen für
Individualsoftware und
Systemintegration
‣
Seit 1998 in CH, Seit 1999 in D
‣
ca. 50 Mitarbeiter
‣
MDA seit 2002
‣
Web Services und SOA seit 2003
‣
Entwicklung in Java/J2EE, Java EE, Ruby on Rails
‣
http://www.innoq.com
innoQ
2 Dienstag, 11. November 2008
Stefan Tilkov
‣
Geschäftsführer & Principal Consultant,
innoQ Deutschland GmbH
‣
stefan.tilkov@innoq.com
‣
http://www.innoq.com/blog/st/
‣
Herausgeber (m. G. Starke)
“SOA-Expertenwissen”, dpunkt
http://www.soa-expertenwissen.de
‣
Fachl. Leiter SOA-Lehrgang Euroforum
‣
Chefredakteur InfoQ SOA Community
3 Dienstag, 11. November 2008
governance |
gəvərnəns
|
4 Dienstag, 11. November 2008
governance
¦ gəvərnəns¦
noun
the action or manner of governing :
a more responsive
system of governance will be required.
archaic
sway; control :
what, shall King Henry be a pupil
still,
under
the surly Gloucester's
governance
?
ORIGIN Middle English : from Old French, from
governer
(see
govern
).
5 Dienstag, 11. November 2008
http://www.phac-aspc.gc.ca/vs-sb/voluntarysector/glossary.html
The act of affecting government and
monitoring (through policy) the long-term
strategy and direction of an organization. In
general, governance comprises the traditions,
institutions and processes that determine
how power is exercised, how citizens are
given a voice, and how decisions are made on
issues of public concern.
6 Dienstag, 11. November 2008
http://www.skywaysoftware.com/resources_terminology.htm
In the context of SOA, governance defines
the model to ensure optimal reuse of services
and enforcement of corporate policies (eg,
business design, technical design, and
application security).
7 Dienstag, 11. November 2008
SOA Governance is the process, model and
organization that ensures compliance to the
service-oriented architecture as defined for
the company.
8 Dienstag, 11. November 2008
Starting points
9 Dienstag, 11. November 2008
Starting points
Top-down
Strategic
Expensive
In advance
9 Dienstag, 11. November 2008Starting points
Top-down
Strategic
Expensive
In advance
Bottom-up
Technical
Expensive
After the fact
9 Dienstag, 11. November 2008
Starting points
Top-down
Strategic
Expensive
In advance
Bottom-up
Technical
Expensive
After the fact
YAGNI
9 Dienstag, 11. November 2008
Starting points
Top-down
Strategic
Expensive
In advance
Bottom-up
Technical
Expensive
After the fact
YAGNI
JABOWS
9 Dienstag, 11. November 2008
Starting points
Top-down
Strategic
Expensive
In advance
Bottom-up
Technical
Expensive
After the fact
YAGNI
JABOWS
(You ain’t gonna need it)
9 Dienstag, 11. November 2008
Starting points
Top-down
Strategic
Expensive
In advance
Bottom-up
Technical
Expensive
After the fact
YAGNI
JABOWS
(You ain’t gonna need it)
(Just a bunch of web services)
9 Dienstag, 11. November 2008
3 Goals:
10 Dienstag, 11. November 2008
1
.
Architectural Control
11 Dienstag, 11. November 2008
2
.
Subsidiarity Principle
http://en.wikipedia.org/wiki/Subsidiarity
12 Dienstag, 11. November 2008
3
.
Knowledge
13 Dienstag, 11. November 2008
new tasks
new roles
14 Dienstag, 11. November 2008
Roles
15 Dienstag, 11. November 2008
Roles
15 Dienstag, 11. November 2008
Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
Development
Operations
16 Dienstag, 11. November 2008Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
SOA
Domain Architect
Development
Operations
16 Dienstag, 11. November 2008Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
SOA
Domain Architect
SOA
Platform Architect
Development
Operations
16 Dienstag, 11. November 2008Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
SOA
Domain Architect
SOA
Platform Architect
Development
Operations
Business Service
Owner
16 Dienstag, 11. November 2008Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
SOA
Domain Architect
SOA
Platform Architect
Development
Operations
Business Service
Owner
Technical Service
Owner
16 Dienstag, 11. November 2008Existing Organization
CIO
CEO
Corporate Quality
& Processes
CFO
VP LoB 1
VP LoB 2
Corporate
Strategy
SOA
Domain Architect
SOA
Platform Architect
Development
Operations
Business Service
Owner
Technical Service
Owner
SOA
Governance Board
16 Dienstag, 11. November 2008Roles & Lifecycle
17 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Governance Structure
18 Dienstag, 11. November 2008
Standards & Products
19 Dienstag, 11. November 2008
UDDI
‣
420-page specification
‣
Finding and maintaining (meta-)model objects
Publication
save_binding
save_business
save_service
save_tModel
delete_binding
delete_business
delete_publisherAssertions
delete_service
delete_tModel
add_publisherAssertions
set_publisherAssertions
get_assertionStatusReport
get_publisherAssertions
get_registeredInfo
Inquiry
find_binding
find_business
find_relatedBusinesses
find_service
find_tModel
get_bindingDetail
get_businessDetail
get_operationalInfo
get_serviceDetail
get_tModelDetail
20 Dienstag, 11. November 2008News about UDDI
21 Dienstag, 11. November 2008
Registry vs. Repository
Registry
metadata
references
(runtime focus)
Repository
metadata
data
(governance focus)
22 Dienstag, 11. November 2008Registry vs. Repository
Registry
metadata
references
(runtime focus)
Repository
metadata
data
(governance focus)
UDDI
22 Dienstag, 11. November 2008Registry vs. Repository
Registry
metadata
references
(runtime focus)
Repository
metadata
data
(governance focus)
UDDI
?
22 Dienstag, 11. November 2008The Vendor Landscape
?
AcquisitionOEM License
23 Dienstag, 11. November 2008
Reg/Rep Products
Vendor(s)
Product
HP
Mercury
Systinet
Systinet 2
http://www.systinet.com
Software AG
Fujitsu
Infravio
webMethods
CentraSite/X-Registry
http://www.softwareag.com/Corporate/products/centrasite/
BEA
Flashline
AquaLogic Registry Repository (ALER)
http://www.bea.com/framework.jsp?CNT=index.jsp&FP=/content/products/aqualogic/
registry_repository/
IBM
WebSphere Service Registry and Repository (WSRR)
http://www-306.ibm.com/software/integration/wsrr/
24 Dienstag, 11. November 2008
UDDI
(contd.)
‣
UDDI could be greatly simplified by using plain
HTTP
‣
It would no longer be protocol-independent -
but who cares?
‣
Atom (Syndication Format & Protocol) are a
great match
‣
Approach taken in Mule Galaxy, WSO2 Registry,
HP Systinet 2
See: http://www.xml.com/pub/a/ws/2002/02/06/rest.html?page=2
25 Dienstag, 11. November 2008
Sad Truths about
Reg/Rep Solutions
‣
You will have more than one repository
‣
You will have more than one kind of metadata
‣
Products are too focused on web
services-based SOA only
‣
Extensibility is key requirement and key problem
26 Dienstag, 11. November 2008
Governance & Modeling
27 Dienstag, 11. November 2008
What is a repository?
‣
It holds data
‣
It holds metadata
‣
Anything structured should be storable
‣
It should support many processes and tasks
‣
It should be open and decoupled
‣
It should support arbitrary queries
28 Dienstag, 11. November 2008
In other words …
29 Dienstag, 11. November 2008
Who builds the model?
Your vendor
30 Dienstag, 11. November 2008
Who builds the model?
vs.
Your vendor
30 Dienstag, 11. November 2008
Who builds the model?
You
vs.
Your vendor
30 Dienstag, 11. November 2008Model
Repository
SOA Governance
Repository
Runtime
Registry
Modeling and SOA Governance
31 Dienstag, 11. November 2008
Model
Repository
SOA Governance
Repository
Runtime
Registry
Modeling and SOA Governance
Interface Descriptions
Datatypes/Schemas
31 Dienstag, 11. November 2008
Model
Repository
SOA Governance
Repository
Runtime
Registry
Modeling and SOA Governance
Interface Descriptions
Datatypes/Schemas
Service Status
Schemas
31 Dienstag, 11. November 2008Model
Repository
SOA Governance
Repository
Runtime
Registry
Modeling and SOA Governance
Interface Descriptions
Datatypes/Schemas
Service Status
Schemas
Usage Information
Response Times
Throughput
31 Dienstag, 11. November 2008Model
Repository
SOA Governance
Repository
Runtime
Registry
Modeling and SOA Governance
Interface Descriptions
Datatypes/Schemas
Service Status
Schemas
Usage Information
Response Times
Throughput
Stability Info
Critical Areas
31 Dienstag, 11. November 2008Key Connections
WSDL portType
XML Schema Types
UML Interfaces
UML Classes
WSDL service
Physical Endpoint
Governance
Development
Runtime
32 Dienstag, 11. November 2008“Meta” Integration Examples
1. Transform UML to WSDL/XSD
2. Import WSDL/XSD to UML
3. Use UML to model (proprietary) repository
structure
4. Transform (proprietary) enterprise model to
vendor repository structure
5. Merge UML and XSD modeling
33 Dienstag, 11. November 2008
Summary
‣
Develop a consistent process
across
modeling
and governance tasks
‣
Don’t try to do everything at once – start small
‣
Accept your responsibility for defining your own
model and process
34 Dienstag, 11. November 2008