You are previewing Enterprise Application Integration.
O'Reilly logo
Enterprise Application Integration

Book Description

Organizations that are able to integrate their applications and data sources have a distinct competitive advantage: strategic utilization of company data and technology for greater efficiency and profit. But IT managers attempting integration face daunting challenges--disparate legacy systems; a hodgepodge of hardware, operating systems, and networking technology; proprietary packaged applications; and more.

Enterprise Application Integration (EAI) offers a solution to this increasingly urgent business need. It encompasses technologies that enable business processes and data to speak to one another across applications, integrating many individual systems into a seamless whole.Enterprise Application Integration provides a comprehensive examination of EAI. You will find an overview of EAI goals and approaches, a review of the technologies that support it, and a roadmap to implementing an EAI solution. You will also find an in-depth explanation of the four major types of EAI: data-level, application interface-level, method-level, and user interface-level. The book describes in detail the middleware models and technologies that support these different approaches, including:

  • Application servers, including the use of Enterprise JavaBeans (EJB) and ActiveX

  • Message-oriented middleware (MOM) and remote procedure calls (RPCs)

  • Distributed objects, looking at CORBA and COM

  • Database-oriented middleware and standards, including ODBC, JDBC, and OLE DB

  • Java middleware standards

  • Message brokers

  • New process automation and workflow technology

This practical guide to implementing an EAI solution leads you through all the major steps, including identifying sources of data, building the enterprise metadata model, process integration, identifying application interfaces, mapping information movement, selecting and applying the technologies, testing, and maintenance. Other key topics include integrating packaged applications such as SAP R/3 and PeopleSoft, integrating the supply chain using EAI, the role of XML, and process automation. Comprehensive, practical, and clearly written, this essential resource will help anyone involved in this important business area understand the nature of EAI, its tools and techniques, and how to apply it for a significant business advantage.

0201615835B04062001

Table of Contents

  1. Copyright
    1. Dedication
  2. Preface
    1. Why EAI?
    2. Enter ERPs
    3. Why Write a Book on EAI?
    4. Acknowledgments
    5. About the Author
  3. 1. Defining EAI
    1. What Is EAI?
    2. Applying Technology
    3. How Did Things Get This Bad?
    4. Chaos Today, Order Tomorrow
    5. Evolution of Stovepipes
      1. Traditional Systems
      2. Microcomputer Systems
      3. Distributed Systems
      4. Packaged Applications
    6. Making the Business Case for EAI
    7. The Virtual System
      1. e-Business
    8. Types of EAI
      1. Middleware and EAI
  4. 2. Data-Level EAI
    1. Going for the Data
    2. Data-Level EAI by Example
      1. Database-to-Database EAI
      2. Federated Database EAI
    3. Consider the Data Source
      1. Relational Data
      2. Object-Oriented
      3. Multidimensional
      4. Other Data Storage Models
        1. Hierarchical
        2. ISAM and VSAM
        3. CODASYL
        4. Adabas
    4. Working with Data-Level EAI
  5. 3. Application Interface-Level EAI
    1. Application Interfaces
    2. What's an API?
    3. Interface by Example
    4. Approaching Application Interfaces
    5. The Interface Tradeoff
    6. Packaged Applications
      1. Packaged Application Technology Architecture
      2. Packaged Application APIs
        1. Types of Services
          1. Types of Interfaces
        2. Other Interfaces
          1. Vertical Market Application Interfaces
        3. SWIFT
        4. FIX
        5. HL7
    7. Custom Applications
      1. Rolling Your Own API
      2. Application Wrapping
      3. Using Application Interfaces
  6. 4. Method-Level EAI
    1. Method-Level Example
    2. What's a Process?
      1. Scenarios
      2. Rules
      3. Logic
      4. Data
      5. Objects
    3. Method Warehousing
    4. Leveraging Frameworks for EAI
      1. The Value of Frameworks
      2. Framework Functionality
      3. Framework Types
        1. Service Frameworks
        2. Procedural Frameworks
        3. Component Frameworks
      4. Framework Categories
        1. Application Service Frameworks
        2. Domain Frameworks
        3. Support Frameworks
    5. Enabling Technology
      1. Application or Transaction Servers
      2. Message Brokers
      3. Distributed Objects
    6. Sharing Methods to Bind Your Enterprise
  7. 5. User Interface-Level EAI
    1. Leveraging User Interface-Level EAI
    2. Going to the User Interface
      1. Understanding the Application
      2. Creating the Screen Catalog
      3. Mapping Screens
        1. Finding the Information
        2. Static Extraction
        3. Dynamic Extraction
        4. Error Processing
      4. Approaches
        1. Screens-as-Data
        2. Screens-as-Objects
      5. Enabling Technology
        1. Screen Access Tricks
        2. HLLAPI
        3. ASCII or ANSI
        4. OLE Automation
        5. Screens as Objects
  8. 6. The EAI Process—Methodology or Madness?
    1. Applying a Procedure/Methodology
    2. Step 1: Understanding the Enterprise and Problem Domain
    3. Step 2: Making Sense of the Data
      1. Identifying the Data
        1. The Data Dictionary
        2. Integrity Issues
        3. Data Latency
        4. Data Formats
        5. Data Cataloging
        6. Building the Enterprise Metadata Model
      2. Logical Model
      3. Physical Model
      4. Normalizing the Enterprise
    4. Step 3: Making Sense of the Processes
      1. Process Integration
        1. Process Cataloging
    5. The Common Business Model
      1. Leveraging Patterns for Method-Level EAI
        1. Types of Patterns
        2. Application to EAI
        3. The Value of Patterns
    6. Step 4: Identifying Application Interfaces
      1. Application Interface Directory
        1. Application Semantics
        2. Business Processes
    7. Step 5: Identifying the Business Events
    8. Step 6: Identifying the Schema and Content Transformation Scenarios
    9. Step 7: Mapping Information Movement
    10. Step 8: Applying Technology
    11. Step 9: Testing, Testing, Testing
    12. Step 10: Considering Performance
    13. Step 11: Defining the Value
    14. Step 12: Creating Maintenance Procedures
    15. Method or Madness?
  9. 7. An Introduction to EAI and Middleware
    1. Middleware: The Engine of EAI
    2. What's Middleware?
      1. Types of Middleware
        1. RPCs
        2. Message-Oriented
        3. Distributed Objects
        4. Database-Oriented
        5. Transaction-Oriented
      2. TP Monitors
      3. Application Servers
        1. Message Brokers
    3. Middleware Models
      1. One-to-One versus Many-to-Many
        1. Point-to-Point Middleware
        2. Many-to-Many Middleware
      2. Synchronous versus Asynchronous
      3. Connection-Oriented and Connectionless
      4. Direct Communications
      5. Queued Communications
      6. Publish/Subscribe
      7. Request Response
      8. Fire and Forget
      9. Conversational-Mode
    4. Tough Choices
  10. 8. Transactional Middleware and EAI
    1. Notion of a Transaction
    2. The ACID Test
    3. Scalable Development
      1. Database Multiplexing
      2. Load Balancing
      3. Fault-Tolerance
      4. Communications
    4. XA and X/Open
    5. Building Transactions
    6. Application Servers
      1. Evolving Transactions
        1. Enterprise JavaBeans
        2. Transactional ActiveX
    7. Future of Transactional Middleware
  11. 9. RPCs, Messaging, and EAI
    1. RPCs
    2. DCE
      1. Message-Oriented Middleware (MOM)
      2. MSMQ
        1. Using MSMQ
      3. IBM MQSeries
      4. MQSeries Upgrade
      5. MQSeries Features
      6. MQSeries Publish/Subscribe
    3. Getting the Message
  12. 10. Distributed Objects and EAI
    1. What Works
    2. What's So Difficult?
    3. What's So Easy?
    4. What's a Distributed Object?
    5. The General Idea
    6. CORBA
      1. Shortfalls
      2. CORBA Internals
        1. ORB
        2. Object Services
        3. Common Facilities
        4. Application Objects
    7. COM
      1. Automation
      2. Moving to DCOM
    8. The Realities
  13. 11. Database-Oriented Middleware and EAI
    1. What's Database-Oriented Middleware?
    2. Types of Database-Oriented Middleware
      1. ODBC
      2. JDBC
        1. Types of JDBC Drivers
        2. Other JDBC Features
        3. Java, JDBC, and EAI
      3. OLE DB
      4. Going Native
      5. Database Gateways
        1. EDA/SQL
        2. RDA
        3. DRDA
    3. Ready for Prime Time
  14. 12. Java Middleware and EAI
    1. Categories of Java Middleware Standards
      1. Database-Oriented
      2. Interprocess
      3. Message-Oriented
        1. Messaging Models
        2. JMS and Application Development
      4. Application-Hosting
      5. Distributed Objects
    2. The Future of Java and Middleware
  15. 13. Implementing and Integrating Packaged Applications—The General Idea
    1. Why Packaged Applications?
    2. Installing Packaged Applications
      1. Business Drivers
      2. Architectures Drive Success
      3. Testing What Has Already Been Tested
      4. Implementing Specific Packages
      5. Packaged Application Tools
      6. Database Issues
      7. Web Enablement
    3. The Opportunity
      1. Web-Enabled Selling and EAI
      2. Integrating the Supply Chain (e-Business)
      3. Applying EAI to Packaged Applications
    4. Our Packaged Future
  16. 14. Integrating SAP R/3
    1. The Basic Problem
    2. SAP Architecture
      1. The SAP Repository
      2. The SAP Presentation Layer
      3. The SAP Application Server Layer
      4. The SAP Database Layer
      5. SAP Middleware
        1. CPI-C
        2. RFC
        3. Transactions and RFCs
    3. ALE
      1. IDOC
      2. BAPI
    4. Using the Repository
    5. SAP and EAI
  17. 15. Integrating PeopleSoft
    1. PeopleSoft Architecture
    2. Data Level
      1. Data Mover
      2. SQRs and Moving Data
      3. Workflow and Moving Data
    3. Application Interfaces
      1. Screen Scraping
      2. EDI
      3. Workflow
        1. Application Designer
        2. Message Agent API
        3. Business Component API
      4. Workstation
    4. What's Best?
  18. 16. e-Business: Inter-Enterprise Application Integration
    1. Defining Your e-Business
    2. Extending EAI outside the Enterprise
    3. Binding the Home System to a Stranger's
    4. The Process
    5. e-Business Technology
    6. ERPs and e-Business
    7. e-Businesses Organize
  19. 17. XML and EAI
    1. The Rise of XML
    2. What's XML?
    3. Data Structures
      1. DTDs
      2. XML Parsers
      3. XML Metadata
    4. XML and Middleware
    5. Persistent XML
    6. RDF and EAI
    7. XSL and EAI
    8. XML and EAI
  20. 18. Message Brokers—The Preferred EAI Engine
    1. Integration, not Perspiration
    2. Why a New Direction?
    3. Considering the Source (and Target)
    4. Message Transformation Layer
      1. Schema Conversions
      2. Data Conversion
    5. Intelligent Routing
    6. Rules Processing
    7. Message Warehousing
    8. Repository Services
    9. Graphical User Interface
    10. Directory Services
    11. Management
    12. Adapters
      1. Thin Adapters
      2. Thick Adapters
      3. Static and Dynamic Adapters
    13. Using an API
    14. Topologies
    15. The Future of EAI and Brokers
  21. 19. Process Automation and EAI
    1. What Is Process Automation?
    2. Process Automation and EAI Levels
    3. Implementing Process Automation
      1. Documenting Processes
      2. Defining Processes
      3. Executing Processes
      4. Tools and Approaches
        1. Process Modeling
        2. Middleware Interfaces
    4. Workflow Standards
    5. Process Automation and EAI
  22. 20. EAI Moving Forward
    1. Problem Domains Change
      1. Moving from Intra- to Inter-Enterprise Application Integration
      2. Moving from Data-Level to Application-Level Integration
      3. Loose Ends
        1. Security
        2. Performance
        3. Administration
    2. Vendor Approaches
      1. Data-Oriented
        1. Data Replication
        2. Data Federation
      2. Application Integration–Oriented
      3. Process Automation–Oriented
      4. Transaction-Oriented
      5. Distributed Object–Oriented
    3. Technologies Join Forces
    4. Future Directions
      1. Importance of the Architecture
      2. Importance of Application Design
    5. EAI and the Modern Enterprise
  23. Glossary
  24. Bibliography