Introduction ................................................... xv
Part I. Overview of Web Services, Service-Oriented
Architecture, and Cloud Computing ............................... 1
1 A Business Trip in the Not-Too-Distant Future ................ 3
The Business Trip ............................................ 3
Summary ...................................................... 8
2 Information Technology Used for the Business Trip ............ 9
Keeping Track of Detailed Customer Data ..................... 10
Using Virtual Personal Assistants ........................... 10
Managing C.R.'s Business Trip ............................. 12
Augmenting C.R.'s Experiences ............................. 12
Commoditizing Services ...................................... 12
Viewing All Services the Same Way ........................... 13
Summary ..................................................... 13
3 Web Services and Service-Oriented Architectures ............. 15
Service-Oriented Architecture Overview ...................... 17
Services .................................................. 17
Connections ............................................... 18
The Architecture in SOA ................................... 18
Web Services Explained ...................................... 19
History of Web Services Specification ..................... 19
Web Services Specifications ............................... 22
The Opportunity and Importance of Standardized Semantic
Vocabularies .............................................. 29
Service-Oriented Architecture Explained ..................... 29
Relationship of Web Services and SOA ...................... 30
Identification and Design of Services ..................... 30
Service-Oriented Architecture ............................. 31
Summary ..................................................... 33
4 Cloud Computing ............................................. 35
Blurring of Internal and External Services .................. 37
Organizations of Any Size Can Use a Service-Oriented
Architecture with Cloud Computing ........................... 38
The Cloud ................................................... 39
Types of Clouds ............................................. 41
Categories of Cloud Providers ............................... 42
Summary ..................................................... 44
Part II. Technical Forces Driving the Adoption of Web
Services, Service-Oriented Architectures, and Cloud Computing .. 45
5 Technical Forces Driving the Adoption of Web Services ....... 47
Force Field Analysis Overview ............................... 48
Adopting Standard Data Element Definitions .................. 50
Adopting a Standard Communications Protocol ................. 51
Adopting Web Services ....................................... 52
Summary ..................................................... 54
6 Technical Forces Driving the Adoption of SOA ................ 55
Adopting Standard, Enterprise-Wide Software ................. 56
Adopting an Object Request Broker ........................... 57
Adopting an Enterprise Data Warehouse ....................... 59
Adopting an Enterprise Service Bus .......................... 62
Message Routers ........................................... 62
Adapters .................................................. 63
Adopting a Service-Oriented Architecture .................... 67
Summary ..................................................... 70
7 Technical Forces Driving the Adoption of Cloud Computing .... 71
Adopting Software as a Service (SaaS) ....................... 72
Adopting Platform as a Service (PaaS) ....................... 74
Adopting Service-Oriented Architecture with Cloud
Computing ................................................... 76
Summary ..................................................... 79
Part III. Managing Change Needed for Web Services, Service-
Oriented Architectures, and Cloud Computing .................... 81
8 Change Issues ............................................... 83
Change ...................................................... 85
Technical Change Issues Diminishing ......................... 85
Resistance to Change ........................................ 85
Forms of Resistance ......................................... 88
Lack of Training/Understanding ............................ 89
Power of Internal "Expert" ................................ 89
Inertia—Why Change? ....................................... 90
Feeling that Jobs May Be Threatened ....................... 90
Not Invented Here ......................................... 91
Our Problems Are Special .................................. 91
Loss of Familiarity, Competence, and Control .............. 91
Suggestions for Addressing Resistance to Change ............. 92
Selecting the Right People ................................ 92
Use a Second Set of Eyes .................................. 93
Really Listen ............................................. 93
Communicate at Many Levels ................................ 94
Seek Appropriate Avenues to Involve People ................ 94
Get Resistance Out in the Open ............................ 94
Ask for Participation and Form Partnerships ............... 95
Some Resistance Scenarios ................................... 95
But It's So Complicated! .................................. 95
Guerilla Tactics .......................................... 98
More Guerilla Tactics .................................... 100
The Elephant in the Room ................................. 101
Worksheet for Resistance Issues and Suggestions ............ 102
Consolidated Analysis for Adopting an SOA with Cloud
Computing .................................................. 102
Summary .................................................... 105
9 Tips for Managing Change Issues During Development ......... 107
Design as Little as Possible ............................... 108
Buy a System or Use One or More Existing Services ........ 108
Buy a Model or Adopt a Semantic Vocabulary ............... 108
Write as Little Code as Possible ........................... 109
Reduce Project Scope ....................................... 110
Use a Methodology .......................................... 110
Use a Second Set of Eyes ................................... 111
Use Small Teams ............................................ 111
Summary .................................................... 112
10 Managing Change with Incremental SOA Analysis .............. 113
Tools ...................................................... 114
Force Field Analysis ..................................... 114
Worksheet for Resistance Issues and Suggestions .......... 114
Decomposition Matrix ..................................... 115
Five Principles for the Incremental SOA Analysis ........... 121
Incremental SOA Analysis ................................... 122
Business Process Analysis Lane ........................... 123
Candidate Project Analysis Lane .......................... 124
Deployment Selection Lane ................................ 125
Select a Project with the Best Chance of Success ......... 125
Deployment Lane .......................................... 125
Vocabulary Management Lane ............................... 126
Summary .................................................... 127
Part IV. Getting Started with Web Services, Service-Oriented
Architectures, and Cloud Computing ............................ 129
11 Getting Started with Web Services .......................... 131
All Web Services Connections Look the Same ................. 132
The Impact of Web Services ................................. 132
Use of Web Services will Likely Spur Innovation ............ 133
Start by Experimenting with Web Services ................... 133
Use an External Service .................................. 133
Develop an Internal Service .............................. 134
Exchange Data Between Existing Systems ................... 135
UseanESB ................................................. 136
Staffing Issues .......................................... 137
Likely Change Issues ..................................... 137
Adapt Existing Systems to Use Web Services ................. 138
Enterprise Database Warehouse ............................ 138
Connect Components to Web Services ....................... 140
Additional Systems ....................................... 141
Staffing Issues .......................................... 142
Likely Change Issues ..................................... 142
Vision of the Future ....................................... 142
Summary .................................................... 143
12 Getting Started with Service-Oriented Architectures ........ 145
Establish a Service-Oriented Architecture .................. 146
Design Considerations .................................... 146
Staffing Issues .......................................... 148
Likely Change Issues ..................................... 149
What If Things Are Not Going as Planned? ................... 150
The Data Warehouse Was Growing Much Faster than
Expected ................................................. 150
The Response Time of the Services Provided by an
Internal System Was Inadequate ........................... 151
Putting It All Together .................................. 157
Services and Service-Oriented Architectures ................ 157
SOA Governance ............................................. 161
Summary .................................................... 162
13 Getting Started with Cloud Computing ....................... 163
Expand your Internal SOA to Include External Services ...... 164
Staffing Issues .......................................... 164
Likely Change Issues ..................................... 164
Governance Considerations .................................. 165
Legal Issues ............................................. 165
Business Issues .......................................... 165
Technical Issues ......................................... 165
Data Center Considerations ................................. 166
Availability Issues ...................................... 166
Disaster Recovery Issues ................................. 167
Examples of Technical Issues Related to Availability ....... 167
Failover Options for Messaging and Databases ............. 167
Database Availability Options ............................ 168
Replication Options for Messaging and Databases .......... 169
Cloud Brokers .............................................. 170
Should You Be Your Own Cloud Provider? ..................... 170
Summary .................................................... 170
14 Revisiting the Business Trip in the Not-Too-Distant
Future ..................................................... 171
Services for C.R.'s Business Trip .......................... 171
The Future for C.R.'s Organization ......................... 174
Summary .................................................... 175
Part V. Reference guide ....................................... 177
15 Semantic Vocabularies ...................................... 179
Semantic Vocabularies .................................... 180
Address XML .............................................. 181
Computing Environment XML ................................ 181
Content Syndication XML .................................. 182
Customer Information XML ................................. 182
Electronic Data Interchange (EDI) XML .................... 183
Geospatial XML ........................................... 183
Human XML ................................................ 184
Localization XML ......................................... 184
Math XML ................................................. 184
Open Applications Group Integration Specification
(OAGIS) .................................................. 185
Open Office XML .......................................... 185
Topic Maps XML ........................................... 185
Trade XML ................................................ 185
Translation XML .......................................... 186
Universal Business Language (UBL) ........................ 186
Universal Data Element Framework (UDEF) .................. 186
Specific Semantic Vocabularies ............................. 186
Accounting XML ........................................... 187
Advertising XML .......................................... 187
Astronomy XML ............................................ 187
Building XML ............................................. 187
Chemistry XML ............................................ 188
Construction XML ......................................... 188
Education XML ............................................ 188
Finance XML .............................................. 188
Food XML ................................................. 189
Government XML ........................................... 189
Healthcare XML ........................................... 190
Human Resources (HR) XML ................................... 190
Instruments XML ............................................ 190
Insurance XML .............................................. 191
Legal XML .................................................. 191
Manufacturing XML .......................................... 192
News XML ................................................... 192
Oil and Gas XML ............................................ 193
Photo XML .................................................. 193
Physics XML .............................................. 193
Publishing XML ........................................... 193
Real Estate XML .......................................... 194
Telecommunications XML ................................... 194
Travel XML ............................................... 194
16 Terminology ................................................ 195
Adapters ................................................... 198
Agents ..................................................... 198
Analytics .................................................. 198
Application Programming Interface (API) .................... 198
Application Server ......................................... 198
Atomic Service ............................................. 199
Big Data ................................................... 199
Business Intelligence (BI) ................................. 199
Business Process Execution Language (BPEL) ................. 199
Business Process Modeling Notation (BPMN) .................. 200
Business Process Query Language (BPQL) ..................... 200
Business Process Specification Schema (BPSS) ............... 200
Caching .................................................... 200
Cloud ...................................................... 200
Collaboration Protocol Profile/Agreement (CPP/A) ........... 201
Community Cloud ............................................ 201
Composite Service .......................................... 201
CORBA ...................................................... 201
Data Cleansing ............................................. 201
Data Warehouse ............................................. 202
DCOM ....................................................... 202
ebXML Registry ............................................. 202
Electronic Data Interchange (EDI) .......................... 202
Enterprise Service Bus (ESB) ............................... 203
extensible Access Control Markup Language (XACML) .......... 203
extensible Rights Markup Language (XrML) ................... 203
extensible Stylesheets Language (XSL) ...................... 203
Extract, Transform, and Load (ETL) ......................... 203
Failover ................................................... 204
HTTP ....................................................... 204
Hybrid Cloud ............................................... 204
Infrastructure as a Service (IaaS) ......................... 204
Internet Inter-ORB Protocol (IIOP) ......................... 204
Java API for XML Parsing (JAXP) ............................ 204
JSON ....................................................... 205
Load Leveling .............................................. 205
Loosely Coupled ............................................ 205
Mapping .................................................... 205
Mashups .................................................... 205
Message Router ............................................. 205
Meta-Object Facility (MOF) ................................. 206
Middleware ................................................. 206
Model Driven Architecture (MDA) ............................ 206
.NET ....................................................... 206
NoSQL Database Management System ........................... 206
Object Request Broker (ORB) ................................ 207
OMG Interface Definition Language (IDL) .................... 207
Partner Interface Process (PIP) ............................ 207
Platform as a Service (PaaS) ............................... 207
Public Cloud ............................................... 207
Registry ................................................... 208
REgular LAnguage Description for XML (RELAX) ............... 208
RELAX NG ................................................... 208
Replication ................................................ 208
Representational State Transfer (REST) ..................... 208
Resource Description Framework (RDF) ....................... 209
RosettaNet Implementation Framework (RNIF) ................. 209
Schematron ................................................. 209
Security Assertion Markup Language (SAML) .................. 209
Service .................................................... 209
Service-Oriented Architecture (SOA) ........................ 209
Service Provisioning Markup Language (SPML) ................ 210
SOAP ....................................................... 210
Software as a Service (SaaS) ............................... 210
Tree Regular Expressions for XML (TREX) .................... 210
Unified Modeling Language (UML) ............................ 211
Uniform Resource Identifier (URI) .......................... 211
Universal Data Model ....................................... 211
Universal Description, Discovery, and Integration (UDDI) ... 211
Virtual Private Cloud ...................................... 211
Web Distributed Data Exchange (WDDX) ....................... 212
Web Service Endpoint Definition (WSEL) ..................... 212
Web Services Component Model ............................... 212
Web Services Conversation Language (WSCL) .................. 212
Web Services Description Language (WSDL) ................... 212
Web Services Experience Language (WSXL) .................... 213
Web Services How Language (WSFL) ........................... 213
Web Services for Interactive Applications (WSIA) ........... 213
Web Services for Report Portals (WSRP) ..................... 213
Web Services User Interface (WSUI) ......................... 214
Workflow ................................................... 214
XLANG ...................................................... 214
XML Common Biometrie Format (XCBF) ......................... 214
XML Encryption ............................................. 214
XML Key Management Specification (XKMS) .................... 215
XML Linking Language (XLink) ............................... 215
XML Namespaces ............................................. 215
XML Path Language (XPath) .................................. 215
XML Pointer Language (XPointer) ............................ 215
XML Protocol (XMLP) ........................................ 215
XML Schema ................................................. 216
XML Signature .............................................. 216
XSL Formatting Objects (XSL-FO) ............................ 216
XSL Transformations (XSLT) ................................. 216
XQuery ..................................................... 216
Bibliography .................................................. 217
Index ......................................................... 219
|