
作为现代服务科学的奠基石,服务计算已成为一项桥接商业服务与信息技术服务的跨学科的科学技术。本书提出了对现代服务业进行创新研究的独到见解,系统展现了服务计算领域的创新型研究成果与解决问题的方法,如以服务为导向的架构、商业咨询方法与工具、商业流程建模、转型、集成与管理等方面的创新型研究成果等。揭示了如何利用信息服务与计算技术来有效地创建、营运与管理商业服务,介绍了服务创新研究中的一些主要解决方案架构、支撑技术和创新型研究方法。书中展示的服务创新研究的生命周期包括商业分解、服务建模、服务创建、服务实现、服务诠释、服务部署、服务搜索、服务组合、服务提供、服务合作、服务监测、服务优化以及服务管理。
本书的第一作者为全球服务计算学科的创始人和领导者,因此本书具有很高的权威性及参考价值。读者可从本书了解服务计算在SOA与Web服务方面的研究方向,从而有效地创建、营运与管理商业服务。本书可作为高等院校计算机科学与工程、信息技术、电子商务、工业工程、自动化、商业管理等专业的专业参考书,同时也是科研机构及信息技术公司的从业人员必备参考。
Services Computing has become a cross-discipline subject that covers the science and technology of bridging the gap between Business Services and IT Services. Its most recent enabling technology is Web services centered on Service-Oriented Architecture (SOA). This book depicts an overall picture of the state-of-the-art of the field. A comprehensive set of innovative research results and solution methods is described and discussed, including business componentization, services modeling, services creation, services realization, services annotation, services deployment, services discovery, services composition, services delivery, service-to-service collaboration, services monitoring, services optimization, services management, business consulting methodology and utilities, business process modeling, transformation, integration, and management.
What Is the Uniqueness of This Book?
This book introduces innovative ideas and solutions based on existing key techniques and industry standards in the field of Services Computing. In particular, this book illustrates Services Computing as an emerging interdisciplinary science and engineering subject bridging the gap between business/application services and IT services. It presents a lifecycle view of modern services industry, discusses up-to-date innovative research directions and industry solutions in the domain of Services Computing. It explains how to effectively and efficiently establish, operate, and manage business and application services using Services Computing, and it also guides research directions of Services Computing.
There have been numerous publications in the market regarding Web services and Service-Oriented Architecture from specifications and standards perspectives. To our knowledge, however, this book is the first that provides a systematic view of SOA solutions and SOA services to enable the lifecycle of modernized services businesses and applications. In our view, Services Computing is not merely a technical direction; instead, it is an interdisciplinary area aiming to bridge the gap between IT and business. Therefore, it is not only necessary, but also critical to consider Services Computing from strategic point of view. Moreover, Service-Oriented Computing is just a pure technology fraction of Services Computing that also includes services consulting methodologies, services design and service delivery, as well as services maintenance and management.
As for implementation, there have emerged a number of industry standards and specifications for Web services, such as Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), Universal Description, Discovery, and Integration (UDDI), Business Process Execution Language for Web Services (BPEL4WS). However, from our point of view, these existing specifications are just examples of infrastructure enabling technologies for Services Computing environment. With the development of Services Computing, these specifications and technologies will continuously be evolving into their next generation or be replaced by new technologies and standards.
Throughout this book, instead of repeating the existing specifications, we concentrate on introducing innovative frameworks and methods on how to leverage related technologies to address real business challenges. The existing technologies are used as examples to study the state-of-the-art of the field and can be used as starting points for further innovations. Along with the newly introduced ideas in this book, the present enabling technologies provide a comprehensive framework that can be used to construct domain-specific SOA solutions. It should be noted that the existing technologies may have to be adjusted, extended, and customized in accordance with particular execution contexts and business requirements.
Finally, this is a foresighted book intended to spur researchers, practitioners, and students into further explorations and investigations in the field of Services Computing. As SOA and services engineering become mainstream, there are numerous efforts underway in both academia and industry, all of which deliver concepts and technologies in the same or similar fashion. This book aims to guide readers to grasp the foundations and state-of-the-art developments in the field of Services Computing.
Who Should Read This Book?
Researchers and students
The audience first includes researchers, graduate students, and senior undergraduates who seek a systemic introduction to the key technologies and research innovations in the field of Services Computing. This book can be used as an introductory textbook, advanced undergraduate textbook, graduate textbook, continuing education textbook (e.g., for executive MBA), or supplemental reading materials in classrooms.
In addition, this book can be used as a reference book on advanced technologies for a set of existing courses such as Modern Software Engineering, Web Engineering, Web Technologies, Advanced Software Engineering Methodologies, Advanced Software Architecture, and so on. Targeting departments include Department of Computer Science, Department of Industrial Engineering, Department of Business Management, Department of Automation, and Department of Management of Information System.
This book is organized in a way that is suitable for students to learn the Services Computing concepts and technologies step by step. It is written in a way that it can be used as a classroom textbook, as well as a self-study reference book.
Engineers and managers
As Services Computing is being widely accepted by the business world, practitioners who are interested in building value-added services or solutions based on SOA will become suitable audiences. Companies that either develop software using SOA or intend to introduce SOA and Web services in business could use this book as a reference book for their software engineers, IT managers, business managers, salesmen, and IT and business executives.
Outline of This Book
Part 1: Foundations of Services Computing
This part introduces core techniques of Web services modeling, registry, and discovery. SOA paradigm is discussed, along with SOA solution architecture based on industry best practices. Current SOA and Web services standard stack is also presented. Advanced techniques are introduced including multi-dimensional services modeling, dynamic services invocation, federated services discovery, services relationship modeling, and solution-level Quality of Service (QoS) in SOA.
Part 2: Realization of Services Computing
This part introduces services realization technologies from four perspectives: requirements-driven services composition, services value chain collaboration, business process management and integration, as well as business grid.
Part 3: Services Delivery and Services Engineering
This part introduces technologies and methodologies for services delivery and engineering from four perspectives: project-based business performance management, service-oriented business consulting methodology, end-to-end services delivery platform and methodology, as well as software as services and services as software.
Acknowledgements
All the authors would like to acknowledge the invaluable cooperation of many collaborators who have been involved in the research projects in the past years. Those projects served as a basis for some research findings that underlie several of the ideas discussed in this book.
Liang-Jie (LJ) Zhang would like to send his sincere appreciation to Fausto Bernardini for his sturdy support and insightful directions. Special thanks also go to his management team: Robert Morris, Alain Azagury, Manoj Kumar, and David Cohn.
LJ would like to send special thanks to his previous collaborators in the past years: Henry Chang, Tian Chao, Jen-Yao Chung, Bing Li, Haifei Li, Yu Long, John Y. Sayah, Jing Min Xu, Shun Xiang Yang, Qun Zhou, and Ying Nan Zuo.
LJ would also like to appreciate his IBM SOA Solution Stack core team members for their insightful discussions: Ali Arsanjani, Abdul Allam, Kishore Channabasavaiah, and Michael Ellis. He would like to acknowledge the technical advice from Kerrie Holley, Ray Harishankar, George Galambos, and Shankar Kalyana during the past SOA projects, as well as valuable technical discussions with Sridhar Iyengar and Ed Kahan.
Finally, LJ would like to send his special thanks to Cesar A. Gonzales, Maria Azua, and Daniel Sturman for their invaluable encouragement and advice over the years.
Jia Zhang would like to send special thanks to Dr. Raimund K. Ege for his invaluable support.
The authors would also like to thank Annie Wang for helping proofreading the book.
Of course, our most profound thanks go to our families for their continuous love and encouragement.
Part 1 Foundations of Services Computing
1 The Principle of Services and Services Computing 3
1.1 Introduction of Services 3
1.1.1 Definition of Services 3
1.1.2 Definition of Services System 4
1.2 Perspectives of Services Systems 6
1.2.1 Model 6
1.2.2 Technology 7
1.2.3 Architecture 7
1.2.4 Optimization 7
1.3 Services Lifecycle 7
1.3.1 Phase 1: Consulting and Strategic Planning 8
1.3.2 Phase 2: Services Engagement 8
1.3.3 Phase 3: Services Delivery 8
1.3.4 Phase 4: Services Operation 9
1.3.5 Phase 5: Services Billing 9
1.3.6 Phase 6: Services Management 9
1.4 Key Factors in a Services Lifecycle 9
1.4.1 Data/Information 9
1.4.2 Processes 10
1.4.3 People 10
1.4.4 Resources 10
1.4.5 Finance Factors 11
1.4.6 Knowledge and Skills 11
1.4.7 Innovation and Technology 11
1.5 Comparisons Between Services and Manufacturing Models 11
1.6 Business Services Lifecycle in Telecommunication Industry 13
1.7 Relationship Between IT and Non-IT Services in a Services Ecosystem 14
1.7.1 Overview of a Services Ecosystem 14
1.7.2 Comparisons Between IT and Non-IT Services 15
1.8 Emergence of Services Computing Technology 17
1.9 Summary 18
References 19
2 e-Business Evolution 20
2.1 Phases of e-Business Adoption 20
2.2 Top Trends of e-Business 22
2.3 IT Innovations to Flatten the World 22
2.3.1 Interactive Multimedia Services 22
2.3.2 Office Online Services 25
2.3.3 Globalization of Businesses 26
2.4 "Open" Trends for Technologies and Services Ecosystems 27
2.4.1 Open Standards 28
2.4.2 Open Sources 28
2.4.3 Open Architecture: Service-Oriented Architecture (SOA) 29
2.5 Debuts of New Service-Oriented Business Models 31
2.5.1 Services Modernization 31
2.5.2 Software as Services 32
2.5.3 Services as Software 33
2.6 New Discipline: Services Computing 34
2.7 Summary 35
References 36
3 Web Services Modeling 37
3.1 Basic Concept of Web Services 37
3.2 Modeling of a Web Service 38
3.2.1 Basic Concepts of WSDL Modeling 38
3.2.2 Web Services Communication Protocol: SOAP 41
3.2.3 Binding of WSDL to SOAP 44
3.2.4 Publishing a Web Service in Registry 45
3.2.5 Stateful Web Services Modeling 46
3.2.6 Web Services Interoperability 50
3.3 Modeling a Composite Web Service 50
3.3.1 Basic Concepts of BPEL 51
3.3.2 BPEL Basic Structure: via an Example 51
3.3.3 BPEL Key Elements 57
3.4 Three-Dimensional Web Services Modeling 59
3.5 Discussions on Web Services Modeling 60
3.6 Summary 62
References 62
4 Web Services Publishing and Discovery 64
4.1 Web Services Publishing 64
4.1.1 Public/Private UDDI Publishing 64
4.1.2 WSIL Publishing 65
4.1.3 UDDI Publishing vs. WSIL Publishing 67
4.2 Simple Web Services Discovery 67
4.2.1 Simple UDDI Search 68
4.2.2 Simple WSIL Search 70
4.2.3 Issues of the Simple UDDI/WSIL Search 70
4.3 UDDI Search Markup Language 71
4.3.1 USML Schema 72
4.3.2 Composite Search Options 74
4.3.3 Aggregation Operators 75
4.4 USML-Based Advanced UDDI Search Engine (AUSE) 76
4.4.1 AUSE Structure 77
4.4.2 AUSE-Based Search Process 78
4.5 WSIL-Oriented Dynamic Services Discovery Framework (DSDF) 80
4.5.1 Architecture of DSDF 80
4.5.2 DSDF Implementation 83
4.6 Federated Web Services Discovery Framework 83
4.6.1 Basic Ideas 83
4.6.2 Search Language 85
4.6.3 Comparison with Generic Web Search Engine 86
4.7 Discussions on Web Services Publishing and Discovery 87
4.8 Summary 88
References 88
5 Service-Oriented Architecture 89
5.1 Concept of Service-Oriented Architecture (SOA) 89
5.1.1 Triangular SOA Operational Model 89
5.1.2 Web Services-Based SOA 90
5.2 Services Invocation 91
5.2.1 Simple Services Invocation 91
5.2.2 Introduction to MetaWSDL 93
5.2.3 MetaWSDL Publishing 97
5.2.4 MetaWSDL-Based Advanced Services Invocation Framework 98
5.3 SOA: Bridging Business and IT Architecture 99
5.4 SOA Solution Lifecycle 101
5.4.1 Modeling 102
5.4.2 Development 103
5.4.3 Deployment 103
5.4.4 Publishing 103
5.4.5 Discovery 104
5.4.6 Invocation 104
5.4.7 Composition 104
5.4.8 Collaboration 105
5.4.9 Monitoring and Management 105
5.5 Enterprise Service Bus (ESB) 106
5.6 SOA Reference Architecture (SOA-RA) 107
5.7 Discussions on SOA 111
5.8 Summary 111
References 112
6 Services Relationship Modeling 114
6.1 Introduction to Services Relationship Modeling 114
6.1.1 UDDI Specifications on Simple Relationships 115
6.1.2 Other Relationship Specification Languages 115
6.2 Web Services Relationship Language (WSRL) 117
6.2.1 Structure of a WSRL Document 117
6.2.2 WSRL Discussions 117
6.3 Layered Services Relationship Modeling 119
6.4 SOA-Based Relationship Modeling Language (SOA-RML) 120
6.4.1 Business Services Relationships at Business Entity Level 120
6.4.2 Business Services Relationships at Business Service Level 125
6.4.3 Layered Relationships Summary 127
6.5 SOA-RML-Enriched Services Registry 130
6.5.1 SOA-RML Schema 131
6.6 Discussions on SOA-Based Relationship Modeling 132
6.7 Summary 132
References 133
7 SOA and Web Services Standards 134
7.1 Introduction 134
7.2 Web Services Standard Stack 134
7.2.1 Transport 135
7.2.2 Messaging 137
7.2.3 Description/Publishing/Discovery 138
7.2.4 Quality of Service (QoS) 141
7.2.5 Service Composition 144
7.3 Industry-Specific Service-Oriented Standards 145
7.3.1 Electronics Industry 145
7.3.2 Insurance Industry 146
7.3.3 Telecommunication Industry 147
7.4 Generic SOA Solution Standards are Evolving 148
7.5 Discussions on SOA and Web Services Standards 149
7.6 Summary 149
References 150
8 Solution-Level Quality of Service in SOA 152
8.1 State-of-the-art of QoS on Web Services 152
8.2 SOA-QoS 153
8.2.1 Context-Aware QoS Model 153
8.2.2 Representation of QoS Model 154
8.2.3 QoS Data Management 157
8.2.4 Business Relationship Model 157
8.3 QoS Framework in an SOA Solution 158
8.3.1 QoS Framework Descriptions 158
8.3.2 Relationships Between Constructs in QoS Framework 161
8.4 Data Architecture Framework 162
8.4.1 Data Architecture Framework Descriptions 162
8.4.2 Relationships Between Constructs in Data Architecture 164
8.5 Modeling the Key Elements in QoS Management 165
8.5.1 Modeling of Resources 165
8.5.2 Modeling the QoS Assurance Process 167
8.6 Discussions on QoS in SOA 169
8.7 Summary 169
References 169
Part 2 Realization of Services Computing
9 Requirements Driven Services Composition 173
9.1 Introduction 173
9.2 Business Requirements Modeling 174
9.2.1 Target Components and Environment 175
9.2.2 Asset Lifecycle Management 177
9.2.3 Project Management 177
9.2.4 Finance Management 178
9.2.5 Representation of Business Requirements Modeling 178
9.3 Requirements Driven Services Discovery 180
9.4 Optimization for Business Services Composition 183
9.4.1 Formalization of Business Services Composition 183
9.4.2 Optimization Algorithms for Business Services Composition 188
9.5 Service Integration Framework 190
9.5.1 Services Integration Procedure 191
9.6 Discussions on Services Composition 192
9.7 Summary 193
References 194
10 Services Value Chain Collaboration 195
10.1 Value Chain Collaboration 195
10.1.1 Example of Business Collaboration 195
10.1.2 Inter- and Intra-Enterprise Collaboration 197
10.1.3 Web Services Based Value Chain Collaboration 199
10.2 Extended Business Collaboration (eBC) Model 199
10.2.1 Introduction to Business Resources 199
10.2.2 Annotated Business HyperChain Technique 201
10.2.3 eBC to WS-Collab 201
10.3 Web Services Collaboration (WS-Collab) Resources 202
10.3.1 WS-Collab Resources 202
10.3.2 WS-Collab Resource Specifications 204
10.3.3 WS-Collab Ontology on Relationships Between Resources 205
10.4 Web Services Collaboration Message Primitives 211
10.4.1 WS-Collab Primitive 211
10.4.2 WS-Collab Message Structure 213
10.5 Web Services Collaboration Construct 215
10.6 Web Services Collaborative Exchange Protocol 217
10.7 WS-Collaboration Realization 219
10.7.1 Annotation Data Generation Process 219
10.7.2 HyperChain Manager 220
10.8 Relationships with Industry Standards 221
10.9 Discussions on Service-Based Business Collaboration 222
10.10 Summary 222
References 222
11 Business Process Management and Integration 224
11.1 Business Process Modeling 224
11.2 SOA-Based Business Process Management 225
11.2.1 Top-down Business Process Management 226
11.2.2 Bottom-up Business Process Management 227
11.3 Bridging Gap Between Business Modeling and IT Implementation 228
11.3.1 Business Process Modeling from Business Analysts 228
11.3.2 Business Process Re-engineering in SOA 229
11.3.3 Generic Guidance for Re-engineering Business Process Modeling in SOA 230
11.3.4 Methodology for Re-engineering Business Process Models in SOA 230
11.4 Flexible Business Process Integration in SOA 234
11.4.1 Integration Ontology 234
11.4.2 Integration Manager 238
11.4.3 Lifecycle of an Integration Activity 239
11.4.4 Business Process Monitoring 240
11.5 Discussions on Business Process Management and Integration 241
11.6 Summary 242
References 242
12 Business Grid 243
12.1 Grid Computing 243
12.2 Open Grid Services Architecture (OGSA) 244
12.2.1 Distributed Resource Sharing Using OGSA 245
12.3 Business Grid 248
12.3.1 Enhancing OGSA with Advanced Web Services Technologies 248
12.3.2 Concept of Business Grid 249
12.3.3 Business Grid Solution Framework 250
12.4 Logical Grid Infrastructure 251
12.4.1 Packaged Application Grid 251
12.4.2 Business Grid Middleware 252
12.4.3 Business Process Grid 253
12.5 Business Grid Service Development and Invocation 254
12.6 Discussions on Business Grid 255
12.7 Summary 255
References 255
Part 3 Service Delivery and Services Engineering
13 Enterprise Modeling 259
13.1 Introduction 259
13.1.1 Dynamics of Services Ecosystem 259
13.1.2 Requirements from Decision Makers 260
13.2 Methodologies for Enterprise Modeling 261
13.2.1 Balanced Scorecard and Strategy Map 261
13.2 2 Component Business Modeling Circle 264
13.2.3 Enterprise Architecture 269
13.2.4 Relationships Between Enterprise Models and Business Process Transformation Model 272
13.3 Discussions on Enterprise Modeling 273
13.4 Summary 273
References 274
14 Project Based Enterprise Performance Management 275
14.1 Changes of Enterprise Operational Views 275
14.2 Overview of Project Management 277
14.3 Enterprise Performance Management (EPM) 279
14.3.1 Concept of EPM 279
14.3.2 EPM Framework 279
14.3.3 From Project Management to Enterprise Portfolio Management 280
14.4 Service-Oriented Enterprise Project Management 281
14.4.1 EPM toward SOA 281
14.4.2 WS-EPM Framework 282
14.4.3 WS-EPM Operations 284
14.4.4 Formalization of WS-EPM Methodology 285
14.5 WS-EPM Common Services 286
14.5.1 WS-EPM Resource Management Facility 286
14.5.2 WS-EPM Utilities 290
14.6 WS-EPM Workspace 292
14.7 Discussions on SOA-Based EPM 294
14.8 Discussions on Enterprise Portfolio Management 294
14.9 Summary 295
References 295
15 Service-Oriented Business Consulting Methodology 296
15.1 Vision of Services System 296
15.2 The Traditional Business Consulting Methods 298
15.2.1 Traditional Consulting Method for Strategic Change 298
15.2.2 Traditional Consulting Method for IT Strategic Plan 298
15.2.3 Shortcomings of Traditional Methods 299
15.3 Modeling of Services Ecosystem 299
15.4 Service-Oriented Business Consulting Method 301
15.4.1 Gap Analysis over SOA 301
15.4.2 Identification of Transformation Initiatives 303
15.4.3 Value Chain Analysis 304
15.4.4 Business Case Analysis 305
15.4.5 Portfolio Analysis and Transition Planning 306
15.4.6 Service-Oriented Project Management and Collaboration 307
15.4.7 IT Service Management 307
15.5 Discussion on SO-BCM 308
15.6 Summary 308
Reference 308
16 End-to-End Services Delivery Platform and Methodology 310
16.1 Introduction to Services Delivery 310
16.2 Changes of Services Delivery Mechanisms 310
16.3 An SOA-Based Services Delivery Platform 312
16.3.1 Layered View of the Services Delivery Platform 312
16.3.2 Collaboration View of the Services Delivery Platform 314
16.3.3 Key Services Needed in the Services Delivery Platform 317
16.4 The End-to-End Services Delivery Methodology 322
16.4.1 Services Delivery Readiness Phase 323
16.4.2 Services Delivery Creation Phase 324
16.4.3 Services Delivery Operation Phase 326
16.5 Discussions on the Services Delivery Methodology and Platform 327
16.6 Summary 328
References 328
17 Software as Services and Services as Software 330
17.1 Software as Services 330
17.1.1 Next Generation of Internet: Web 2.0 331
17.1.2 A Case Study of Web 2.0 Service Model-Service Mash-up 334
17.1.3 New Business Models Through Software as Services 335
17.1.4 Tips for Software as Services Model 336
17.2 Services as Software 336
17.3 Successful Business Cases 337
17.3.1 Healthcare Under Transformation 338
17.3.2 Innovative Store 340
17.3.3 Personalized Insurance Premiums 340
17.3.4 Business Performance Transformation Services 342
17.4 Summary 343
References 343
Index 345