Enterprise Application Integration - PowerPoint PPT Presentation

1 / 126
About This Presentation
Title:

Enterprise Application Integration

Description:

Enterprise Application Integration Ruh, Maginnis, Brown (2001) text Vendors Internet Resources Web Services EAI Journal online and print Enterprise Application ... – PowerPoint PPT presentation

Number of Views:570
Avg rating:3.0/5.0
Slides: 127
Provided by: ALANRP
Category:

less

Transcript and Presenter's Notes

Title: Enterprise Application Integration


1
Enterprise Application Integration
  • Ruh, Maginnis, Brown (2001) text
  • Vendors
  • Internet Resources
  • Web Services
  • EAI Journal online and print

2
Enterprise Application Integration
  • Packaged applications
  • Legacy applications
  • Data from variety of sources
  • Stovepipe apps

3
Enterprise Application Integration
  • C 1 Business Drivers
  • C 2 Types of Integration
  • C 3 Building Blocks
  • C 4 MOM
  • C 5 Object arch
  • C 6 Transaction arch

4
Enterprise Application Integration
  • Stats
  • 30-60 IT resources on integration
  • 35 of budgets
  • 85 IT projects not completed
  • 58 large projects over budget
  • 63 projects off schedule
  • 58 report success below 50

5
Enterprise Application Integration
  • Select
  • Architect
  • Apply
  • Common Building Blocks

6
Enterprise Application Integration
  • Messaging Architecture
  • IBM MQ Series
  • Object Architectures
  • EJB
  • Transaction Architecture
  • BEA Tuxedo

7
Enterprise Application Integration
  • Introductory text
  • Look at concepts
  • Then vendor applications
  • Web Services later

8
Enterprise Application Integration
  • Technology is always changing
  • Concepts
  • Frameworks
  • Application in an organization

9
Enterprise Application Integration
  • Key Facts p.1
  • Definition p.2
  • Enterprise Application Integration is the
    creation of business solutions by combining
    applications using common middleware.

10
Enterprise Application Integration
  • Middleware is application-independent software
    that provides services that mediate between
    applications.
  • Multiple types

11
Enterprise Application Integration
  • Goals
  • Quick, easy, cheap
  • Improved relationships
  • Supply chains
  • Mergers and acquisitions
  • BPI
  • Speed

12
Enterprise Application Integration
  • 360 view of relationships p.4
  • Stovepipe applications definition p.5
  • Examples and issues
  • Supply-chain
  • Examples and issues

13
Enterprise Application Integration
  • XML p.6
  • BPI
  • Speed p.7
  • Legacy applications
  • Packaged solutions COTS

14
Enterprise Application Integration
  • Internet p. 8-11
  • Dot-bomb
  • B2B, B2C
  • Intranets
  • Extranets

15
Enterprise Application Integration
  • Barriers to EAI
  • Custom API, application programming interfaces
  • Vendors
  • Skills EAI
  • Security

16
Enterprise Application Integration
  • Types of integration
  • Chapter 2
  • Key facts
  • Integration model defines how applications will
    be integrated by defining the nature of and
    mechanisms for integration

17
Enterprise Application Integration
  • Presentation
  • Data
  • Functional
  • Pages 19-21

18
Enterprise Application Integration
  • Presentation integration model allows the
    integration of new software through the existing
    presentations of the legacy software. This is
    typically used to create a new user interface but
    may be used to integrate with other applications.

19
Enterprise Application Integration
  • Data integration model allows the integration of
    software through access to the data that is
    created, managed and stored by the software
    typically for the purposes of reusing or
    synchronizing data across applications.

20
Enterprise Application Integration
  • Functional integration model allows the
    integration of software for the purpose of
    invoking existing functionality from other new or
    existing applications. The integration is done
    through interfaces to the software.

21
Enterprise Application Integration
  • Coupling
  • White box integration
  • Black box integration

22
Enterprise Application Integration
  • Presentation integration model p.22
  • When to use it
  • Green screen
  • One look
  • Only choice
  • Examples

23
Enterprise Application Integration
  • Pros and Cons
  • Skill level
  • Speed
  • Less complex
  • Performance low
  • Most limiting

24
Enterprise Application Integration
  • Data integration p. 24
  • Batch file transfer
  • Open database connectivity
  • Data access middleware
  • Data transformation

25
Enterprise Application Integration
  • When to use it
  • Analysis of data
  • Data warehouse
  • Different vendors
  • Synchronize
  • EIS

26
Enterprise Application Integration
  • Pros and cons
  • Flexible
  • Reused
  • Lack of functionality
  • Simple access to data
  • No logic access

27
Enterprise Application Integration
  • Functional integration model p.29
  • Business logic
  • RPCs
  • Distributed processing middleware

28
Enterprise Application Integration
  • Distributed processing middleware
  • MOM
  • DOT
  • TPM

29
Enterprise Application Integration
  • MOM
  • Passing messages
  • IBM MQ series
  • Talarian Smart Sockets

30
Enterprise Application Integration
  • Distributed object technology
  • OMG CORBA
  • Microsoft COM
  • Suns J2EE

31
Enterprise Application Integration
  • TPM
  • Transactions
  • BEA Tuxedo

32
Enterprise Application Integration
  • Breadth of functional integration
  • Data consistency
  • Multistep process
  • Plug and play components

33
Enterprise Application Integration
  • Data consistency integration is integration
    through the code of an application where the
    purpose is to access or update data. The
    integration facilitates the communication of data
    and actions.

34
Enterprise Application Integration
  • Multistep process integration, also known as
    straight-through processing, is the integration
    of applications where there is not only
    communications of requests but also the
    coordination and management of these requests
    across applications. The integration facilitates
    communication of the request and manages the flow
    and sequencing.

35
Enterprise Application Integration
  • Plug and play component integration is the
    integration of applications where a well-defined
    interface exists that allows a component to be
    easily connected with other components without
    modification. The integration facilitates the
    communication of requests and handles all of the
    interface definition and management.

36
Enterprise Application Integration
  • Table 2.1

37
Enterprise Application Integration
  • When to use it
  • Difficulty
  • Performance
  • Future reuse
  • Examples

38
Enterprise Application Integration
  • Pros and cons
  • Robust
  • Flexible
  • Reuse
  • Complex
  • Difficult software
  • May not be possible

39
Enterprise Application Integration
  • Chapter 3 p.39
  • Key facts

40
Enterprise Application Integration
  • For EAI solutions need
  • Methodology
  • Technology

41
Enterprise Application Integration
  • Communication model
  • 2 choices
  • Synchronous wait until reply is received
  • Asynchronous continue processing

42
Enterprise Application Integration
  • Receiver is software that receives a request from
    a sender.
  • Request is a formatted set of actions and data
    sent from a sending piece of software to a
    receiving set of software

43
Enterprise Application Integration
  • Reply is a formatted set of data and possibly
    associated actions that are sent as a result of a
    request
  • Sender is software that sends a request to
    another software component

44
Enterprise Application Integration
  • Synchronous communication occurs when the
    communication between a sender and receiver is
    accomplished in a coordinated manner. This
    requires the sender and receiver to operate
    dependent on the processing of request.

45
Enterprise Application Integration
  • Interactive systems require synchronous
    communication.
  • Examples

46
Enterprise Application Integration
  • Three types of synchronous communication
  • Request/Reply
  • One-Way
  • Synchronous polling

47
Enterprise Application Integration
  • Request/reply communication is a form of
    synchronous communication where a sender makes a
    request of a receiver and waits for a reply
    before continuing to process.
  • Page 42

48
Enterprise Application Integration
  • One-way communication is a form of synchronous
    communication where a sender makes a request from
    a receiver and waits for a reply that
    acknowledges receipt of the request.
  • Page 43

49
Enterprise Application Integration
  • Synchronous polling communication is a form of
    synchronous communication where a sender
    communicates a request to a receiver but instead
    of blocking continues processing. At intervals
    defined by the developer, the sender checks to
    see if a reply has been sent. When it detects a
    reply it processes it and stops any further
    polling for a reply.

50
Enterprise Application Integration
  • Asynchronous communication occurs when the
    communication between a sender and receiver is
    accomplished in a manner that allows each of them
    to operate independently of the other. The
    receiver of the request is under no obligation to
    handle the communications or respond to the
    sender. The sender continues to operate once the
    request is sent without regard to how the
    receiver handles the communication.

51
Enterprise Application Integration
  • Three popular types of asynchronous
    communications
  • Message passing
  • Publish/Subscribe
  • Broadcast

52
Enterprise Application Integration
  • Message passing is a form of asynchronous
    communication where a request is sent from a
    sender to a receiver. When the sender has made
    the request, it essentially forgets it has been
    sent and continues processing. The request is
    delivered to the receiver and is processed.
  • Page 46

53
Enterprise Application Integration
  • Publish/subscribe is a form of asynchronous
    communication where a request is sent by the
    sender and the receiver is determined by a
    declaration of interest by the receiver in the
    request.
  • Page 47

54
Enterprise Application Integration
  • Broadcast is a form of asynchronous communication
    in which a request is sent to all participants,
    the receivers, of a network. Each participant
    determines whether the request is of interest by
    examining the content.
  • Page 48

55
Enterprise Application Integration
  • Methods of integration
  • Messaging
  • Interface definitions

56
Enterprise Application Integration
  • Messaging offers an easy to understand approach
    for the construction, use, and processing of the
    data.
  • Interface based integration requires the
    specification and implementation of a
    well-defined interface that describes the actions
    that an application can perform.

57
Enterprise Application Integration
  • A connector is logic that is programmed into an
    application whose sole purpose is to provide
    access to the presentation, data, or
    functionality of the application in a structured
    manner. The connector hides the complexity of
    translating and communicating a message or an
    invocation on an interface for use by the
    application.

58
Enterprise Application Integration
  • Marshalling is the process of converting
    sequences of parameters and complex data
    structures into flat strings of bytes that can be
    transmitted over a communications link.
    Unmarshalling is the process of correctly
    restoring the original structures at the
    receiving end.

59
Enterprise Application Integration
  • Middleware is a type of software that facilitates
    the communication of requests between software
    components through the use of defined interfaces
    or messages. In addition, it provides the
    runtime environment to manage the requests
    between software components.

60
Enterprise Application Integration
  • RPC
  • Data access middleware
  • Message oriented middleware
  • Distributed object technology
  • Transaction processing monitors

61
Enterprise Application Integration
  • Remote Procedure Calls is a type of middleware
    that is based on the notion of developing
    distributed applications that integrate at the
    procedure level.

62
Enterprise Application Integration
  • Database access middleware is a type of
    middleware that is based on the notion of
    accessing distributed data whether in files or
    databases.

63
Enterprise Application Integration
  • Open Database Connectivity
  • OBDC

64
Enterprise Application Integration
  • Message oriented middleware is a type of
    middleware that uses messages as the method of
    integration it provides the ability to create,
    manipulate, store, and communicate these messages.

65
Enterprise Application Integration
  • Distributed object technology is a type of
    middleware that extends the concepts of
    object-oriented technology to distributed
    processing. Interfaces are developed for
    applications that make software look like
    objects.

66
Enterprise Application Integration
  • Transaction Processing monitors are a type of
    middleware that preserves the integrity of a
    transaction. They support features such as
    rollback, failover, auto restart, error logging,
    and replication to eliminate single points of
    failure.

67
Enterprise Application Integration
  • VERY IMPORTANT
  • Atomicity
  • Consistency
  • Isolation
  • Durability

68
Enterprise Application Integration
  • Atomicity
  • Transaction is all or nothing.

69
Enterprise Application Integration
  • Consistency
  • Transactions always go from one consistent state
    to another.

70
Enterprise Application Integration
  • Isolation
  • Does not affect other data or processes
  • Durability
  • Recorded on nonvolatile medium

71
Enterprise Application Integration
  • Rollback capability

72
Enterprise Application Integration
  • Service
  • Functional extension to basic communication or
    middleware capability

73
Enterprise Application Integration
  • Chapter 4
  • Messaging key facts

74
Enterprise Application Integration
  • Message queuing is a way to pass data or make an
    invocation of a remote function from a specific
    client to a specific server, or from a server to
    a server. p.63

75
Enterprise Application Integration
  • Request/reply, point to point
  • The request message from a source and the reply
    message from a target will occur within a single
    transaction.

76
Enterprise Application Integration
  • FIFO
  • Publish/subscribe messaging
  • P.65

77
Enterprise Application Integration
  • Message translation is the ability to convert
    data into a form that can be transmitted in a
    message and the subsequent ability to convert the
    data back to its native format once the message
    has reached its target.

78
Enterprise Application Integration
  • Queue management
  • Synchronicity
  • Response time
  • Message content
  • Message size
  • Message priority
  • Queue volume
  • Queue timeouts
  • Queue persistence
  • Queue priority

79
Enterprise Application Integration
  • Persistence is the ability to temporarily store
    the message until delivery.
  • Transitory persistence is for the length of time
    required for one or more functions to complete,
    such as a transaction.

80
Enterprise Application Integration
  • Figures on page 69

81
Enterprise Application Integration
  • Queue manager/router is a service that can
    determine to which queue a message should be
    routed based on message content, queue
    availability, or preset rules.

82
Enterprise Application Integration
  • Message queuing
  • Data transport
  • Data integration
  • Application Integration
  • Enterprise Integration
  • Vendors

83
Enterprise Application Integration
  • MegaMoney Bancorp
  • Goals

84
Enterprise Application Integration
  • Chapter 5 Goals
  • P. 83

85
Enterprise Application Integration
  • Three types of distributed object architecture
    discussed
  • DCOM/COM
  • CORBA
  • EJB

86
Enterprise Application Integration
  • Charts on p. 85, 86
  • OMA
  • The object management architecture is the
    specification for CORBA (Common Object Request
    Broker Architecture) software in the form of
    services and facilities for business domains.

87
Enterprise Application Integration
  • ORB
  • The object request broker (ORB) is the mechanism
    for transparently communicating client requests
    to target object implementations.

88
Enterprise Application Integration
  • Services layers
  • Application objects
  • Domain Facilities
  • CORBA Facilities
  • CORBA Services
  • Object Request Broker

89
Enterprise Application Integration
  • CORBA is a distributed object technology that is
    platform independent and enables remote object
    creation and remote object method invocation. It
    is based on the use of an object request broker
    with published CORBA services.

90
Enterprise Application Integration
  • OMG (Object Management Group) is the focal
    organization for the definition and adherence to
    the OMA and CORBA. http//www.omg.org

91
Enterprise Application Integration
  • ORB is a distributable component that can
    communicate with other ORBS to provide
    distributed object lifecycle services across
    multiple platforms.

92
Enterprise Application Integration
  • ORB provides
  • Operating system transparency
  • Object life cycle services
  • Remote object method calls

93
Enterprise Application Integration
  • CORBA Services offer a set of distributed object
    functionality that is required to be available
    for an application developer to build the
    distributed application on top of, makes CORBA
    easier to use for distributed application
    development, and removes the need to program at
    the communications level of the ORB.

94
Enterprise Application Integration
  • CORBA Facilities are application level services
    that are intended to be used as distributable
    components of a distributed application.
  • Examples p.91

95
Enterprise Application Integration
  • CORBA domains are line-of-business oriented and
    issue specifications for use within their
    specific business domain.
  • Example

96
Enterprise Application Integration
  • CORBA 3 features
  • Firewall spec
  • Interoperable Name Service Specification
  • Asynchronous messaging and quality of service
    control
  • Minimum fault tolerance and real-time CORBA

97
Enterprise Application Integration
  • Fault tolerance is the ability for errors to
    occur without crashing the system, ensuring a
    stable, known system state.

98
Enterprise Application Integration
  • CORBA components p.93-4
  • Drawbacks
  • Stability
  • Services

99
Enterprise Application Integration
  • IBM Component Broker is a CORBA implementation
    and is an enterprise solution for distributed
    object computing that includes an operational
    environment and tool set and is available as a
    part of IBM Enterprise Edition of WebSphere
    Application Server.

100
Enterprise Application Integration
  • Thin clients
  • P.98

101
Enterprise Application Integration
  • Microsoft Windows DNA
  • Does not use CORBA
  • Uses COM model

102
Enterprise Application Integration
  • Sun
  • J2EE
  • EJB environment

103
Enterprise Application Integration
  • MegaMoney Bancorp

104
Enterprise Application Integration
  • Transaction architecture
  • Key facts p.107

105
Enterprise Application Integration
  • Transaction processing monitors ensure the
    integrity of business processes by providing
    atomicity, consistency, isolation, and durability
    of transactions.

106
Enterprise Application Integration
  • VERY IMPORTANT
  • Atomicity
  • Conistency
  • Isolation
  • Durability

107
Enterprise Application Integration
  • Atomicity
  • Transaction is all or nothing.

108
Enterprise Application Integration
  • Consistency
  • Transactions always go from one consistent state
    to another.

109
Enterprise Application Integration
  • Isolation
  • Does not affect other data or processes
  • Durability
  • Recorded on nonvolatile medium

110
Enterprise Application Integration
  • P.109 transactions
  • A transaction is the implementation of one or
    more business functions based on associated
    business rules, where the transaction is
    completed only when all of the required business
    functions are completed as specified by the
    business rules.

111
Enterprise Application Integration
  • Rollback capability

112
Enterprise Application Integration
  • Mainframe Transaction processing monitors
  • CICS
  • IMS

113
Enterprise Application Integration
  • Distributed Transaction Processing Monitors
  • BEA Tuxedo
  • Transarc Encina

114
Enterprise Application Integration
  • Distributed Transaction Processing standard is an
    open industry standard that specifies how
    transactions are to be coordinated. The DTP is
    widely supported by databases and TPMs.

115
Enterprise Application Integration
  • Four participants
  • Applications
  • Resource Managers
  • Transaction Managers
  • Communication resource managers

116
Enterprise Application Integration
  • Two-phase commit is the mechanism used by the DTP
    to ensure the integrity of distributed
    transactions.

117
Enterprise Application Integration
  • Transaction monitor services
  • Programming models
  • Synchronous request/response
  • Asynchronous request/response
  • Conversational
  • Events

118
Enterprise Application Integration
  • Message queuing
  • Security
  • Conversion and translation
  • Server management
  • Administration
  • Gateways

119
Enterprise Application Integration
  • Object transaction monitor
  • An object transaction monitor is a product that
    provides distributed objects with transactional
    integrity.

120
Enterprise Application Integration
  • Object transaction service is the CORBA standard
    for distributed object transactions. OTS defines
    how the Open Group model can be applied to CORBA
    objects.

121
Enterprise Application Integration
  • Example on p. 121

122
Enterprise Application Integration
  • A nested transaction is a transaction within a
    transaction.

123
Enterprise Application Integration
  • EJB model is strongly transactional.

124
Enterprise Application Integration
  • Strengths and weaknesses
  • Integrity
  • Coordination
  • Services
  • Too tightly coupled
  • Too time consuming
  • Legacy problems

125
Enterprise Application Integration
  • Alternatives
  • Messaging completed or certain to be completed
  • Must be transactional
  • Integrity will not be compromised by deferring
  • Soft rollback

126
Enterprise Application Integration
  • MegaMoney example
Write a Comment
User Comments (0)
About PowerShow.com