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. Key featuresA 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 editionTwo 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 studyA.1 Overview of case studyA.2 Background: Automotive supply chainA.3 Case study objectives A.4 SOA work plan stages A.5 Solution PART I BasicsChapter 1: Web Service and SOA Fundamentals1.1 Introduction1.2 The concept of software as service (SaaS)1.3 Web services vs. Web-based applications1.4 A more complete definition of Web services1.5 Characteristics of Web services 1.6 Service interface and implementation1.7 The service-oriented architecture 1.8 The Web services technology stack 1.9 Quality of service (QoS) 1.10 Web services interoperability1.11 Web services versus components1.12 RESTful services1.13 Impact and shortcomings of Web services1.14 SummaryReview questionsExercises PART II Enabling InfrastructureChapter 2: Distributed Computing Infrastructure2.1 Distributed computing and Internet protocols 2.2 Middleware2.3 The client? server model2.4 Inter-process communication2.5 Synchronous forms of middleware 2.6 Asynchronous forms of middleware 2.7 Request/reply messaging2.8 Message-oriented middleware 2.9 Transaction-oriented middleware2.10 Enterprise application and e-Business integration 2.11 Summary of learning objectivesReview questionsExercises Chapter 3: Brief Overview of XML3.1 XML document structure 3.2 XML namespaces3.3 Defining structure in XML documents3.4 Reuse of XML schemas 3.5 Document navigation and transformation 3.6 Summary of learning objectivesReview questionsExercises PART III Core functionality and standardsChapter 4: SOAP: Simple Object Access Protocol4.1 Inter-application communication and wire protocols4.2 SOAP as a messaging protocol4.3 Structure of a SOAP message 4.4 SOAP communication model4.5 Error handling in SOAP4.6 Advantages and disadvantages of SOAP4.7 Summary of learning objectivesReview questionsExercises Chapter 5: Describing Web services5.1 Why is service description needed?5.2 WSDL: Web Services Description Language5.3 Non-functional service descriptions5.4 WSDL 1.1 vs WSDL 2.05.5 Summary of learning objectivesReview questionsExercises Chapter 6: Registering and Discovering Services6.1 The role of service registries6.2 Service discovery6.3 Universal Description, Discovery, and Integration 6.4 Summary of learning objectivesReview questionsExercises PART IV Event notification and Service Oriented Architectures Chapter 7: Service Addressing and Notification7.1 Referencing and addressing Web services 7.2 Web Services Notification 7.3 Summary of learning objectivesReview questionsExercises Chapter 8: Service-Oriented Architectures8.1 What is software architecture? 8.2 SOA revisited8.3 Service roles in an SOA8.4 Reliable messaging 8.5 The Enterprise Service Bus 8.6 The extended SOA8.7 Summary of learning objectivesReview questionsExercises PART V Service composition and transactionsChapter 9: Service Composition And Business Processes9.1 Business processes and their management9.2 Workflows9.3 Business Process Management9.4 Cross-Enterprise Business Processes9.5 Service composition model9.6 Service orchestration and choreography 9.7 WS-BPEL: The Business Process Execution Language 9.8 Web Services Choreography9.9 Summary of learning objectivesReview questionsExercises Chapter 10: Service Transactions10.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 objectivesReview questionsExercises PART VI SOA security and policiesChapter 11: Securing SOA and Web Services11.1 SOA and web services security considerations 11.2 Network-level security mechanisms 11.3 Application-level security mechanisms 11.4 Security topologies11.5 XML security standards 11.6 Securing SOA and Web services 11.7 Summary of key pointsReview questionsExercises Chapter 12: Service policies12.1 What are policies and why are they needed? 12.2 Types of policies 12.3 Service policy support standards12.4 WS-Policy framework 12.5 Summary of learning objectivesReview questionsExercises PART VII Service semantics and business protocolsChapter 13: Semantics and Web Services13.1 The semantic interoperability problem13.2 The role of metadata 13.3 Service metadata13.4 Resource Description Framework 13.5 Richer schema languages13.6 WS-MetadataExchange13.7 Summary of learning objectivesReview questionsExercises Chapter 14: Business Protocols and Standards14.1 The supply-chain business ecosystem14.2 Semantic problems at the business process level14.3 Business standards and protocols 14.4 Vertical industry standards 14.5 Summary of learning objectivesReview questionsExercises PART VIII SOA modeling, design and developmentChapter 15: SOA-Based Application Modeling15.1 The art of modeling15.2 Business process modeling methodologies 15.3 Business process reference models 15.4 Business Process Modeling Notation 15.5 Summary of learning objectivesReview questionsExercises Chapter 16: SOA Development Lifecycle16.1 Unraveling the nature of SOA-based applications16.2 Rationale for SOA-based application development16.3 Typical SOA development pitfalls16.4 Software development lifecycle 16.5 Elements of SOA-based applications16.6 Best practices for developing SOA-based applications16.7 Reference model for SOA development 16.8 Guiding principles of SOA application development 16.9 Overview of SOA development lifecycle16.10 The SOA planning phase16.11 The SOA analysis phase 16.12 The SOA design (specification) phase 16.13 The SOA construction phase16.14 The SOA testing phase16.15 The SOA provisioning phase 16.16 The SOA deployment phase16.17 The SOA execution phase16.18 The SOA management and monitoring phase16.19 SOA governance 16.20 Summary of learning objectivesReview questionsExercises PART IX Service ManagementChapter 17: SOA and Web Service Management17.1 Managing distributed systems17.2 Enterprise management frameworks17.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 objectivesReview questionsExercises PART X Emerging trendsChapter 18: Cloud Computing18.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 lifecycle18.8 Cloud standards 18.9 Benefits and risks of Cloud Computing 18.10 Summary of learning objectivesReview questions ReferencesIndex