SOA and Web Services Interface Design

Book description

In SOA and Web Services Interface Design, data architecture guru James Bean teaches you how to design web service interfaces that are capable of being extended to accommodate ever changing business needs and promote incorporation simplicity. The book first provides an overview of critical SOA principles, thereby offering a basic conceptual summary. It then provides explicit, tactical, and real-world techniques for ensuring compliance with these principles. Using a focused, tutorial-based approach the book provides working syntactical examples - described by Web services standards such as XML, XML Schemas, WSDL and SOAP - that can be used to directly implement interface design procedures, thus allowing you immediately generate value from your efforts. In summary, SOA and Web Services Interface Design provides the basic theory, but also design techniques and very specific implementable encoded interface examples that can be immediately employed in your work, making it an invaluable practical guide to any practitioner in today's exploding Web-based service market.
  • Provides chapters on topics of introductory WSDL syntax and XML Schema syntax, taking take the reader through fundamental concepts and into deeper techniques and allowing them to quickly climb the learning curve.
  • Provides working syntactical examples - described by Web services standards such as XML, XML Schemas, WSDL and SOAP - that can be used to directly implement interface design procedures.
  • Real-world examples generated using the Altova XML Spy tooling reinforce applicability, allowing you to immediately generate value from their efforts.

Table of contents

  1. Cover Image
  2. Content
  3. Title
  4. Copyright
  5. Acknowledgments
  6. Chapter 1. SOA—A Common Sense Definition
    1. 1.1 Origins of SOA
    2. 1.2 A Definition for SOA
    3. 1.3 Consumers, Services, and Intermediaries
    4. 1.4 Messaging—The Means of Interaction Between Consumer and Services
    5. 1.5 SOA Capabilities
    6. 1.6 The Benefits of SOA
    7. Summary
  7. Chapter 2. Core SOA Principles
    1. 2.1 Loose Coupling
    2. 2.2 Interoperability
    3. 2.3 Reusability
    4. 2.4 Discoverability
    5. 2.5 Governance
    6. Summary
  8. Chapter 3. Web Services and Other Service Types and Styles
    1. 3.1 Web Services and SOAP
    2. 3.2 ReST Style Services
    3. 3.3 Legacy Services and APIs
    4. Summary
  9. Chapter 4. Data, the Missing Link
    1. 4.1 Data at Rest—Persistence
    2. 4.2 Data in Motion—Messaged Context
    3. Summary
  10. Chapter 5. Data Services
    1. 5.1 A Single Data at Rest Data Source
    2. 5.2 Multiple and Disparate Data at Rest Sources
    3. 5.3 Resolving Impedance with Data Services
    4. 5.4 CRUD-Based Data Services
    5. Summary
  11. Chapter 6. Transformation to Resolve Data Impedance
    1. 6.1 Transformation
    2. 6.2 Translation
    3. 6.3 Aggregation
    4. 6.4 Abstraction
    5. 6.5 Rationalization
    6. Summary
  12. Chapter 7. The Service Interface— Contract
    1. 7.1 Web Services Description Language–WSDL
    2. 7.2 XML Schemas–XSD
    3. 7.3 Extensible Markup Language
    4. Summary
  13. Chapter 8. Canonical Message Design
    1. 8.1 The Message is a Hierarchy
    2. 8.2 Top-Down Canonical Message Design
    3. 8.3 Model-Driven Interface Design
    4. Summary
  14. Chapter 9. The Enterprise Taxonomy
    1. 9.1 Focus on Common Business Language for Discovery
    2. 9.2 Broadening and Extending the Taxonomy
    3. 9.3 Registry Entries and Discovery
    4. Summary
  15. Chapter 10. XML Schema Basics
    1. 10.1 Elements
    2. 10.2 Attributes
    3. 10.3 simpleTypes
    4. 10.4 complexTypes
    5. 10.5 Groups
    6. 10.6 Namespaces
    7. 10.7 import, include
    8. Summary
  16. Chapter 11. XML Schema Design Patterns
    1. 11.1 Complextype Patterns
    2. 11.2 Global Declaration Patterns
    3. 11.3 Local Declaration Patterns
    4. 11.4 Reusable Schema Patterns
    5. 11.5 Substitution Group Patterns
    6. Summary
  17. Chapter 12. Schema Assembly and Reuse
    1. 12.1 Considerations for Schema Reuse
    2. 12.2 Namespaces
    3. 12.3 Schema Reuse by Reference and Assembly
    4. 12.4 Limitations and Complexities
    5. Summary
  18. Chapter 13. The Interface and Change
    1. 13.1 Schema Extension
    2. 13.2 Schema Versioning
    3. 13.3 Change and Capabilities of the ESB and WSM
    4. Summary
  19. Chapter 14. Service Operations and Overloading
    1. 14.1 Service Granularity
    2. 14.2 Scoping of Service Operations
    3. 14.3 Operations Overloading
    4. Summary
  20. Chapter 15. Selective Data Fragmentation
    1. 15.1 Avoiding a Complex or Non-Deterministic Content Model
    2. Summary
  21. Chapter 16. Update Transactions
    1. 16.1 Update Transactions and State
    2. 16.2 Request-Reply Message Exchange Patterns
    3. 16.3 Complexities of Fire and Forget for Updates
    4. Summary
  22. Chapter 17. Fixed-Length Transactions
    1. Summary
  23. Chapter 18. Document Literal Interfaces
    1. Summary
  24. Chapter 19. Performance Analysis and Optimization Techniques
    1. 19.1 Complexity of Consumer and Service Behavior
    2. 19.2 Performance of the Enterprise Services Bus or Message Backbone
    3. 19.3 Security
    4. 19.4 Complexity and Size of the Message
    5. Summary
  25. Chapter 20. Error Definition and Handling
    1. Summary
  26. Appendix A1. Glossary and Abbreviations
  27. Appendix A2. Important Web Services and Related Specifications
  28. Appendix A3. References and Bibliography
    1. References
  29. Index

Product information

  • Title: SOA and Web Services Interface Design
  • Author(s): James Bean
  • Release date: September 2009
  • Publisher(s): Morgan Kaufmann
  • ISBN: 9780080953830