Arquitectura Orientada
a Servicios (SOA)

Automatización Robótica
de Procesos (RPA)

Big Data



Computación en la Nube



Diseño y Gestión de APIs

Gobernanza de Servicios

Inteligencia Artificial (IA)

Internet de las Cosas (IoT)

Machine Learning


Seguridad de Servicios

Tecnología Empresarial

Transformación Digital

Cursos y Exámenes en Inglés

Sitio de Patrones de Arcitura (inglés)

Arcitura en YouTube

Arcitura en LinkedIn (inglés)

Arcitura en Facebook (inglés)

Arcitura en Twitter (inglés)

Página de Inicio de la Comunidad (inglés)

Libros de Arcitura Publicados por Pearson Education (inglés)

Programa de socios

Planificador de Talleres

Descargar Catálogo (PDF)

Contacte a Arcitura




Analista de SOA

Arquitecto de Big Data

Arquitecto de Blockchain

Arquitecto de Contenedorización

Arquitecto de IoT

Arquitecto de Microservicios

Arquitecto de Nube

Arquitecto de SOA

Arquitecto de Tecnología
de Transformación Digital

Científico de Big Data

Científico de Datos
de Transformación Digital

Consultor de Big Data

Consultor de Tecnología de Servicios

Especialista en Almacenamiento
en la Nube

Especialista en APIs de Servicios

Especialista en
Automatización Inteligente
de Transformación Digital

Especialista en Ciberseguridad

Especialista en DevOps

Especialista en Gobernanza
de Big Data

Especialista en Gobernanza de Nube

Especialista en Gobernanza
de Servicios

Especialista en Inteligencia Artificial

Especialista en Machine Learning

Especialista en RPA

Especialista en Seguridad de Servicios

Especialista en Seguridad
de Transformación Digital

Especialista en Seguridad en la Nube

Especialista en Transformación Digital

Especialista en Virtualización
en la Nube

Ingeniero en Big Data

Profesional de
Automatización Inteligente
de Transformación Digital

Profesional de Big Data

Profesional en Ciencias de Big Data

Profesional de Ciencia de Datos
de Transformación Digital

Profesional de Nube

Profesional de Seguridad
de Transformación Digital

Profesional de SOA

Profesional de Tecnología de Nube

Profesional de Tecnología
de Transformación Digital

Profesional de Tecnología Empresarial


Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services

Chapter 1: Introduction

1.1 Why this guide is important
1.1.1 The hammer and XML
1.1.2 XML and Web services
1.1.3 Web services and Service-Oriented Architecture
1.1.4 Service-Oriented Architecture and the hammerre
1.1.5 The hammer and you
1.2 The XML & Web Services Integration Framework (XWIF)
1.3 How this guide is organized
1.3.1 Part I: The technical landscape
1.3.2 Part II: Integrating technology
1.3.3 Part III: Integrating applications
1.3.4 Part IV: Integrating the enterprise
1.3.5 The extended enterprise
1.5 Contact the author

Part I – The Technical Landscape
Chapter 2: Introduction to XML technologies

2.1 Extensible Markup Language (XML)
2.1.1 Concepts
2.1.2 Schemass
2.1.3 Programming models
2.1.4 Syntaxss
2.2 Document Type Definitions (DTD)
2.2.1 Concepts
2.2.2 Syntaxts
2.3 XML Schema Definition Language (XSD)
2.3.1 Concepts
2.3.2 Syntaxts
2.4 Extensible Stylesheet Language Transformations (XSLT)
2.4.1 Concepts
2.4.2 Syntaxts
2.5 XML Query Language (XQuery)
2.5.1 Concepts
2.5.2 Syntaxts
2.6 XML Path Language (XPath)
2.6.1 Concepts
2.6.2 Syntaxts

Chapter 3: Introduction to Web service technologies

3.1 Web services and the service-oriented architecture (SOA)
3.1.1 Understanding servicese
3.1.2 XML Web servicesls
3.1.3 Service-oriented architecture (SOA)
3.1.4 Web service roless
3.1.5 Web service interaction
3.1.6 Service modelsless
3.1.7 Web service description structures
3.1.8 Introduction to first-generation Web servicese
3.2 Web Services Definition Language (WSDL)
3.2.1 Abstract interface definitiontures
3.2.2 Concrete (implementation) definitiono
3.2.3 Supplementary constructs
3.3 Simple Object Access Protocol (SOAP)
3.3.1 SOAP messaging framework
3.3.2 SOAP message structurerk
3.4 Universal Description, Discovery, and Integration (UDDI)

Chapter 4: Introduction to second-generation (WS-*) Web services technologies

4.1 Second-generation Web services and the service-oriented enterprise
4.1.1 Problems solved by second-generation specifications
4.1.2 The second-generation landscaperes
4.2 WS-Coordination and WS-Transaction
4.2.1 Concepts
4.2.2 Syntaxts
4.3 Business Process Execution Language for Web Services
4.3.1 Recent business process specificationsn
4.3.2 Concepts
4.3.3 Syntaxts
4.4 WS-Security and the Web services security specifications
4.4.1 General security concepts
4.4.2 Specificationsless
4.4.3 XML Key Management (XKMS)
4.4.4 Extensible Access Control Markup Language and
Extensible Rights Markup Language
4.4.5 Security Assertion Markup Language (SAML) and .NET Passports
4.4.6 XML-Encryption and XML-Digital Signatures
4.4.7 Secure Sockets Layer (SSL)
4.4.8 The WS-Security framework)
4.4.9 Concepts and syntaxmework)
4.5 WS-ReliableMessaging
4.5.1 WS-Addressingsless
4.5.2 Concepts
4.5.3 Acknowledgementsss
4.5.4 Syntaxts
4.6 WS-Policy
4.6.1 Concepts
4.6.2 Syntaxts
4.7 WS-Attachments

Part II: Integrating Technology:
Chapter 5: Integrating XML into applications

5.1 Strategies for integrating XML data representation
5.1.1 Positioning XML data representation in your architecture
5.1.2 Think “tree” (a new way of representing data)
5.1.3 Easy now, (don’t rush the XML document model)
5.1.4 Design with foresight
5.1.5 Focus on extensibility and reusability
5.1.6 Lose weight while modeling! (keeping your documents)
5.1.7 Naming element-types: performance vs. legibility
5.1.8 Applying XML consistently
5.1.9 Choosing the right API (DOM vs. SAX vs. Data Binding)
5.1.10 Securing XML documents
5.1.11 Pick the right tools
5.1.12 Don’t try this at home (fringe optimization strategiesm)
5.2 Strategies for integrating XML data validation
5.2.1 XSD schemas or DTDs?
5.2.2 Positioning DTDs in your architecture
5.2.3 Positioning XSD schemas in your architecture
5.2.4 Understand the syntactical limitations of XSD schemas
5.2.5 Understand the performance limitations of XSD schemas
5.2.6 Other fish in the sea (more schema definition languages)
5.2.7 Supplementing XSD schema validation
5.2.8 Integrating XML validation into a distributed architecture
5.2.9 Avoiding over-validation
5.2.10 Consider targeted validation
5.2.11 Building modular and extensible XSD schemas
5.2.12 Understand the integration limitations of your database
5.3 Strategies for integrating XML schema administration
5.3.1 XML schemas and the silent disparity pattern
5.3.2 A step-by-step XWIF process
5.4 Strategies for integrating XML transformation
5.4.1 Positioning XSLT in your architecture
5.4.2 Pre-transform for static caching
5.4.3 Create dynamic XSLT style sheets
5.4.4 Simplify aesthetic transformation with CSS
5.4.5 Understand the scalability limitations of XSLT
5.4.6 Strategic redundancy
5.5 Strategies for integrating XML data querying
5.5.1 Positioning XQuery in your architecture
5.5.2 Multi-data source abstraction
5.5.3 Establishing a data policy management layer
5.5.4 Unifying documents and data

Chapter 6: Integrating Web services into applications

6.1 Service models
6.1.1 Utility services
6.1.2 Business services
6.1.3 Controller services
6.2 Modeling service-oriented component classes and web service interfaces
6.2.1 Designing service-oriented component classes
6.2.2 Designing Web service interfaces
6.3 Strategies for integrating service-oriented encapsulation
6.3.1 Define criteria for consistent logic encapsulation and interface granularity
6.3.2 Establish a standard naming convention
6.3.3 Parameter-driven vs. operation-oriented interfaces
6.3.4 Designing for diverse granularity
6.3.5 Utilize generic services consistently
6.3.6 Establish separate standards for internal and external services
6.3.7 Considering third-party Web services
6.4 Strategies for integrating service assemblies
6.4.1 Everything in moderation, including service assemblies
6.4.2 Modeling service assemblies
6.4.3 Compound service assemblies
6.5 Strategies for enhancing service functionality
6.5.1 Outputting user-interface information
6.5.2 Caching more than textual data
6.5.3 Streamlining the service design with usage patterns
6.6 Strategies for integrating SOAP messaging
6.6.1 SOAP message performance management
6.6.2 SOAP message compression techniques
6.6.3 Security issues with SOAP messaging
6.6.4 SOAP data types
6.6.5 Easing into SOAP

Chapter 7: Integrating XML and databases

7.1 Comparing XML and relational database
7.1.1 Data storage and security
7.1.2 Data representation
7.1.3 Data integrity and validation
7.1.4 Data querying and indexing
7.1.5 Additional features
7.2 Integration architectures for XML and relational databases
7.2.1 Storing XML documents as database records
7.2.2 Storing XML document constructs as database records
7.2.3 Using XML to represent a view of database queries
7.2.4 Using XML to represent a view of a relational data model
7.2.5 Using XML to represent relational data within an in-memory database (IMDB)
7.3 Strategies for integrating XML with relational databases
7.3.1 Target only the data you need
7.3.2 Avoiding relationships by creating specialized data views
7.3.3 Create XML-friendly database models
7.3.4 Extending the schema model with annotations
7.3.5 Non-XML data models in XML schemas
7.3.6 Developing a caching strategy
7.3.7 Querying the XSD schema
7.3.8 Control XML output with XSLT
7.3.9 Integrate XML with query limitations in mind
7.3.10 Is a text file a legitimate repository?
7.3.11 Loose coupling and developer skill sets
7.4 Techniques for mapping XML to relational data
7.4.1 Mapping XML documents to relational data
7.4.2 The Bear Sightings application
7.4.3 Intrinsic one-to-one and one-to-many relationships with XML
7.4.4 Mapping XML to relational data with DTDs
7.4.5 Mapping XML to relational data with XSD schemas
7.5 Database extensions
7.5.1 Proprietary extensions to SQL
7.5.2 Proprietary versions of XML specifications
7.5.3 Proprietary XML-to-database mapping
7.5.4 XML output format
7.5.5 Stored procedures
7.5.6 Importing and exporting XML documents
7.5.7 Encapsulating proprietary database extensions within Web services
7.6 Native XML databases
7.6.1 Storage of document-centric data
7.6.2 Integrated XML schema models
7.6.3 Queries and data retrieval
7.6.4 Native XML databases for intermediary storage

Part III: Integrating Applications
Chapter 8: The mechanics of application integration

8.1 Understanding application integration
8.1.1 Types of integration projects
8.1.2 Typical integration requirements
8.1.3 Progress versus impact
8.1.4 Types of integration solutions
8.2 Integration levels
8.2.1 Data-level integration
8.2.2 Application-level integration
8.2.3 Process-level integration
8.2.4 Service-oriented integration
8.3 A guide to middleware
8.3.1 “EAI” versus “middleware”
8.3.2 Shredding the Oreo
8.3.3 Common middleware services and products
8.3.4 A checklist for buying middleware
8.4 Choosing an integration path
8.4.1 Two paths, one destination
8.4.2 Moving to EAI
8.4.3 Common myths
8.4.4 The impact of an upgrade
8.4.5 Weighing your options

Chapter 9: Service-oriented architectures for legacy integration

9.1 Service models for application integration
9.1.1 Proxy services
9.1.2 Wrapper services
9.1.3 Coordination services (for atomic transactionsty)
9.2 Fundamental integration components
9.2.1 Adapters
9.2.2 Intermediaries
9.2.3 Interceptors
9.3 Web services and one-way integration architectures
9.3.1 Batch export and import
9.3.2 Direct data access
9.4 Web services and point-to-point architectures
9.4.1 Tightly coupled integration between homogenous legacy applications
9.4.2 Tightly coupled integration between heterogeneous applications
9.4.3 Integration between homogenous component-based applications
9.4.4 Integration between heterogeneous component-based applications
9.5 Web services and centralized database architectures
9.5.1 Traditional architecture
9.5.2 Using a Web service as a data access controller
9.6 Service-oriented analysis for legacy architectures

Chapter 10: Service-oriented architectures for enterprise integration

10.1 Service models for enterprise integration architectures
10.1.1 Process services
10.1.2 Coordination services (for business activities)
10.2 Fundamental enterprise integration architecture components
10.2.1 Broker
10.2.2 Orchestration
10.3 Web services and enterprise integration architectures
10.4 Hub and spoke
10.4.1 Traditional architecture
10.4.2 Adding integration layers with Web services
10.5 Messaging bus
10.5.1 Traditional architecture
10.5.2 Messaging bus solutions that utilize Web services
10.6 Enterprise Service Bus (ESB)

Chapter 11: Service-oriented integration strategies

11.1 Strategies for streamlining integration endpoint interfaces
11.1.1 Make interfaces more generic
11.1.2 Consolidate legacy interfaces
11.1.3 Consolidate proxy interfaces
11.1.4 Supplement legacy logic with external logic
11.1.5 Add support for multiple data output formats
11.1.6 Provide alternative interfaces for different SOAP clients
11.2 Strategies for optimizing integration endpoint services
11.2.1 Minimize the use of service intermediaries
11.2.2 Consider using service interceptors
11.2.3 Data processing delegation
11.2.4 Caching the provider WSDL definition
11.3 Strategies for integrating legacy architectures
11.3.1 Create a transition architecture by adding partial integration layers
11.3.2 Data caching with an IMDB
11.3.3 Utilizing a queue to counter scalability demands
11.3.4 Adding a mini-hub
11.3.5 Abstract legacy adapter technology
11.3.6 Leveraging legacy integration architectures
11.3.7 Appending Web services to legacy integration architectures
11.4 Strategies for enterprise solution integration
11.4.1 Pragmatic service-oriented integration
11.4.2 Integrating disparate EAI products
11.4.3 Respect your elders (building EAI around your legacy environments)
11.4.4 Build a private service registry
11.5 Strategies for integrating Web services security
11.5.1 Learn about the Web services security specifications
11.5.2 Build services with a standardized service-oriented security (SOS) model
11.5.3 Create a security services layer
11.5.4 Beware remote third-party services
11.5.5 Prepare for the performance impact
11.5.6 Define an appropriate system for single sign-on
11.5.7 Don’t over-describe your services
11.5.8 Fortify or retreat integrated legacy systems
11.5.9 Take advantage of granular security
11.5.10 Web services and port 80
11.5.11 SOAP attachments and viruses
11.5.12 Consider the development of security policies
11.5.13 Don’t wait to think about administration

Part IV: Integrating the Enterprise
Chapter 12: Thirty best practices for integrating XML

12.1 Best practices for planning XML migration projects
12.1.1 Understand what you are getting yourself into
12.1.2 Assess the technical impact
12.1.3 Invest in an XML impact analysis
12.1.4 Assess the organizational impact
12.1.5 Targeting legacy data
12.2 Best practices for knowledge management within XML projects
12.2.1 Always relate XML to data
12.2.2 Determine the extent of education required by your organization
12.2.3 Customize a training plan
12.2.4 Incorporate mentoring into development projects
12.3 Best practices for standardizing XML applications
12.3.1 Incorporate standards
12.3.2 Standardize, but don’t over-standardize
12.3.3 Define a schema management strategy
12.3.4 Use XML to standardize data access logic
12.3.5 Evaluate tools prior to integration
12.4 Best practices for designing XML applications
12.4.1 Develop a system for knowledge distribution
12.4.2 Remember what the “X” stands for
12.4.3 Design with service-oriented principles (even if not using Web services)
12.4.4 Strive for a balanced integration strategy
12.4.5 Understand the roles of supplementary XML technologies
12.4.6 Adapt to new technology developments

Chapter 13: Thirty best practices for integrating Web services

13.1 Best practices for planning service-oriented projects
13.1.1 Know when to use Web services
13.1.2 Know how to use Web services
13.1.3 Know when to avoid Web services
13.1.4 Moving forward with a transition architecture
13.1.5 Leverage the legacy
13.1.6 Sorry, no refunds (Web services and your bottom line)
13.1.7 Align ROIs with migration strategies
13.1.8 Build toward a future state
13.2 Best practices for standardizing Web services
13.2.1 Incorporate standards
13.2.2 Label the infrastructure
13.2.3 Design against an interface (not vice versa)
13.2.4 Service interface designer
13.2.5 Categorize your services
13.3 Best practices for designing service-oriented environments
13.3.1 Use SOAs to streamline business models
13.3.2 Research the state of second-generation specifications
13.3.3 Strategically position second-generation specifications
13.3.4 Understand the limitations of your platform
13.3.5 Use abstraction to protect legacy endpoints from change
13.3.6 Build around a security model
13.4 Best practices for managing service-oriented development projects
13.4.1 Organizing development resources
13.4.2 Don’t underestimate training for developers
13.5 Best practices for implementing Web services
13.5.1 Use a private service registry
13.5.2 Prepare for administration
13.5.3 Monitor and respond to changes in the service hosting environments
13.5.4 Test for the unknown

Chapter 14: Building the service-oriented enterprise

14.1 SOA modeling basics
14.1.1 Activities
14.1.2 Services
14.1.3 Processes
14.2 SOE building blocks
14.2.1 SOE business modeling building blocks
14.2.2 SOE technology architecture building blocks
14.2.3 Service-oriented security model
14.3 SOE migration strategy
14.3.1 Overview of the Layered Scope Model (LSM)
14.3.2 Intrinsic Layer
14.3.3 Internal layer
14.3.4 A2A layer
14.3.5 EAI layer
14.3.6 Enterprise layer
14.3.7 The extended enterprise
14.3.8 Customizing the LSM
14.3.9 Alternatives to the LSM

About the Author
About the Photographs