Services,
Service-Oriented
Architectures,
and
Cloud
Computing
The
Savvy Manager's
Guide
Second Edition
Douglas
K.
Barry
with
David Dick
M<
ELSEVIERAMSTERDAM•BOSTON•HEIDELBERG•LONDON
NEW YORK•OXFORD PARIS•SAN DIEGO
SANFRANCISCO•SINGAPORE•SYDNEY•TOKYO
Contents
Introduction xv
Parti
Overview of WebServices, Service-Oriented Architecture,
andCloud
Computing
11 A Business
Trip
in theNot-Too-Distant Future 3TheBusiness
Trip
3Summary
82 Information
Technology
Used for the BusinessTrip
9Keeping
Track of Detailed Customer Data 10Using
VirtualPersonal Assistants 10Managing
C. R.'s BusinessTrip
12Augmenting
C. R.'sExperiences
12Commoditizing
Services 12Viewing
AllServicesthe SameWay
13Summary
133 Web Services and Service-Oriented Architectures 15
Service-Oriented Architecture Overview 17
Services 17
Connections 18
The Architecture inSOA 18 Web Services
Explained
19History
of Web ServicesSpecification
19Web Services
Specifications
22The
Opportunity
andImportance
ofStandardizedSemanticVocabularies 29
Service-OrientedArchitecture
Explained
29Relationship
of Web Services and SOA 30Identificationand
Design
of Services 30Service-Oriented Architecture 31
4 Cloud
Computing
35Blurring
of Internal and External Services 37Organizations
ofAny
Size Can Use aService-OrientedArchitecture withCloud
Computing
38The Cloud 39
Types
of Clouds 41Categories
ofCloud Providers 42Summary
44Part II
Technical Forces
Driving
theAdoption
of WebServices,Service-Oriented Architectures,and Cloud
Computing
455 Technical Forces
Driving
theAdoption
ofWeb Services 47
Force Field
Analysis
Overview 48Adopting
Standard Data Element Definitions 50Adopting
aStandard Communications Protocol 51Adopting
Web Services 52Summary
546 Technical Forces
Driving
theAdoption
ofSOA 55
Adopting
Standard,
Enterprise-Wide
Software 56Adopting
anObject Request
Broker 57Adopting
anEnterprise
Data Warehouse 59Adopting
anEnterprise
ServiceBus 62Message
Routers 62Adapters
63Adopting
aService-Oriented Architecture 67Summary
707 Technical Forces
Driving
theAdoption
ofCloud
Computing
71Adopting
Software as a Service(SaaS) 72Adopting
Platformas a Service(PaaS)
74Adopting
Service-OrientedArchitecture withCloud
Computing
76Contents vii
Part III
Managing Change
Needed for WebServices,Service-OrientedArchitectures, and Cloud
Computing
818
Change
Issues 83Change
85Technical
Change
IssuesDiminishing
85 ResistancetoChange
85 Forms of Resistance 88Lack of
Training/Understanding
89Power of Internal
"Expert"
89Inertia—Why
Change?
90Feeling
that JobsMay
Be Threatened 90Not Invented Here 91
Our ProblemsAre
Special
91 Loss ofFamiliarity, Competence,
and Control 91Suggestions
forAddressing
Resistance toChange
92Selecting
theRight
People
92Usea Second Set of
Eyes
93Really
Listen 93Communicateat
Many
Levels 94Seek
Appropriate
Avenues toInvolvePeople
94Get Resistance Out in the
Open
94Ask for
Participation
and FormPartnerships
95 Some Resistance Scenarios 95 But It's SoComplicated!
95Guerilla Tactics 98
More Guerilla Tactics 100
The
Elephant
in the Room 101Worksheet for Resistance Issues and
Suggestions
102Consolidated
Analysis
forAdopting
an SOAwithCloudComputing
102Summary
1059
Tips
forManaging Change
IssuesDuring
Development
107Design
asLittleasPossible 108Buy
aSystem
orUse OneorMoreExisting
Services 108Buy
a Model orAdopt
aSemanticVocabulary
108Write as Little Code as Possible 109
Reduce
Project Scope
110Use aSecond Set of
Eyes
111Use SmallTeams 111
Summary
11210
Managing Change
with Incremental SOAAnalysis
113Tools 114
Force Field
Analysis
114Worksheet forResistance Issues and
Suggestions
114Decomposition
Matrix 115Five
Principles
for the Incremental SOAAnalysis
121Incremental SOA
Analysis
122 Business ProcessAnalysis
Lane 123 CandidateProject Analysis
Lane 124Deployment
Selection Lane 125Selecta
Project
with the Best Chance of Success 125Deployment
Lane 125Vocabulary Management
Lane 126Summary
127Part IV
Getting
Started with Web Services, Service-OrientedArchitectures,and Cloud
Computing
12911
Getting
Started with Web Services 131 All Web Services Connections Look the Same 132The
Impact
of Web Services 132Use of Web Services will
Likely Spur
Innovation 133Start
by Experimenting
with Web Services 133Use an ExternalService 133
Develop
anInternal Service 134Exchange
Data BetweenExisting Systems
135UseanESB 136
Staffing
Issues 137Likely Change
Issues 137Adapt Existing Systems
toUse Web Services 138Enterprise
Database Warehouse 138Connect
Components
toWeb Services 140 AdditionalSystems
141Staffing
Issues 142Contents
ixVision of the Future 142
Summary
14312
Getting
Startedwith Service-OrientedArchitectures 145Establisha Service-Oriented Architecture 146
Design
Considerations 146Staffing
Issues 148Likely Change
Issues 149What If
Things
Are NotGoing
as Planned? 150The Data Warehouse Was
Growing
Much FasterthanExpected
150The
Response
Time of the ServicesProvidedby
an InternalSystem
WasInadequate
151Putting
It AllTogether
157Services and Service-Oriented Architectures 157
SOA Governance 161
Summary
16213
Getting
Started with CloudComputing
163Expand
your Internal SOA toInclude External Services 164Staffing
Issues 164Likely Change
Issues 164Governance Considerations 165
Legal
Issues 165BusinessIssues 165
Technical Issues 165
Data CenterConsiderations 166
Availability
Issues 166Disaster
Recovery
Issues 167Examples
ofTechnical IssuesRelated toAvailability
167Failover
Options
forMessaging
and Databases 167 DatabaseAvailability Options
168Replication Options
forMessaging
and Databases 169Cloud Brokers 170
Should You Be Your Own Cloud Provider? 170
Summary
17014
Revisiting
the BusinessTrip
in the Not-Too-DistantFuture 171
Services forC. R.'sBusiness
Trip
171The Future for C. R.'s
Organization
174PartV
Reference Guide 177
15 SemanticVocabularies 179
Common SemanticVocabularies 180
Address XML 181
Computing
Environment XML 181Content
Syndication
XML 182Customer InformationXML 182
Electronic Data
Interchange (EDI)
XML 183Geospatial
XML 183Human XML 184
Localization XML 184
Math XML 184
Open Applications
Group Integration Specification (OAGIS)
185Open
Office XML ] 85Topic Maps
XML 185Trade XML 185
Translation XML 186
Universal Business
Language
(UBL) 186Universal Data Element Framework (UDEF) 186
Specific
SemanticVocabularies 186Accounting
XML 187Advertising
XML 187Astronomy
XML 187Building
XML 187Chemistry
XML 188 Construction XML 188 Education XML 188 Finance XML 188 Food XML 189 GovernmentXML 189 Healthcare XML 190 Human Resources (HR)XML 190 Instruments XML 190 Insurance XML 191Legal
XML 191Manufacturing
XML 192 News XML 192Oil and Gas XML 193
Contents xi
Physics
XML 193Publishing
XML 193 Real Estate XML 194 Telecommunications XML 194 TravelXML 194 16Terminology
195Adapters
198Agents
198Analytics
198Application Programming
Interface (API) 198Application
Server 198Atomic Service 199
Big
Data 199Business
Intelligence
(Bl) 199Business Process Execution
Language
(BPEL) 199 Business ProcessModeling
Notation (BPMN) 200Business Process
Query Language (BPQL)
200Business Process
Specification
Schema (BPSS) 200Caching
200Cloud 200
Collaboration Protocol
Profile/Agreement
(CPP/A) 201Community
Cloud 201Composite
Service 201 CORBA 201 DataCleansing
201 Data Warehouse 202 DCOM 202 ebXMLRegistry
202Electronic Data
Interchange (EDI)
202Enterprise
Service Bus(ESB)
203extensible Access Control
Markup Language (XACML)
203 extensibleRights Markup Language
(XrML) 203 extensibleStylesheets Language
(XSL) 203Extract,
Transform,and Load(ETL) 203Failover 204
HTTP 204
Hybrid
Cloud 204Infrastructureas aService
(laaS)
204Internet Inter-ORBProtocol (HOP) 204
J SON 205 Load
Leveling
205Loosely Coupled
205Mapping
205Mashups
205Message
Router 205Meta-Object Facility (MOF)
206Middleware 206
Model Driven Architecture (MDA) 206
.NET 206
NoSQL Database Management
System
206Object Request
Broker(ORB) 207OMG Interface Definition
Language (IDL)
207 PartnerInterfaceProcess(PIP)
207Platformas aService(PaaS) 207
Public Cloud 207
Registry
208REgular LAnguage Description
for XML(RELAX)
208RELAX NG 208
Replication
208Representational
State Transfer(REST)
208Resource
Description
Framework(RDF)
209RosettaNet
Implementation
Framework(RNIF)
209Schematron 209
Security
AssertionMarkup Language
(SAML) 209Service 209
Service-Oriented Architecture (SOA) 209
Service
Provisioning Markup Language (SPML)
210SOAP 210
Softwareas aService (SaaS) 210
Tree
Regular
Expressions
for XML(TREX)
210Unified
Modeling Language
(UML) 211 Uniform Resource Identifier(URI) 211 Universal Data Model 211Universal
Description, Discovery,
andIntegration
(UDDI) 211 Virtual Private Cloud 211Web DistributedData
Exchange
(WDDX) 212Web Service
Endpoint
Definition (WSEL) 212Web Services
Component
Model 212Web Services Conversation
Language (WSCL)
212Contents xiii
Web Services
Experience
Language
(WSXL) 213Web ServicesFlow
Language
(WSFL) 213Web Services for Interactive
Applications (WSIA)
213Web Services for
Report
Portals (WSRP) 213 Web Services User Interface(WSUI) 214Workflow 214
XLANG 214
XMLCommon Biometric Format (XCBF) 214
XML
Encryption
214XML
Key Management Specification
(XKMS) 215XML
Linking
Language (XLink)
215XML
Namespaces
215XML Path
Language (XPath)
215 XML PointerLanguage
(XPointer) 215 XML Protocol(XMLP)
215XML Schema 216
XML
Signature
216XSL
Formatting Objects (XSL-FO)
216XSL Transformations