Web services allow new and improved ways for enterprise applications to communicate and integrate with each other over the Web and, as such, are having a profound effect on both the worlds of business and of software development.
The new edition of this bestselling book offers a comprehensive and up to date treatment of web services and Service Oriented Architecture (SOA), giving you all you need to know to gain a solid foundation in this area. Building upon the clear, accessible approach of the first edition, it provides a complete introduction to the concepts, principles, technology and standards of web services. The book also provides an in depth examination of good design and development practises for SOA applications in organisations.
A spiral approach to instruction helps readers build on and reinforce basic knowledge as the topics become more advanced.
Numerous examples which demonstrate the practical application of the theory are included.
Self-test questions, hints, tips and discussion topics feature throughout the book to support self-directed learning.
New to this edition
Two new chapters have been added on SOA modelling and Cloud Computing technology.
A comprehensive real-life case study containing numerous practical examples has been integrated and referenced throughout the entire book to give readers 'hands-on' insight into applying theory to practice, and enhance understanding of the key concepts.
Business Process Modelling Notation (BPMN), which is rapidly becoming an industry standard, is used throughout the book.
Discussion of software engineering issues related to implementing sound SOA applications is included.
Description of new standards, such as BPEL v2.0 is discussed.
A Companion Website (www.pearsoned.co.uk/papazoglou) offers detailed coding solutions available to download.
Comprehensive case study A.1 Overview of case study A.2 Background: Automotive supply chain A.3 Case study objectives A.4 SOA work plan stages A.5 Solution PART I Basics Chapter 1: Web Service and SOA Fundamentals 1.1 Introduction 1.2 The concept of software as service (SaaS) 1.3 Web services vs. Web-based applications 1.4 A more complete definition of Web services 1.5 Characteristics of Web services 1.6 Service interface and implementation 1.7 The service-oriented architecture 1.8 The Web services technology stack 1.9 Quality of service (QoS) 1.10 Web services interoperability 1.11 Web services versus components 1.12 RESTful services 1.13 Impact and shortcomings of Web services 1.14 Summary Review questions Exercises PART II Enabling Infrastructure Chapter 2: Distributed Computing Infrastructure 2.1 Distributed computing and Internet protocols 2.2 Middleware 2.3 The client server model 2.4 Inter-process communication 2.5 Synchronous forms of middleware 2.6 Asynchronous forms of middleware 2.7 Request/reply messaging 2.8 Message-oriented middleware 2.9 Transaction-oriented middleware 2.10 Enterprise application and e-Business integration 2.11 Summary of learning objectives Review questions Exercises Chapter 3: Brief Overview of XML 3.1 XML document structure 3.2 XML namespaces 3.3 Defining structure in XML documents 3.4 Reuse of XML schemas 3.5 Document navigation and transformation 3.6 Summary of learning objectives Review questions Exercises PART III Core functionality and standards Chapter 4: SOAP: Simple Object Access Protocol 4.1 Inter-application communication and wire protocols 4.2 SOAP as a messaging protocol 4.3 Structure of a SOAP message 4.4 SOAP communication model 4.5 Error handling in SOAP 4.6 Advantages and disadvantages of SOAP 4.7 Summary of learning objectives Review questions Exercises Chapter 5: Describing Web services 5.1 Why is service description needed? 5.2 WSDL: Web Services Description Language 5.3 Non-functional service descriptions 5.4 WSDL 1.1 vs WSDL 2.0 5.5 Summary of learning objectives Review questions Exercises Chapter 6: Registering and Discovering Services 6.1 The role of service registries 6.2 Service discovery 6.3 Universal Description, Discovery, and Integration 6.4 Summary of learning objectives Review questions Exercises PART IV Event notification and Service Oriented Architectures Chapter 7: Service Addressing and Notification 7.1 Referencing and addressing Web services 7.2 Web Services Notification 7.3 Summary of learning objectives Review questions Exercises Chapter 8: Service-Oriented Architectures 8.1 What is software architecture? 8.2 SOA revisited 8.3 Service roles in an SOA 8.4 Reliable messaging 8.5 The Enterprise Service Bus 8.6 The extended SOA 8.7 Summary of learning objectives Review questions Exercises PART V Service composition and transactions Chapter 9: Service Composition And Business Processes 9.1 Business processes and their management 9.2 Workflows 9.3 Business Process Management 9.4 Cross-Enterprise Business Processes 9.5 Service composition model 9.6 Service orchestration and choreography 9.7 WS-BPEL: The Business Process Execution Language 9.8 Web Services Choreography 9.9 Summary of learning objectives Review questions Exercises Chapter 10: Service Transactions 10.1 What is a transaction? 10.2 Distributed transactions 10.3 Nested transactions 10.4 Web service transactions 10.5 Web Service Coordination 10.6 Web service transaction types 10.7 Summary of learning objectives Review questions Exercises PART VI SOA security and policies Chapter 11: Securing SOA and Web Services 11.1 SOA and web services security considerations 11.2 Network-level security mechanisms 11.3 Application-level security mechanisms 11.4 Security topologies 11.5 XML security standards 11.6 Securing SOA and Web services 11.7 Summary of key points Review questions Exercises Chapter 12: Service policies 12.1 What are policies and why are they needed? 12.2 Types of policies 12.3 Service policy support standards 12.4 WS-Policy framework 12.5 Summary of learning objectives Review questions Exercises PART VII Service semantics and business protocols Chapter 13: Semantics and Web Services 13.1 The semantic interoperability problem 13.2 The role of metadata 13.3 Service metadata 13.4 Resource Description Framework 13.5 Richer schema languages 13.6 WS-MetadataExchange 13.7 Summary of learning objectives Review questions Exercises Chapter 14: Business Protocols and Standards 14.1 The supply-chain business ecosystem 14.2 Semantic problems at the business process level 14.3 Business standards and protocols 14.4 Vertical industry standards 14.5 Summary of learning objectives Review questions Exercises PART VIII SOA modeling, design and development Chapter 15: SOA-Based Application Modeling 15.1 The art of modeling 15.2 Business process modeling methodologies 15.3 Business process reference models 15.4 Business Process Modeling Notation 15.5 Summary of learning objectives Review questions Exercises Chapter 16: SOA Development Lifecycle 16.1 Unraveling the nature of SOA-based applications 16.2 Rationale for SOA-based application development 16.3 Typical SOA development pitfalls 16.4 Software development lifecycle 16.5 Elements of SOA-based applications 16.6 Best practices for developing SOA-based applications 16.7 Reference model for SOA development 16.8 Guiding principles of SOA application development 16.9 Overview of SOA development lifecycle 16.10 The SOA planning phase 16.11 The SOA analysis phase 16.12 The SOA design (specification) phase 16.13 The SOA construction phase 16.14 The SOA testing phase 16.15 The SOA provisioning phase 16.16 The SOA deployment phase 16.17 The SOA execution phase 16.18 The SOA management and monitoring phase 16.19 SOA governance 16.20 Summary of learning objectives Review questions Exercises PART IX Service Management Chapter 17: SOA and Web Service Management 17.1 Managing distributed systems 17.2 Enterprise management frameworks 17.3 Conceptual management architecture 17.4 Standard distributed management frameworks 17.5 Web services management 17.6 The Web Services Distributed Management initiative 17.7 Summary of learning objectives Review questions Exercises PART X Emerging trends Chapter 18: Cloud Computing 18.1 What is Cloud Computing? 18.2 SOA meets the Cloud 18.3 Virtualization 18.4 Multi-tenancy 18.5 Architecture model for Cloud Computing 18.6 Cloud security 18.7 Cloud service lifecycle 18.8 Cloud standards 18.9 Benefits and risks of Cloud Computing 18.10 Summary of learning objectives Review questions References Index