| |
Back to BOOK PAGE
Table of ContentsPreface Chapter 1: Integration Architecture, Principles, and Patterns Chapter 2: Service- and Process-Oriented Architectures for Integration Chapter 3: Best Practices for Using XML for Integration Chapter 4: SOA and Web Services Approach for Integration Chapter 5: BPEL and the Process-Oriented Approach to Integration Chapter 6: Service- and Process-Oriented Approach to Integration Using Web Services Index
- Chapter 1: Integration Architecture, Principles, and Patterns
- Integration Challenges
- Current Situation
- Effective Information Systems
- Replacing Existing Applications
- Requirements and Strategies
- Single Data Input
- Information Access with Low Latency
- Importance of a Centrally Managed Integration Project
- Responsibility to Define Integration Architecture
- Responsibility to Select Integration Infrastructure and Technologies
- Development and Maintenance of Integration Documentation
- Integration Architecture Steps and Approaches
- Bottom-Up Approach
- Top-Down Approach
- Sound Integration Architecture Benefits
- Types of Integration
- Data-Level Integration
- Application Integration
- Business Process Integration
- Presentation Integration
- Business-to-Business Integration
- Integration Infrastructure
- Communication
- Brokering and Routing
- Transformation
- Business Intelligence
- Transactions
- Security
- Lifecycle
- Naming
- Scalability
- Management
- Rules
- Integration Technologies
- Database Access Technologies
- Message-Oriented Middleware
- Remote Procedure Calls
- Transaction Processing Monitors
- Object Request Brokers
- Application Servers
- Web Services
- Enterprise Service Buses
- The Integration Process
- Choosing the Steps and Defining the Milestones
- Sound Practices
- Iterative Development
- Incremental Development
- Prototyping
- Reuse
- Integration Process Activities and Phases
- Integration Patterns
- Summary
- Chapter 2: Service- and Process-Oriented Architectures for Integration
- Defining Service-Oriented Architectures
- Why SOA in the Integration Space?
- Islands in the Enterprise IT Landscape
- The Integration Problem
- Custom Integration Application and Its Issues
- Inverted View: Reusable Services, Simple Integration Processes
- Enter SOA: A Services-Based Integration Architecture
- Concepts and Principles of SOA
- Paradigm Shift—from Self-Contained Applications towards "Services"
- Service Orientation
- Component-Based Services
- The Internet Simplifies Remote Services
- Introducing SOA Architecture
- Service Abstractions
- Service Invocation and Service Implementation
- Process Engines
- Messaging Abstractions
- Synchronous and Asynchronous Messages
- Service Registries
- Quality of Service
- Communication Infrastructure
- What is a "Bus"?
- XML and Web Services: SOA Foundation
- Using XML in Middleware
- Middleware Mechanics for Services
- XML-Based Mechanism to "Invoke" Services
- Services over the Web via SOAP
- Web Services—Protocols for SOA
- Technology Agnostic System-to-System Interaction
- Service Description—Using WSDL
- Discovering the Services—UDDI
- Containers to Host Web Services
- Standards Foundation
- Application Platforms (JAVA EE) Hosting Web Services
- Using Services to Compose Business Processes
- Simple Integration Applications
- Simple Business Processes—Orchestrating the Services
- Choreography—Multi-Party Business Process
- SOA Security and Transactions
- Security Challenges in a Services Environment
- Simple Middleware Systems Security
- Security in Java Infrastructure
- Microsoft.NET Security
- Web Services Security for Loosely Coupled Services
- Emerging Web Services Security Standards
- Transactions in SOA
- Web Services Transaction—A Standard
- Infrastructure Needed for SOA
- Service Execution and Communications
- Types of Component Services
- Service Containers (Execution Engines)
- Communication Infrastructure—Under the Covers
- Communication "Bus"—At the Core
- MOM
- XML Backbone (XML, Transformations, and Persistence)
- Reliability and Scalability
- Managing a Distributed SOA Environment
- Options for SOA Infrastructure
- Web Services
- Application Platforms (JAVA EE / .NET)
- Simple Messaging-Based Custom Infrastructure
- Integration Platforms (EAI)
- ESB—Enterprise Service Bus
- Designing Services and Processes for Portability
- Adoption Considerations
- Think Services
- Model the Business Data as XML
- Processes in BPEL
- New Applications—Prepare for SOA/POA
- Design for Infrastructure (Vendor) Independence
- Transition to Process-Oriented Architectures
- Services and Processes Coexist—But Services First
- Process—Orchestration of Services
- POA—Shifting the Focus to "Processes First"
- Concepts and Principles of Process-Oriented Architectures
- POA—Processes First. Services... Maybe!
- POA Enables Top-down Design—Using just Processes
- Analysts Become Programmers
- POA Changing Software Development Roles
- Process Standards
- Infrastructure for Process-Oriented Architectures
- Chapter 3: Best Practices for Using XML for Integration
- Introduction
- Domain-Specific XML Schemas
- Validating XML Documents
- Mapping Schemas
- Choosing Processing Models
- Fragmenting Incoming XML Documents
- Design Recommendations
- Default Namespace—targetNamespace or XMLSchema?
- Localize Namespace vs. Expose Namespaces
- Advantages of Localizing Component Namespaces within the Schema
- Advantages of Exposing Namespaces in Instance Documents
- Global vs. Local Declaration
- Russian Doll and Salami Slice Designs
- Element vs. Type
- Zero, One, or Many Namespaces
- Use the Heterogeneous Namespace Design
- Use the Homogeneous Namespace Design
- Use the Chameleon Design
- Using XSL for Transformation
- xsl:import and xsl:include
- Securing XML Documents
- XML Encryption
- Encrypting an XML File
- SSL versus XML Encryption
- XML Signatures
- Guidelines for Securing Your Services
- XML Streaming and DOM
- Pull Parsing versus Push Parsing
- What is StAX?
- StAX and Other JAXP APIs
- Performance Considerations
- Limit Parsing of Incoming Documents
- Use the Appropriate API
- Choosing Parser
- Reduce Validation Cost
- Referencing External Entities
- Dynamically Generated Documents
- Using XML Judiciously
- Chapter 4: SOA and Web Services Approach for Integration
- Designing Service-Oriented Architectures
- SOA Evolution
- IT Evolution
- Patterns
- Business Patterns
- Integration Patterns
- Composite Patterns
- Application Patterns
- Runtime Patterns
- Product Mappings
- Designing Sound Web Services for Integration
- Web Services Architecture
- Web Services Benefits
- Self-Contained
- Self-Describing
- Modular
- Accessible Over the Web
- Language, Platform, Protocol Neutral
- Open and Standards-Based
- Dynamic
- Composable
- Patterns
- Self-Service Business Pattern
- Extended Enterprise Business Pattern
- Application Integration Pattern
- Application Integration Patterns
- Direct Connection Application Pattern
- Broker Application Pattern
- Serial Process Application Pattern
- Parallel Process Application Pattern
- Runtime Patterns
- Nodes
- Connectors
- Direct Connection Runtime Pattern
- Runtime Patterns for Broker
- Differences between B2B and EAI Web Services
- Interface Design
- Use of a Service Registry
- Writing Interoperable WSDL Definitions
- Validating Interoperable WSDL
- Interoperability Challenges in Web Services
- WS-I Specifications
- WS-I Basic Profile 1.0
- WS-I Basic Profile 1.1
- WS-I Basic Profile 1.2
- WS-I Basic Security Profile 1.0
- Guidelines for Creating Interoperable Web Services
- Avoid using Vendor-Specific Extensions
- Use the Latest Interoperability Tests
- Understand Application Data Models
- Understand Interoperability of Data Types
- Java EE and .NET Integration using Web Services
- Sample Integration Scenario
- Developing the Java Web Service
- Deploying the Service
- WSDL for Java Web Service
- Developing the .NET Web Service
- Deploying the .NET Web Service
- Developing the Test Client
- Chapter 5: BPEL and the Process-Oriented Approach to Integration
- Process-Oriented Integration Architectures
- Service Composition
- Orchestration and Choreography
- Complexity of Business Services
- Identifying Business Services
- Development Lifecycle
- SOA and Executable Business Processes
- BPEL for Service Composition
- What We Can Do with BPEL
- Executable and Abstract Processes
- BPEL and Other Process Languages
- Languages for Choreography
- Modeling Notations
- Writing BPEL Processes
- Process Interface
- Partner Links
- Partner Link Types
- Variables
- Handlers
- Fault Handlers
- Event Handlers
- Compensation Handler
- Scopes
- Overview of BPEL Activities
- Developing an Example BPEL Process
- Services Used in the Process
- Resource Data Service
- Rating Service
- Billing Service
- Adding Partner Link Types to the Service's WSDL
- Define a WSDL Interface for the BPEL Process
- Writing the BPEL Process Logic
- Process Declaration
- Defining Partner Links
- Declaring Variables
- Writing the Process Definition
- Adding a Fault Handler
- Adding an Event Handler
- Deploy and Run the Process
- Chapter 6: Service- and Process-Oriented Approach to Integration Using Web Services
- Enterprise Service Bus
- From Just Services to an Enterprise Bus
- ESB Architecture
- Defining ESB
- Middleware for Middleware Technologies
- Modeling the Enterprise Document Flows
- ESB Services: Built on Documents/Messages
- ESB Infrastructure Components
- Built on Web Services Standards
- Service Containers—The Primary Tier of the Bus
- Inside the Container
- External View of Services: Documents Sent to Abstract "Endpoints"
- JBI—A Standard Container to "host" Services
- Communication Infrastructure
- Bus Services—Mediation, Transformations, and Process Flows
- Why Mediation?
- Infrastructure Mediation
- Intelligent Content-Based Routing
- Transformation Services
- ESB Processes: Extending the WS Process Model
- Security and Transactions
- Security Considerations in Integration Architecture
- ESB Security—Built on WS-Security
- Transaction Semantics for Enterprise Integration
- Distributed Transactions and Web Services
- Realizing Transactions in ESB
- Reliability, Scalability, and Management
- Reliability Concepts
- Achieving Reliable Communication through ESB
- High Availability in ESB—Leveraging the Messaging Platform
- Scalability and Performance of ESB
- Control and Management of ESB
- Application Development Considerations
- Integration Application Constituents
- ESB—Application Design Approach
- Comparing ESB with Other Technologies
- ESB—Helps Avoid Vendor Lock-Ins
- Extending ESB to Partners
Back to BOOK PAGE
| |
|