WebSphere Message Broker Application Development Training
-
Upload
vijaya-raghava-vuligundam -
Category
Education
-
view
35.705 -
download
39
Transcript of WebSphere Message Broker Application Development Training
-
Prepared by: V Vijaya Raghava
WebSphere Message BrokerConcepts, Technical Walkthrough, Application Development
-
Prepared by: Vijaya RaghavaMobile: +91.900.076.7644Email ID: [email protected]
Prepared and Updated on: July 19, 2013Version 1.51
mailto:[email protected]
-
3
Agenda Pre-requisites for the Training Introduction Application Integration The Complexity of Application Integration Challenges and Issues Businesses are facing today Point-to-Point Communication Enterprise Application Integration Why EAI Defining EAI The Connectivity Challenge Types of EAI
EAI Approach to Integration Enterprise Application Integration Benefits
-
4
Agenda contd Service Oriented Architecture What is a service SOA Definition How do you know when youve got SOA? SOA vs Traditional EAI Benefits of SOA Principles & Benefits of SOA
Enterprise Service Bus Definition SOA with an ESB ESB Flexibility An ESB gives SOA its full value Integrating business applications through an ESB
-
5
Agenda contd Enterprise Service Bus Different kinds of ESB Examples of ESB
Various Middleware Products
-
6
Agenda contd Introduction to WebSphere Message Broker Overview Quick Tour WebSphere Message Broker Platform Support Database Support Protocol, Transports, Data Formats and Processing
Support WebSphere Message Broker Business Scenario Technical Overview Architecture Capabilities
Enterprise Messaging Message Brokering
-
7
Agenda contd Publish & Subscribe Publish & Subscribe Implementation WebSphere MQ Interoperability WMB Components Development Environment Runtime Environment
WMB Components Interaction
-
8
WebSphere MQ Explorer Message Flow Revisited Message Broker Parsers Message Tree Logical Tree Structure Message tree structure Environment tree structure Local environment tree structure Exception list tree structure
Message Flow Editor WebSphere Message Broker Software Components
Agenda contd
-
9
WebSphere Message Broker Built-in Nodes WebSphere Information Centre
Agenda contd
-
10
Agenda contd Technical Introduction to WebSphere MQ Todays Enterprise IT Environment Why Interfaces are so expensive to build and maintain ? Service Oriented Architecture Revisited Program-to-Program Communication Synchronous Communication Model Asynchronous Communication Model Program-to-Program Communication Factors Time Independence Three Styles of Communication WebSphere MQ Eliminates application network concerns
-
11
Agenda contd Technical Introduction to WebSphere MQ Local and Remote Queue Concept Message Queue Interface Message Queue Interface Calls Message Composition Message Types Message Persistence Queue & Queue Manager Message Queues Types Queues Expiry Message Broker User Roles How MQ Series Works
-
12
Agenda contd Technical Introduction to WebSphere MQ Deployment Process using MQ Explorer Message Broker Queue Explorer Transformation interfaces
-
13
Agenda contd Prerequisites Introduction to ESQL ESQL Overview Datatypes Operators Variables Statements Functions & Procedures Field References Modules
Reserved Words Non Reserved Words Special Characters Managing ESQL files Writing ESQL files Programming Examples
-
14
Agenda contd
Developing Applications using ESQL LAB 1 - Simple Hello World Application
Developing Applications using ESQL LAB 2 - Bookstore Application
-
15
Agenda contd
Developing Applications using Java Concepts Developing Applications using Java Labs LAB 3 - Simple Hello World Application LAB 4 - Connecting with Database (Bookstore Application)
-
16
Agenda contd
Developing Applications using Mappings Concepts LAB 5 - Simple Hello World Application Message Sets and Message Definitions The Message Set Editor The Message Definition Editor The Message Mapping Editor LAB 6 - Simple Mapping Concept
-
17
Agenda contd
WebSphere Message Broker Installation, Startup Configurations Message Broker Installation Startup Configurations Windows 7 Startup Configurations Windows XP
Testing Message Flow Applications Creating / Deleting Default Configurations Testing Message Flow Applications using Test Client Testing Message Flow Applications with SoapUI Debugging Message Flow Applications
-
18
Agenda contd
WebSphere Message Broker Examples Application Samples LAB 710
Technology Samples LAB 1115
Troubleshooting & Problem Determination Documentation
-
19
Prerequisites for the training Attendees are expected to have an understanding of the following: Debugging in Rational Application Developer. XML Concepts including the following:
XML Syntax XML Naming Conventions Prolog Processing Instructions Comments Document Type Definition Elements Attributes Entities XML Namespaces Validation of XML Documents XML Schema
Web Services Concepts (including SOAP, WSDL)
-
Application Integration
-
21
Agenda What is an Application? Introduction to Application Integration Challenges and Issues Businesses facing today Point-to-Point Communication The Complexity of Application Integration Point-to-Point Communication Consequences Enterprise Application Integration
Why EAI Defining EAI The Connectivity Challenge Types of EAI EAI Approach to Integration EAI Benefits
-
22
What is an Application ?
User InteractionLogic
DataLogic
IntegrationLogic
ProcessLogic
Business Rules
This image cannot currently be displayed.
This image cannot currently be displayed. Monitoring &ManagementLogic
PresenterPresentation NotesWhat is an application ?Application software is all the computer software that causes a computer to perform useful tasks (compare with Computer viruses) beyond the running of the computer itself. A specific instance of such software is called a software application, application or app.What are the components of the Application ?
Application software is a defined subclass of computer software that employs the capabilities of a computer directly to a task that the user wishes to perform.Application software consists of logic related to User Interaction, Data, Integration, Processing, Business Rules and Monitoring and Management.
-
23
Introduction to Application Integration Present Situation
Your organization probably uses many applications and services that were built over many months or years.
Now new business needs were identified. As a result, these applications probably are of different ages,
were written by different people using different languages and technologies, reside on different hardware platforms, use different operating systems, and provide very different functionality.
Impact Many of your applications often have very little in common at all Resulting in isolated functionality and multiple instances of the
same data Redundant activities, higher costs, and inefficient response to
your customers.
PresenterPresentation NotesIf you have read this far, your organization has probably identified a businessrequirement for applications to work together. Just as employees have to worktogether to meet business goals, your applications need to do the same.
-
24
Introduction to Application Integration Enterprise systems consist of many logical endpoints
Off-the-shelf apps, services, packaged applications (SAP, Siebel etc) Web applications, devices, appliances, custom built software and many
more! Endpoints expose a set of inputs and outputs, which comprise:
Protocols such as MQ, TCP/IP, database, HTTP, files, FTP, SMTP, POP3 Formats like (C/COBOL), XML, industry (SWIFT, EDI, HL7), user-defined
Point-to-point connections quickly deteriorate into spaghetti Inflexible architecture which is expensive to maintain and resistant to
change Message Broker connects these endpoints together in
meaningful ways Message Broker simplifies application and device integration! Avoids rewrites in response to new integration requirements Simplifies maintenance by reducing expensive coupling Flexibility adding anonymity between producers and consumers of data Adds insight into applications and business value they bring
-
25
Introduction to Application Integration
Application integration (sometimes called Enterprise Application Integration or EAI) is the process of bringing data or a function from one application program together with that of another application program.
Application integration is the secure and orchestrated sharing of processes and/or data between applications within the enterprise.
Application Integration is a big challenge for enterprises
PresenterPresentation NotesEffective business integration delivers flexibility by allowing business resources both inside and outside an organization to work together to support a company business strategy. These resources can include data, applications, processes, and people. Why is there such a focus on business integration today? These days business needs change rapidly. Technology changes just as quickly. Over the last 30 years companies have made significant investments in IT, each time choosing as a solution the best technology available.
What is the problem with choosing as a solution the best technology available? Technology of today does not integrate seamlessly with past solutions. There are redundancies and inefficiencies in these systems that hamper the growth and management of businesses. New mergers and acquisitions are announced almost every day. Companies choose outsourcing as one means to allow themselves to focus on their own core competencies. This requires a growing dependence on business partners and a growing need to provide seamless integration with them.
One way to begin to achieve integration throughout a business is by providing the ability for the business systems to work together. In other words, there is a need to integrate the software and applications. To do this, technologies are needed that can interoperate easily. Standards are required that specify consistent styles of interaction and communication. Moving forward, an understanding that business integration is not just a technical problem is needed. It is also a business problem. To truly solve it, the IT development and business management sides of the organization need to work hand in hand. For many organizationsthat may require a change in the way they think and in the way they work.
-
26
Challenges and IssuesBusinesses facing today
How are Composite (Integrating) Applications different?
The Good Old Days 1 mainframe computer 1 user device 1 network connection 1 population of users 1 set of user requirements 1 user location 1 program 1 program owner
Composite Applications Many computers Many user devices Many types of network connections Many diverse populations of users Many different user requirements Many user locations Many programs Many program owners
-
27
Challenges and IssuesBusinesses facing today Lack of business process
standards Architectural policy limited Point application buys to
support redundant LOB needs
Inflexible infrastructure built over time, no roadmap
-
28
Challenges and IssuesBusinesses facing today
Inflexible IT systems: Symptoms and solutions
Symptom SolutionMultiple applications Multiple platforms
Componentize application and ITfunctions
Varying degrees of interoperabilityNo seamless integration
Implement a standard method forapplications to interact with each other
Changes to one system =changes to other systems Decouple system interfaces
No common data formator process model
Implement common method forviewing/using data and processes
-
29
Challenges and IssuesBusinesses facing today
How to move forward
-
30
Point-to-Point Integration
In a point-to-point integration model, a unique connector component is implemented for each pair of applications or systems that must communicate.
This connector handles all data transformation, integration, and any other messaging related services that must take place between only the specific pair of components it is designed to integrate.
Best suited for small infrastructures, where only two or three systems must be integrated
-
31
The Complexity of Application Integration
A B
CDE
-
32
Point-to-Point Integration Consequences
Point-to-point connections quickly deteriorate into spaghetti Inflexible architecture which is expensive to maintain and resistant to
change
PresenterPresentation NotesMessage Broker connects these endpoints together in meaningful waysMessage Broker simplifies application and device integration!Avoids rewrites in response to new integration requirementsSimplifies maintenance by reducing expensive coupling Flexibility adding anonymity between producers and consumers of dataAdds insight into applications and business value they bring
-
33
Enterprise Application Integration Application integration refers to solutions that are implemented to
integrate software applications within and between organizations Represents the task of integration of various applications so that
they may share information and processes freely. Is the creation of robust and elegant business solutions by
combining applications using common middleware and other viable technologies.
Application Integration is concerned with: integration of legacy software applications,
these applications vary across departments, Written by different people at different times exist on different platforms, Coded in different programming languages use different data formats and provide different functionality Different user interfaces exist for each application.
Integrating the applications is a more practical and cost effective solution than the alternative of re-writing the existing applications.
-
34
Why EAI ?
System development over the last 20 years has tended to emphasize core functionality as opposed to integration
Many systems are highly stovepiped There are a number of organizations fitted with different types of
open and proprietary systems. each with its own development, database, networking and operating system. Thus resulted a heterogeneous environment.
Ultimately, it comes down to a cost issue. Building a system with integration in mind reduces the amount of money spent on further system development
Necessity of interconnection of disparate systems in order to meet the needs of the business
PresenterPresentation Notesstovepiped (to develop, or be developed, in an isolated environment / to solve narrow goals or meet specific needs in a way not readily compatible with other systems. ) and difficult to integrate with other similar systems
-
35
Why EAI ? Contd Evolution of Stovepipes
Systems tend to support single organizations with little initial incentive to integrate with other departments
Failure of mainframes to solve problems, provide features to users, etc. tend to act as an incentive to stovepipes
Organizations tend to protective of their systems and are unwilling to compromise
-
36
Why EAI ? Contd
Integration of Stovepipe Applications Is Very Difficult
Product Management
DB2
InventoryManagement
ConfigurationManagement
ServiceOrder
Management
TroubleManagement
BillingManagement
PerformanceManagement
Oracle Oracle DB2 Oracle DB2 Oracle
Data Redundancy Synchronization Problems Application Authorization Issues Vendor and Application Lock-in
Isolated data silos Administrative Nightmare Integration/customization
Nightmare Transition from legacy systems to
a more flexible new operational infrastructure
Architectural Issues Integration Issues
-
37
Defining EAI
EAI is defined as the unrestricted sharing of data and business processes among any connected applications and data sources in the enterprise.
Using EAI effectively will allow us to integrate without have to make major changes to our current infrastructure.
-
38
Defining EAI contd
User Interfacelevel
Datalevel
App Interfacelevel
Methodlevel
Legacy
Data
PackagedApplication
BusinessProcess
-
39
Defining EAI contd
Traditional Systems Generally referred to as legacy systems May consist of anything from PCs to minicomputers, even large
mainframes While the architecture of these systems may be obsolete, they still
contain functionality that must be maintained by the organization in order to do its job.
Microcomputer Systems Personal computers A wide range of hardware, operating system and applications
make it difficult to integrate these systems with each other or legacy systems
-
40
Defining EAI contd
Distributed Systems Some number of systems tied together by a network that
supports applications run across the network May comprise the range of computer sizes A wide range of system types exist: client/server, Internet,
intranet, etc. Packaged Systems
Off-the-shelf software Software that is purchased rather than designed Most are natural stovepipes, since they havent been designed
with integration in mind and are closed systems
-
41
Defining EAI contd
How did the things get this Bad ? Most organizations lacked architectural foresight. As they upgraded from legacy systems, they moved to newer
open systems without consideration to how well these new systems would fit into their current structure and integrate with existing legacy systems.
PresenterPresentation NotesHow is EAI different?EAI focuses on the integration of both business-level processes and data whereas the traditional middleware approach is data oriented.EAI includes the notion of reuse as well as distribution of business processes and data.EAI allows users who understand very little about the details of the applications to integrate them.
-
42
Defining EAI contd
Enterprise Chaos
-
43
Defining EAI contd
Application Complexity increases as technology is added
WebSphere MQ
soap/httpsoap/jms
http
File
MQ/JMS
-
44
The Connectivity Challenge
Why?
More Flexibility
More Speed
More Efficiency
Better Services
Better Information
Increased Revenue
Reduced Cost
Lower Risk
Customers want to improve this.
to run their business like this.
PresenterPresentation NotesLets talk about some of the reasons why businesses are taking steps to increase their flexibility and reuse through SOA. They come out of the same set circumstances.Nothing in IT Service Mgmt that is going to give you a flexible set of interfaces that can be accessed by some sort of standard directorySM is an organized way of managing what youve gotSOA is a new way of organizing what you have. Largely you are taking existing assets and categorizing them into reusable components, assable, reusable, standardized by a published directory. Too many competing visual paradymsTakes something that is overwhelmingly complex and makes it simpler. Look at the way of doing
ISM is a new way of managing what you have.
A business can only be as flexible as the IT systems that support it. On the left, youll see an actual application architecture for a consumer electronics company. This level of complexity does not lend itself well to supporting a flexible business and its a perfect example of the kind of barrier were talking about. What leads to this kind of mess?
When there are no standards or best practices to guide business processes they tend to grow out of control. The same thing happens when architectural policies and application purchases are focused on solving specific, ad-hoc issues without long-term vision, you wind up with a jumbled mess that is very difficult to unwind when it is time to implement changeOverall, the culprit is the IT infrastructure that has grown bit by bit, piece-by-piece over the years with no recognizable roadmap. Linkages between pieces of this infrastructure tend to be inflexible and very difficult, expensive, and time-consuming to change.
If you look at the graphic at the right, what youll see is what a sample business process (in this case, multi-channel retail) looked like in a traditional business compared to todays world-class businesses. In the past, you saw companies with very linear business processes that were handled by an individual department within a company. As sophistication increased, you saw the same business processes being broken up and pieces of it being performed in different places. In this example, customers placed orders directly through the web, shared services in different parts of the company like merchandising or supply chain took over steps of the process; suppliers contributed vendor managed inventory; shipping was outsourced, and so on and so forth. This kind of dis-aggregation takes a lot of flexibility to establish and even more to change once its established. Its important to remember that the business process in this example and very nearly every other business process in todays companies are very dependent on the information technology (or IT) systems that support them. Flexible business requires flexible IT. So what forces are driving the need for this kind of flexibility?Economics for one thing. As the marketplace globalizes, new markets, new workforces, and new competitors are making companies look for ways to adapt more quickly.We see the cycle time shrinking between changes in business processes. While you might have seen companies make significant changes yearly in the past, youll see the same level of change on a monthly or even weekly or daily basis.While business leaders were focused mostly on cost-containment in the past, were seeing that growth is back at the top of the todays CEOs agenda and that growth demands the flexibility to be more nimble than competitors.This isnt to say that cost reduction has lost its importance. On the contrary, businesses are looking for ways to make better use of the investments that they already have. IBMs experience shows that companies are seeing savings of about 20% through re-use. Other sources put that figure even higher { additional resource: we estimate that a reasonable savings due to reuse is approximately 80% of the cost needed to develop the same software development asset (SDA) for one-time use. The business case for software reuse, Jeffrey Poulin and Brent Carlson, Computerworld, February 2, 2004}And finally SOA and the flexibility it brings is crucial for becoming what we at IBM call an On Demand Business.
-
45
Defining EAI contd
Using EAI Technology to bring order to the enterprise
PresenterPresentation NotesMost enterprises leverage many different technologies. The integration of these technologies is almost always a difficult and chaotic proposition.
When using the point-to-point approach, integrating applications comes down to altering each application to be able to send and receive messages. This can beaccomplished with any number of message-oriented middleware (MOM) products (e.g., IBM's MQSeries). While this is easily managed within the context of integrating two applications, integrating additional applications demands additional pipes. If you have successfully integrated application A with application B and would like to include applications C and D, you will have to create a pipe between each involved application.
-
46
Types of EAI
An enterprise system is made up of business processes and data.
So when an IT expert contemplates to use EAI technology, he has to first understand how these business processes are automated and the importance of all business processes.
This understanding will bring out a lot of useful hints: For determining the amount of work needed How much time it will take Which business processes and data are to be integrated etc.
-
47
Types of EAI Contd
At What Level EAI is needed in an application? Data Level Application Interface level Method Level User Interface level
-
48
Types of EAI Contd
Data Level Is the process and the techniques and technology of
transferring data between data stores. This can be described as extracting information from one
database, if need, processing that information, and updating the same in another database
Advantages Cost Effective
No Code Changes No Deployments
-
49
Types of EAI Contd
Application Interface Level leveraging of interfaces exposed by custom or packaged
applications. Developers make use of these interfaces to access both
business processes and simple information. Using these interfaces, developers are able to bring many
applications together, allowing them to share business logic and information.
Advantages & Usage Most preferred EAI technology for this type is Message
Brokers (Eg: IBM WebSphere Message Broker ) as these can extract the information from one application, put
it in a format understandable by the target application and transmit the information.
-
50
Types of EAI Contd
Method Level Allows the enterprise to be integrated through the sharing of
common business logic or methods. This can be accomplished by:
Defining methods that can be shared and therefore integrated by a number of applications
Providing infrastructure for such method sharing. The mechanisms to share methods among applications are
many including distributed objects, application servers Methods can be shared by
Hosting them on a central server Accessing them between applications (distributed objects)
-
51
Types of EAI Contd
User Interface Level Developers are able to bundle applications by using their user
interface as a common point of integration. For example mainframe applications that do not provide
database level access may be accessed through the user interface application
-
52
EAI Approach to Integration
Creation of business solutions by combining applications using common middleware.
Middleware is application-independent product that provides services that mediate between applications.
Rather than each application requiring a separate connector to connect to every other connector, components in an EAI-based infrastructure use standardized methods to connect to a common system that is responsible for providing integration, message brokering, and reliability functionalities to the entire network.
EAI loosens the tightly coupled connections of point to point integration
An application can send a message without any knowledge of the consumer's location, data requirements, or use for the message
Linking Applications, Services, Databases and Legacy Systems
-
53
Enterprise Application Integration Benefits
Effective application integration can provide your organization with the following important business benefits: Allowing applications to be introduced into the organization more
efficiently and at a lower cost Allowing you to modify business processes as required by the
organization Providing more delivery channels for your organization Allowing you to add automated steps into business processes that
previously required manual intervention
-
?
-
Service Oriented Architecture Introduction
-
56
Agenda Current Environment Service Oriented Architecture Introduction Bridging the Gap between Business and IT: How? SOA Introduction What is SOA? SOA vs Traditional EAI Before and After SOA Why SOA? SOA Simplifies Connectivity Interfaces Value of SOA SOA is an evolutionary step Expanding SOA Footprint Principles of SOA Benefits of SOA Applying SOA Challenges
-
57
Current Environment
-
58
Service Oriented Architecture
What is a Service ? A service is an application function packaged as a reusable
component that can be used in a business process. Exposes a well defined interface Appears as a self-contained function Uses messages to hide implementation details Has no dependencies on the state of other services
Reusable services Service Oriented Architecture (SOA) is an architectural style to reuse and
integrate existing systems for designing new applications. The goal of SOA Integration is to expose an organization's computing
assets as reusable services that can communicate and integrate more readily. This can eliminate the "integration spaghetti" that exists in most companies today.
PresenterPresentation NotesServices are repeatable business tasks. Business processes are a series of servicessnapped together like building blocks. SOA is an architectural style that makes thispossible.It is important to stress that what is being talked about here is a part of a business process.Do not think about software or IT. Think about what your company does on a day to daybasis and break those business processes up into repeatable business tasks orcomponents.
Leverages open standards to represent software assets as servicesProvides a standard way of representing and interacting with software assetsAllows individual software assets to become building blocks that can be reused in developing other applicationsShifts focus to application assembly rather than implementation detailsCan be used ly to create new applications out of existing componentsCan be used externally to integrate with applications outside of the enterprise
Service-oriented architecture provides the concept for describing, programmatically discovering, and using operations packaged as services. SOA has been used in various forms for many years. It can and has been implemented using a number of different distributed computing technologies, such as CORBA or messaging middleware. The effectiveness of service-oriented architectures in the past has always been limited by the ability of the underlying technology to interoperate across the enterprise. The key goal of a service-oriented architecture is to achieve loose coupling between interacting software agents.
Services are generally considered to have a component appearance from the perspective of a service consumer (requester). They should be loosely coupled. Consumers should only need to understand the content of the messages going back and forth and should not need to understand the underlying APIs, file formats, or platforms used by the service itself. Services should have a well-defined interface that is independent of any particularimplementation technology. Finally, services should be stateless. Every message sent must contain enough information for the provider to process it.Services can be coarse grained, fine grained, or somewhere in between. A coarse grained service is one that exposes a very high level business function that, when invoked, calls many other services. A fined grained service is one that implements a very specific function and only that function. Who defines the things that should be services within an organization? This is where collaboration is needed between the IT development and business management sides of a company. At a high level, a coarse grained service would represent a business process. This is not a trivial part of SOA design.
Services are functions or operations available across anetwork: Well-defined interfaces Well-defined quality of service (QoS) capabilities and requirements Well-known endpoints Services can be integrated across or within enterprises Services are accessible independently of implementation ortransport Services are offered by service providers Publish interface, policies and endpoint Services are used by service consumers Securely, transactionally scoped, reliably Services are mediated by service mediators andintermediaries Providing extensible discovery, selection, metering, monitoring, logging, and soforth
-
59
Bridging the Gap between Business and IT: How?
How do I optimize my
business processes?
Business ModelsIdentify Process Activities
I/T Components exposed as SOA Services
How do I integrate to my existing systems?
Business and I/T can use a
common language
a.k.a. Process
Integration
BusinessProcess
Activities =
I/T ServicesGranularity
-
60
SOA Definition An approach for building distributed systems that
allows tight correlation between the business model and the IT implementation.
Characteristics: Represents business function as a service Shifts focus to application assembly rather than
implementation details Allows individual software assets to become
building blocks that can be reused in developing composite applications representing business processes
Leverages open standards to represent software assets
-
61
What is Service Oriented Architecture (SOA) ?
a service?
A repeatable business task e.g., check customer credit; open new account
service orientation?
A way of integrating your business as linked servicesand the outcomes that they bring
service oriented architecture (SOA)?
An IT architectural stylethat supports service orientation
a composite application?
A set of related & integrated services that support a business process built on an SOA
PresenterPresentation NotesLets start by looking at some base-line definitions so were all talking about in the same terms.First of all, what is a service? Its important to stress that were talking about a part of a business process here. Dont think about software or IT. Think about what your company does on a day to day basis and break those business processes up into repeatable business tasks or components.Second, what is Service Orientation? Building on our definition of a service, Service Orientation is a way of integrating your business as linked services and, more importantly, the outcomes that they bring. Were still not talking about technology; were talking about a thought process and a business philosophy.What is SOA? It is quite simply the IT architectural style that supports the Service Orientation thought process makes it a reality. And finally, what is a Composite Application? So composite applications are the actual running services that have been assembled and strung together to support the what your business does. SOA helps make building and adjusting composite applications fast and easy.
-
62
SOA Definition
An architectural style for building distributed systems that deliver application functionality as services to either user applications or other services
A Software Architecture which defines the use of services to support the requirements of software
users. Resources are available to other participants as independent services accessed in a standardized way.
comprises loosely coupled, high interoperable application services. These services interoperate based on a formal definition independent of the underlying platform and programming language. The interface definition hides the vendor and language-specific implementation.
is independent of development technology (e.g. Java, .NET, COBOL, C, ASM). The software components become very reusable because the interface is defined in a standards-compliant manner.
-
63
Applications can be composed of or exposed as Services
PresenterPresentation NotesOnce you have rendered the applications as service you can construct a business process that co-ordinates activity between them.
-
64
Applications can implement business process workflows by using services
Review application
Review application
Customer eligibility
Retrieve credit report
Retrieve credit report
Credit assessment
Credit assessment
Request additional
info
Request additional
info
Generate declineGenerate decline
Final application
review
Final application
review
Generate approval & account info
Generate approval & account info
Determine Customer Eligibility
Retrieve Credit Report
Request additional info
Generate decline
Etc.
Business Process is implemented by integrating services
PresenterPresentation NotesOnce you have rendered the applications as service you can construct a business process that co-ordinates activity between them. Easy to connect services together without knowing that they had to be connected initially Take components / services and add them together Then, later add more services / components
-
65
SOA vs Traditional EAI
Prior to the advent of SOA, the true contender for Enterprise Integration was EAI. A plethora of tools and technologies emerged in this space quickly to fill the void. However, due to a lack of standards in the initial stages several issues arose, including: Proprietary vendor toolsets leading to lengthy learning curves Complex and lengthy implementation cycles Department- or Business Unit-Specific containering for EAI
implementations Limited application shelf life Technology-driven implementations without the requisite business
goal analysis.
-
66
SOA vs Traditional EAI contdTraditional EAI SOA
Technology Driven Business Driven
Project Based, confined to Department or Business Group
Enterprise Driven, Company-wide Effort
Generally a Bottom Up approach, driven by product and technology
Starts with Top Down approach, followed by bottom up and then settles with Hybrid
Partially supported by Standards Almost wholly standards based at all levels with XSD, WSDL, JAXWS, BPEL etc.
Extension of client server and Point to Point (Adapter) integration paradigms
New Paradigm that requires a new train of thought
Can work successfully with traditional software development methodologiessuch as SDLC, SCRUM, Agile.
Needs new types of control mechanisms such as Governance and Competency Centers in addition to traditional Methodologies
Integration pattern generally resembles Huband Spoke
Several patterns of integration possible, of which Hub and Spoke can be a component
Does not lend itself to enterprise-wide integration
Complements your existing investment in middleware by adding an Enterprise Integration Layer on top
-
67
Application Centric
Application
ApplicationFinance
DistributionManufacturing
Supply
Narrow Consumers Limited Business Processes
Overlapped resourcesOverlapped providers
Business scope
Application
Integration
Architecture
Business functionality is duplicated in each application that requires it.
EAI leverage application silos with the drawback of data and function redundancy.
bound to EAI vendor
Redundancy
-
68
Service Centric
Service ArchitectureService
Service
Service
ServiceFinance
DistributionManufacturing
Supply
Service virtualizes how that capability is performed, and where and by whom the resources are provided, enabling multiple providers and consumers to participate together in shared business activities.
Multiple Service ConsumersMultiple Business Processes
Multiple Discrete ResourcesMultiple Service Providers
Business scope
SOA structures the business and its systems as a set of capabilities that are offeredas Services, organized into a Service Architecture
Shared
Services
-
69
Before SOA After SOA
-
70
Why SOA ?To enable Flexible, Federated Business Processes
Enabling a virtual federation ofparticipants to collaborate in anend-to-end business process
Enabling alternativeimplementations
Enabling reuse ofServices
Enabling virtualization of business resources Enabling aggregation from multipleproviders
Identification
Ticket Sales
Ticket Collection
InventoryLogistics
ManufacturingAvailability
Service
Service
Service
Service Service
Service
ServiceService Service
Service
Ordering
source:TietoEnator AB, Kurts Bilder
-
71
Why SOA ? To enable Business Process Optimization and the Real Time Enterprise (RTE)
Seamless End to End Process
Systems
SOA Pattern: Standardized Service provided by multiple suppliers
Service from Multiple Suppliers
SOA Patterns: Single, Multi-ChannelService for consistency
BPM Expressed in terms of ServicesProvided/Consumed
Enterprise
source:TietoEnator AB, Kurts Bilder
Smart ClientsStores POS
Mobile3rd Party Agents
Portal
Service to Customers
-
72
Why SOA ? Other reasons
To keep pace with global competition: We are taking apart each task and sending it
to whomever can do it best, and then we are reassembling all the pieces
from Thomas Friedmans The World is Flat
The standards and technology are finally in place, with broad industry support
Availability of best practices for effective governance
The necessary software to get started is available today
-
73
SOA simplifies connectivity interfaces
but you still need to know (1) what services you can connect to, (2) where they are, (3) how to connect to them, (4) how to log into them, (5) how to mediate the differences in data between them.
SOA turns this into this.Application Application Application Application
ApplicationApplicationApplicationApplication
Service Service Service Service
Service ServiceService Service
Interface Interface Interface
Interface Interface Interface Interface
= interface
Enables re-use of both the business applications and their interfaces.
Decouples the interfaces from the business applications.
Reduces the number and technical complexity of interfaces.
Introduces rich business abstractions to describe the application interface.
-
74
SOA Defined in another way
SOA is a software architecture model in which business functionality are logically grouped and encapsulated
into self contained, distinct and reusable units called services that represent a high
level business concept can be distributed over a network can be reused to create new business applications contain contract with specification of the purpose, functionality,
interfaces (coarse grained), constraints, usage ... of the business functionality
Services are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts. Services can be independently evolved, moved, scaled even in runtime.
-
75
Value of SOA
Service orientation promotes few, coarse grained interactions between the service providers and consumers Reduces the dependencies between the two participating entities SOA provides for well-described service interfaces Allows the use of services without the need to understand their
implementation details SOA facilitates technology and platform independence SOA reduces the complexities associated with application integration
along with technology platform independence This should result in low cost of maintenance SOA manifests the same architectural model for both and external
partner application integration
PresenterPresentation NotesHere are some of the technical benefits of adopting SOA: Enables flexible connectivity of applications and resources. Promotes encapsulation which enables reuse: Each aspect of your business iscaptured and implemented in only one place, so changing it is straightforward. Requires the use of implementation independent interfaces, which means thatheterogeneous systems can be integrated and changes to one lead to fewer negativeeffects. Enables process modeling and automation. With clearly defined interfaces between allbusiness systems, you can start modeling (and changing) the business processcaptured by them at a level above individual systems.While SOA offers benefits in development and maintenance costs, flexibility is the primarygoal in service-oriented architecture.Note that a big difference between OO technologies and SOA is that OO technologies arevery technology-specific, whereas SOA separates interface technology from implementation technology. In addition, services are typically more independent thanobjects with respect to deployment.Object programming using interfaces has been common for years; now the focus is movingup to integration using interfaces to realize the same benefits at the enterprise level.
-
76
SOA is an evolutionary stepfor architecture
-
77
SOA is an evolutionary stepin distributed communications
Hub and Spoke
managed / centralized
Supports lose coupling of systems
Message Broker
n lines of connectivity
Centralized management
Limited scalability
Single point of failure
Point-to-Point
unmanaged / decentralized
Suitable for small environments
n lines of connectivity
Message Bus
managed / decentralized
Common communication infrastructure
Common command infrastructure
n lines of connectivity
Proprietary communication protocols
Complex management
-
78
Expanding SOA Footprint
Business Unit 1
Business Unit 3
Business Unit 2
PresenterPresentation NotesFrom the diagram you can see how different business units gets integrated across globe using SOA.
-
79
SOA Principles (self study)
Standardized Service Contracts
Loose Coupling
Abstraction
Reusability
Autonomy
Statelessness
Discoverability
Composability
-
80
Standardized Service Contracts
Services within the same service inventory are in compliance with the same contract design standards."
Services use service contract to Express their purpose Express their capabilities
Use formal, standardized service contracts
Focus on the areas of Functional expression Data representation Policy
-
81
Loose Coupling Service contracts impose low
consumer coupling requirements and are themselves decoupled from their surrounding environment."
Create specific types of relationships within and outside of service boundaries with a constant emphasis on reducing (loosening) dependencies between Service contract Service implementation Service consumers
Source: Thomas Erl
PresenterPresentation Notes SOA is an architectural style with characteristics such as loose coupling, reuse, and simple and composite implementations Loosely coupled services, even if they use incompatible system technologies, can be joined together dynamically tocreate composite services or disassembled just as easily into their functional components Service requesters depend on the interface and not on the service providers implementation Various aspects of service interactions such as time (availability), protocol, message format, language, platform, or location are specified in the service interface separate from the service implementation
Object technologies are mostly tightly coupled. Messaging technologies were developed toloosely couple applications from one another.Tighter coupling tends to cost more over time: Synchronizing multiple organizations on change Adapting and redeploying updated components without affecting others Making changes is hard and expensive, or impossible:- Knowledge is distributed throughout the code- Same people are solving business and infrastructure problems Different parts of the solution are difficult to manage separately Hard to move, hard to scale, hard to distribute, hard to replace More coupling implies more expensive testingLooser coupling requires greater investment up front: More design work More implementation work
-
82
Abstraction
Service contracts only contain essential information and information about services is limited to what is published in service contracts
Avoid the proliferation of unnecessary service information, meta-data. Hide as much of the underlying details of a service as possible.
Enables and preserves the loosely coupled relationships Plays a significant role in the positioning and design of service compositions
Source: Thomas Erl
-
83
Reusability
Services contain and express agnostic logic and can be positioned as reusable enterprise resources."
Reusable services have the following characteristics: Defined by an agnostic functional context Logic is highly generic Has a generic and extensible contract Can be accessed concurrently
Source: Thomas Erl
PresenterPresentation NotesWell-designed services are meaningful and applicable to more than one enterpriseapplication; that is, each service has been design for reuse, not duplication.Steps in designing for reuse:1. Decompose the business need into its necessary function and services (Separation ofconcerns)2. Reuse and create business application specific function and services (Create and reuseservices)3. Utilize common services provided by the operating environment (Leverageinfrastructure)The result is a composite application at run time representing a business process.
-
84
Autonomy
"Services exercise a high level of control over their underlying runtime execution environment."
Represents the ability of a service to carry out its logic independently of outside influences
To achieve this, services must be more isolated Primary benefits
Increased reliability Behavioral predictability
Source: Thomas Erl
-
85
Statelessness
"Services minimize resource consumption by deferring the management of state information when necessary."
Incorporate state management deferral extensions within a service design Goals
Increase service scalability Support design of agnostic logic and improve service reuse
Source: Thomas Erl
PresenterPresentation NotesServices should be stateless (that is, they should not persist conversational state between request/response cycles). However, this need not be true in all cases; services need to be as stateless as possible in the given problem domain and context.
-
86
Discoverability
"Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted."
Service contracts contain appropriate meta data for discovery which also communicates purpose and capabilities to humans
Store meta data in a service registry or profile documents
Source: Thomas Erl
-
87
Composability
"Services are effective composition participants, regardless of the size and complexity of the composition."
Ensures services are able to participate in multiple compositions to solve multiple larger problems
Related to Reusability principle Service execution should efficient in
that individual processing should be highly tuned
Flexible service contracts to allow different types of data exchange requirements for similar functions
Source: Thomas Erl
-
88
Applying SOA Benefits
Asset reuse Service is component of reuse
Lower Development Cost Eliminate duplicate services
Faster Time-to-Value Compose new applications from existing services
Extend Business Reach Allow new clients to exploit existing services without change
Providing a new front end
Business Responsiveness Dynamically reconfigure services to meet new business opportunities
Governance Standardize, mandate and measure service usage
Allows you to introduce control
-
89
Service Orientation
Reuse
Sharing of Responsibilities
Increased complexity!
Applying SOA Challenges
Business functionality has to be made available as services. Service contracts must be fixed
Implemented services must be designed with reuse in mind. This creates some overhead.
Potential service users must be involved in the design process and will have influence on the service design
PresenterPresentation NotesIndependence from Technology - Dependency on the underlying IT infrastructure is reduced so that business departments can focus on functional requirements.Shorter Time to Market- Business departments can achieve a shorter time to market for new functionality.Reduction of Development Costs- The costs for developing new functionality are significantly reduced.
Service Orientation- Business functionality has to be made available as services. Service contracts must be fixed and adhered to.Reuse- Implemented services must be designed with reuse in mind. This creates some overhead.Sharing of Responsibilities- Potential service users must be involved in the design process and will have influence on the service design.
-
?
-
Enterprise Service Bus Introduction
-
92
Agenda What is an Enterprise Service Bus? SOA with an ESB ESB Flexibility An ESB Gives SOA its full value Integrating business applications through an ESB Two core principles of enabling flexibility Different kinds of ESB ESB Example Healthcare Integration ESB Example Retail ESB Example Reservation System ESB Example Role of ESB in an enterprise ESB Example Role of ESB across different businesses Various Middleware Products in the Market Which Middleware Product to choose ???
-
93
What is an ESB ?
A software infrastructure for SOA which comprises a set of interaction points to which services are connected.
Services are able to invoke other services which are connected to the bus.
... simplifies an SOA by minimizing the explicit connectivity between services.
allows the creation of dynamic and flexible connectivity between services during service invocation without changing service consumers or providers.
A Web-services-capable infrastructure that supports intelligently directed communication and mediated relationships among loosely coupled and decoupled biz components. Gartner Group
-
94
SOA with an ESB
Simplification of Infrastructure It DOES simplify the way you think about service connectivity. It DOESNT change the way you think about services.
Dynamic and Flexible Infrastructure New connectivity
e.g. add customer request audit. Flexible connectivity
e.g. prioritize customer request. Service replacement
e.g. New service upgrade without
PresenterPresentation NotesThe enterprise service bus becomes the backbone or central nervous system of theenterprise IT infrastructure. It allows you to connect every system to every other system foreasy message conveyance: Functions from new systems (for example those written for J2EE B2B functions) Functions from existing enterprise applications, even legacy ones such as CICS, easilyattached by way of adapters and connectors Data from a variety of databases, which may be based on different software packages(DB2, IMS) and different vendors Service flow to choreograph all of these into a business process that calls all of theabove Portal systems, which give personalized views of information for human workers Web services using SOAP Connectivity to the business services partnersThe way it works is similar to personal computers. You may decide that you would like to improve the graphics capabilities of your system, so you purchase a new display adapter. Suddenly all the programs on your system can take advantage of new capabilities such as 3D graphics rendering, the ability to play movies without skipping, higher resolution, and higher display performance for all programs. The personal computer uses a hardware bus for connecting all components to the system for access to the applications, which is conceptually similar to how the software that implements the ESB operates.
-
95
ESB FlexibilityThe next stage of Integration
An Enterprise Service Bus (ESB) is a flexible connectivity infrastructure for integrating applications and services.
Point-to-Point connection between applications Simple, basic connectivity
Messaging Backbone
EAI connects applications via a centralized hub Easier to manage larger
number of connections
Enterprise Application Integration (EAI)
Integration and choreography of services through an Enterprise Service Bus Flexible connections with well
defined, standards-based interfaces
Service Orientated Integration
PresenterPresentation NotesThe desire to make IT more flexible is not new. Indeed, it is as old as the IT industry itself. Each of these integration techniques has its place and is appropriate for handling certain situations. SOA blends the best of all these concepts into one new architecture. But its important to recognize that SOA is not the end of the road either, Its the next step in the evolution of flexible infrastructures.
-
96
An ESB gives SOA its full value
An ESB turns this into this.
Service Service Service Service
Service ServiceService Service
Enterprise Service Bus
Service Service Service Service
Service ServiceService Service
Interface Interface Interface
Interface Interface Interface Interface
Logs and manages the interaction and correlates events.
Communicates using the right protocol.
Customizes communications so that the message to the receiver makes sense.
Connects and signs you into the appropriate service without requiring a hardcoded connection.
The ESB:
Enterprise Service Bus
PresenterPresentation NotesSOA can help to simplify how resources interact with each other across diverse platforms and applications by reducing the number and complexities of interfaces. It is this complexity in interfaces, which grows over time, which has been one of the largest barriers to IT driven flexibility. By decoupling the interfaces of applications, and rendering them as services, those services are then much easier to reuse, and less costly and time-consuming to maintain. The Enterprise Service Bus, as a core part of SOA, provides the decoupled connectivity needed to tie together the services into an integrated infrastructure to meet the business needs, insulating the applications and services from the platform, implementation language and more. Thus the ESB delivers the heart of the Smart SOA environment
But even though services can now communicate with each other you still need to know (1) what service to connect to, (2) where it is, (3) how to connect to it, and (4) how to interpret it.
The ESB Mediates between the services transforming, routing, enriching in-flight informationThe combination of the ESB and the underlying messaging backbone :Introduces rich business abstractions to describe the application interface.Decouples interfaces from the business applications and reduces technical complexityConsolidates multi vendor platforms into a unified messaging backbone, enable re-use of both the business applications and their interfacesQoS to match business need, sending the right data to the right service, logs and correlates events
In short the ESB virtualises access to services.
-
97
An ESB gives SOA its full value
Service Enrichment
Match & Route communications between services
Converts between transport protocolsTransforms between data formatsIdentifies and distributes bus events
simplifying the overall architecture and reducing IT cost
-
98
Integrating business applications through an ESB
98
An Enterprise Service Bus (ESB) is a flexible connectivity infrastructure for integrating applications and services.
An ESB performs the following between requestor and service
Connects Everything to everything
Matches & RoutesCommunications between services
ConvertsBetween different transport protocols
TransformsBetween different data formats
DistributesBusiness events
-
99
Integrating business applications through an ESB
Converts between different transport protocols
Matches & routes communications between services
Connects everything to everything
Distributes Business events
Transforms between different data formats
An ESB enables flexible SOA connectivity for integrating business applications, services and processes
PresenterPresentation NotesMain Point: The ESB is widely accepted as a key element at the heart of every successful SOA and provides the basis for a flexible connectivity infrastructure for integrating applications and service. An ESB performs 5 basic tasks as listed on the chart.
Script:As in the client example, many Smart SOA connectivity implementation efforts start with a messaging backbone or Enterprise Service Bus. The Enterprise Service Bus (ESB) can help you achieve the goal of SOA in fact the ESB is widely accepted as a key element at the heart of every successful SOA.
The ESB is a flexible connectivity infrastructure for integrating applications and service. While there is no broad agreement on all of the capabilities which can comprise an ESB, this basic definition is generally accepted by leading analysts and vendors. For example, Roy Shulte of Gartner Group describes an ESB as A lightweight connectivity infrastructure built using JMS, XML, and Web Services standards.
An ESB does five basic things:
CONNECTS everything to everythingIt MATCHES & ROUTES communications between servicesIt CONVERTS between different transport protocolsIt TRANSFORMS between different data formatsIt DISTRIBUTES business events
Additional Information on Enterprise Service BusAn enterprise service bus (ESB) enables a business to make use of a comprehensive, flexible and consistent approach to integration while also reducing the complexity of the applications being integrated. Due to the complex and varying nature of business needs, ESB is an evolutional progression that unifies message oriented, event driven and service oriented approaches for integrating applications and service. Implementing an ESB facilitates greater reuse of IT assets by separating application logics and integration tasks, so you can reduce the number, size, and complexity of integration interfaces. In doing so, you can add or change services with minimal interruption to existing IT environment; reduce cost and risk involved as business changes and new opportunities arise. However simple or comprehensive your ESB infrastructure needs, IBM has the integration middleware that can meet them.
IBM recognizes that a one size ESB will not meet everyones requirements. In our WebSphere portfolio we offer three different ESBs. WebSphere ESB is ideal for customers who have other solutions on WebSphere Application Server, Portal, or BPM platform. Customers may achieve efficiencies in skills, cost, and time-to-value across middleware products if adding WebSphere ESB to their standards-based IT environment. On the other hand, for customers whose primary challenge is integrating a wide range of non-standard applications into the standards world, as well as those who make heavy use of WebSphere MQ will value the flexibility and depth of capability provided by WebSphere Message Broker. And for those who value the simple experience of drop-in installation and admin-based configuration, and require security at the message level, network level, and device level, WebSphere DataPower Integration Appliance brings that in an integrated solution.
Federated ESB: In the fast changing business environment, most enterprises will have multiple ESBs across business units. As business processes span organizational boundaries, businesses will need to enable integration across ESBs. Service governance, security, and management must be considered in a federated approach. IBM has several products that allow you to extend your ESB(s) into a federated model.
ESB - the Connectivity entry point for SOAIBM delivers the most connected SOA for your business by linking together all types of data, applications, protocols and platforms, from sensors, handheld devices and applications to mainframe.IBM has put the ESB at the heart of its middleware strategy and offers three ESB products:WebSphere Enterprise Service: built on WebSphere Application Server for an integrated SOA platform.WebSphere Message Broker: built for universal connectivity and transformation in heterogeneous IT environments.WebSphere DataPower Integration Appliance XI50: purpose-built hardware ESB for simplified deployment and hardened security.Whichever implementation of an ESB is deployed to connect your business, either individually or in combination provides your business with a flexible connectivity infrastructure to power your SOA.
Service GovernanceWebSphere Service Registry and Repository provides an integrated service metadata repository to govern services and manage service lifecycle. It promotes service visibility, consistency, and decreases service redundancy in your SOA.Service SecurityIBM Tivoli Federated Identity Manager propagates across services and federates across domains. Security is "decoupled" from the requesting application and business risk is reduced making security changes tracked.WebSphere DataPower XML Security Gateway XS40 and XML Accelerator XA35 Appliances extend ESB functionality in a hardware form factor with wirespeed performance to simplify, secure and accelerate your SOA deployment.Service ManagementIBM Tivoli Composite Application Manager for SOA enables the management of services as first-class resources. It provides built-in and extensible alerts, situations, workflows and managed mediation primitives to enable powerful automation scenarios.Common CapabilitesAll ESB implementations should consider core capabilities for a complete ESB infrastructure. IBM has key core products to assist in building an ESB infrastructure.WebSphere MQ delivers the proven messaging backbone for SOA connectivity spanning across over 80 platform configurations while preserving data integrity end-to-end.WebSphere Transformation Extender offers universal transformation deployable anywhere in the enterprise, and provides consistent data transformation and validation across any infrastructure with its enterprise and industry packs.WebSphere Adapters helps you to service-enable packaged applications or other legacy assets so they can participate in an SOA.IBM makes Federated ESB real todayOne of the benefits of adopting a Service-Oriented Architecture is the ability to start your move to SOA no matter how your business runs today. As the leading provider of proven integration middleware, IBM can provide the ESB capabilities and supporting Federated components you need to implement a Federated model today.
-
100
Two core principles of enabling flexibilityThe ESB faciltates the decoupling of interactions between
requestor(s) and provider(s)
Service VirtualizationRouting
Protocol and transports
Transformation of interfaces
The ESB fulfils two core principles in support of separation of concerns:Aspect Oriented ConnectivitySecurity
Managementetc
Log and Audit
Event tracking
ServiceRequestor
ServiceRequestor
ServiceRequestor
ServiceRequestor
ServiceProvider
ServiceProvider
-
101
Different kinds of ESB
Basic ESB XML as only supported data format Web Services protocol emphasis (SOAP/HTTP) Adapters for everything
XML conversion on and off the bus Protocol conversion on and off the bus
Advanced ESB All formats supported natively
XML, COBOL, C, SWIFT, EDI, MIME, Acord, X12 All protocols supported natively
Web Services PLUS MQ, JMS, File, SCADA device, user defined Minimizes need for adapters
Improves performance and manageability
WebSphere MQ and Message Broker form an Advanced ESB
-
102
ESB Example Healthcare Integration
PresenterPresentation NotesHealthcare IntegrationIn many geographies radiology skills are in critically short supply Message Broker can be used to route DICOM images to external experts Routing based on data in the DICOM payload (for example, a clinical code)This use case draws together many common aspects of integration Routing, data transformation, industry formats and protocols Also highlights the inherent flexibility in using an integration engine
-
103
ESB Example Retail
An Enterprise Service Bus lets you add new services gradually.
Internet
Trading partner communities
Analytics & Optimization
DMZ DMZ
Internet
Customer communities
Enterprise
APP
APP
Service
Service DBAPPDB
APP
APP DB
Commerce
Web eCommerce
Retail is a great example of the broad landscape of integration Many different end points both inside and outside the organisation Multiple formats and protocols (TLOG, files, JSON/HTTP etc) plus devices Flexibility is key as new capabilities need to blend in (mobile, analytics etc)
-
104
ESB Example Reservation System
Travel Reservation
Process
New ChequeTravellerService
ChequeCredit
Service
BookFlight
Service
HotelAvailability
Service
FlightAvailability
Service TravelReservation
process
TravelReservation
Process
Enterprise Service Bus
New FlightAvailability
Service
Old FlightAvailability
Service
-
105
ESB Example Role of ESB in an enterprise
WebSphere MQ
soap/http
soap/jms
http
File
MQ/JMS
Enterprise Service Bus
-
106
ESB Example Role of ESB across different businesses
-
107
Various Middleware Products
TIBCO
Microsoft Biztalk Server
Oracle Fusion Middleware
WebMethods
Progress Openedge
Jboss Enterprise Middleware
IBM WebSphere Message Broker
-
108
Which Middleware Product to choose ???
If Integrated Development Environments are key to theeffectiveness of your team
If your infrastructure platform is structured around Microsoft .NET technology
If your infrastructure runs on a Java programming platform
-
109
If Integrated Development Environments are key to theeffectiveness of your team
Microsofts solution brings together several languages with developer support for Web, client-server, mobile, reporting, analytics, and integration.
-
110
If your infrastructure platform is structured around Microsoft .NET technology
Finding the closest fit with a .NET architecture will provide you with the most seamless integration when operating on a Microsoft platform.
-
111
If your infrastructure runs on a Java programming platform
Ease of integration, compatibility with existing systems, and scalability are things to keep in mind when selecting your vendor product solution.
-
?
-
Introduction to IBM WebSphere Message Broker
PresenterPresentation NotesThe first section of the presentation provides an overview of the WebSphere Event Broker and WebSphere Message Broker and how you might use the broker in your enterprise.
-
114
Agenda WebSphere Message Broker Overview What is WMB WMB Features Quick Tour Documentation WMB Platform Support WMB Database Support Comprehensive protocols, transports, data formats and processing WebSphere Message Broker Business Scenario
Mergers and Acquisitions Scenario WMB Architecture WebSphere Message Broker Capabilities
Message Routing Interacting with External Systems and Resources Message Broker -Transforms messages in flight Message Transformation and Enrichment
-
115
Agenda contd How do we connect applications? Enterprise Messaging Message Brokering Publish & Subscribe Publish & Subscribe Implementation Publish Subscribe Implementation Example 1: Bus and Train
Schedules Publish Subscribe Implementation Example 2: Bus, Train, Plane
Schedules Publish Subscribe Other Examples
Magazine publishing Airline departure notification
WebSphere MQ Interoperability
-
116
Agenda contd WMB Components - Overview
Development Environment Message Flows Message Sets Broker Application Perspective
Runtime Environment Broker Execution Groups Configuration Manager Broker Domain User Name Server Broker Administration perspective
WMB Components revisited Interaction of Message Broker Main Components WebSphere Message Broker runtime architecture Usage Patterns with Message Broker
-
117
WebSphere Message Broker Overview Business integration is the coordination and cooperation of all
your business processes and applications. It involves bringing together the data and process intelligence in
your enterprise, and harnessing these so that your applications and your users can achieve their business goals.
It provides a mechanism for connecting, routing, and transforming business data from a
variety of transports without any need to change the underlying applications generating the data.
WebSphere Message Broker, in short WMB from now onwards, enhances the flow and distribution of information by enabling the transformation and intelligent routing of messages without the need to change either the applications that are generating the messages or the applications that are consuming them.
PresenterPresentation NotesWebSphere Brokers help you integrate your business processes and applications by bringing together the data and information of your enterprise, allowing you to achieve business goals.
The brokers use WebSphere MQ to provides a secure, platform independent communications infrastructure. It provides you with the flexibility to apply intelligence to your business data as it moves through your enterprise.
-
118
WMB (contd.)
In WebSphere Message Broker, connectivity is provided by applications that communicate by sending and receiving messages.
WebSphere MQ messaging provides a secure and far-reaching communications infrastructure that you can expand with WebSphere Message Broker or WebSphere Event Broker to apply intelligence to your business data as it travels through your network.
Key capabilities that make WebSphere Message Broker a valuable solution for business integration Distributes any type of information across and between multiple
diverse systems and applications, providing delivery of the correct information in the correct format and at the correct time
Reduces the number of point-to-point interconnections and simplifies application programming by removing integration logic from the applications
-
119
WMB (contd.)
Routes information in real time based on topic and content to any endpoint using a powerful publish/subscribe messaging engine
Validates and transforms messages in-flight between any combination of different message formats, including Web Services, and other XML and non-XML formats
Routes messages based on (evaluated) business rules to match information content and business processes
Improves business agility by dynamically reconfiguring information distribution patterns without reprogramming end-point applications
Access control to securely deliver personalized information to the right place at the right time
-
120
So what is WMB ?
WebSphere Message Broker is a powerful information broker that allows both business data and information, in the form of messages, to flow between disparate applications and across multiple hardware and software platforms.
Business rules can be applied to the data that is flowing through the message broker in order to route, store, retrieve, and transform the information.
With WebSphere Message Broker, organizations of any size can eliminate point-to-point connections and batch processing in order to increase business flexibility and smart interoperability of systems regardless of platform, protocol or data format.
-
121
So what is WMB ?
Built for universal connectivity and transformation in heterogeneous IT environments
Range of EAI patterns
Multiple platforms
High volume processing
Extensive transformations of data formats
Standard protocols
Built on WebSphere MQ
-
122
So what is WMB ? contd Endless integration to virtually any
platform, operating system or device Exploits the industry-leading WebSphere
MQ messaging infrastructure Easily handles complex messaging
structures delivering extensive administration and systems management facilities Continued Innovation: Over 100 nodes for connectivity, integration,
and transformation Starter to full enterprise versions Works with the latest implementations of
standards
-
123
WebSphere Message Broker (contd.)
WebSphere Message Broker addresses the needs of business and application integration by managing the flow of information.
It provides services, based on message brokers, to allow one to: Route a message to several destinations, using rules that act on the
contents of one or more of the fields in the message or message header.
Transform a message, so that applications using different formats can exchange messages in their own formats.
Store a message, or part of a message, in a database. Retrieve a message, or part of a message, from a database. Modify the contents of a message; for example, by adding data
extracted from a database.
PresenterPresentation NotesThe Message Broker allows you to manage the flow of information through your enterprise and integrate your applications.
In addition to the publish/subscribe functions of the Event Broker, the Message Broker allows you to:
Using rules based on the contents of the message, to route a message to multiple destinations Transform the format of a message to accommodate the receiving applications requirementsInteract with a database by retrieving a message or storing a message.Modify the contents of a message
-
124
WebSphere Message Broker (contd.)
The benefits of WebSphere Message Broker can be realized both within and outside an enterprise: Processes and applications can be integrated by providing message
and data transformations in a single place, the broker. This helps reduce the cost of application upgrades and modifications.
Systems can be extended to reach suppliers and customers by meeting their interface requirements within the brokers; can help improve the quality of interactions, allowing expeditious responses to changing or additional requirements.
PresenterPresentation NotesUsing the Message Broker to do transformations in a single place enables you to integrate your processes and applications. Since the transformation logic is in a single place, the Broker can help reduce the cost of maintenance and changes to applications.
The Message Broker also provides a mechanism for interfacing with applications outside of your enterprise; you would be able to transform and route data to your business partners and customers, meeting their format requirements.
-
125
WMB Features Universal connectivity from anywhere, to anywhere
Simplify application connectivity for a flexible and dynamic infrastructure
Comprehensive protocols, transports, data formats and processing Connect to applications, services, systems and devices:
MQ, JMS, HTTP(S), SOAP, REST, file (including FTP, FTE, ConnectDirect), database, TCP/IP, MQTT, CICS, IMS, SAP, SEBL, .NET, PeopleSoft, JDEdwards, SCA, CORBA, email and more!
Understands the broadest range of data formats: Binary (C/COBOL), XML, CSV, DFDL, JSON, industry (SWIFT, EDI, HL7 etc),
IDOCs, user-defined Built-in suite of request processors:
Route, filter, transform, enrich, monitor, publish, decompose, sequence, correlate, detect
Extensive management, performance and scalability Extensive administration and systems management facilities for developed solutions Wide range of operating system and hardware platforms including virtual and cloud High performance transactional processing, additional vertical & horizontal
scalability Deployment options include Trial, Express, Standard and Advanced
-
126
Quick Tour
IBM WebSphere Message Broker - Version 7 http://www-01.ibm.com/software/integration/wbimessagebroker/v7-
video.html Quick tour: WMB 6.1
http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.quicktour.doc/doc/quick_tour.htm
Quick tour: WMB 7.x http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.
quicktour.doc/doc/quick_tour.html
Quick tour: WMB 8.x http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.
quicktour.doc/doc/quick_tour.html http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.
quicktour.doc/doc/WMB_BusinessNeeds/tour.html
http://www-01.ibm.com/software/integration/wbimessagebroker/v7-video.htmlhttp://publib.boulder.ibm.com/infocenter/wmbhelp/v6r1m0/topic/com.ibm.etools.mft.quicktour.doc/doc/quick_tour.htmhttp://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/topic/com.ibm.etools.mft.quicktour.doc/doc/quick_tour.htmlhttp://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.quicktour.doc/doc/quick_tour.htmlhttp://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.quicktour.doc/doc/WMB_BusinessNeeds/tour.html
-
127
Documentation
Documentation ( WMB and MQ ) http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/index.jsp http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp
Technical Resources http://www-1.ibm.com/software/integration/wbimessagebroker/library/ http://www.redbooks.ibm.com/abstracts/sg247826.html?Open http://www.ibm.com/developerworks/websphere/library/techarticles/0912_lucas/09
12_lucas.html
http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/index.jsphttp://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsphttp://www-1.ibm.com/software/integration/wbimessagebroker/library/http://www.redbooks.ibm.com/abstracts/sg247826.html?Openhttp://www.ibm.com/developerworks/websphere/library/techarticles/0912_lucas/0912_lucas.html
-
128
WebSphere Message Broker Platform Support
AIX HP-Itanium HP-UX on PA-RISC Linux on POWER Linux on x86 Linux on x86-64 Linux on System z Solaris on SPARC Solaris on x86-64 Windows 32-bit z/OS4
Always check the WebSphere Message Broker site for the latest updateshttp://www-306.ibm.com/software/integration/wbimessagebroker/
PresenterPresentation NotesThe WebSphere Event Broker and Message Broker products are available on the platforms listed above. However, you should always check the WebSphere Message Broker site for the latest updates.
http://www-306.ibm.com/software/integration/wbimessagebroker/
-
129
WMB Database Support
DB2 Informix Microsoft SQL Server Oracle Sybase
-
130
Comprehensive protocols, transports, data formatsand processing Connect to applications, services, systems and devices:
MQ, JMS, HTTP(S), SOAP, REST, file (including FTP, FTE, ConnectDirect), database, TCP/IP, MQTT, CICS, IMS, SAP, SEBL, .NET, PeopleSoft, JDEdwards, SCA, CORBA, email and more!
Understands the broadest range of data formats: Binary (C/COBOL), XML, CSV, DFDL, JSON, industry (SWIFT, EDI, HL7
etc), IDOCs, user-defined Built-in suite of request processors:
Route, filter, transform, enrich, monitor, publish, decompose, sequence, correlate, detect
Universal connectivity from anywhere, to anywhere Simplify application connectivity for a flexible and dynamic infrastructure
-
131
Comprehensive protocols, transports, data formatsand processing Contd
WebSphere MQ Multicast(Reliable Multicast Messaging (RMM))
(Very low latency for LANs)
WebSphere MQ Real-time(Very low latency over WANs, and the
Internet)
WebSphere MQ Telemetry(RFID, sensors & actuators)
WebSphere MQ Everyplace(Mobile device applications)
WebSphere MQ (+ File Transfer Edition)(Enterprise applications (+ managed file transfer))
Any 3rd-party JMS(TIBCO EMS, Sonic MQ, BEA JMS, webMethods,
See Beyond, Vitria)
HTTP and HTTP(S)
TCP/IP Sockets
FTP and File
TIBCO Rendezvous(plug-in component)
SMTP
IBM Protocols Industry and Vendor Protocols
Enterprise Applications
SAPOracle Siebel
JDEdwards
Peoplesoft
CICSCustom
-
132
WMB Business Scenario (self study)
WMB manages the flow of information in your business, applying business rules to route, store, retrieve, and transform the information as required by the different systems in your business and the systems of your customers, suppliers, partners, and service providers.
Mergers and acquisitions scenario
-
133
Mergers and Acquisitions Scenario The Background Company A is a motor and general insurance company that has
been in business for approximately 50 years and currently has approximately 5 million policyholders.
The company uses agents and a call center to communicate with customers. The company has a large legacy IT infrastructure, which includes CICS Transaction Server on z/OS and IBM DB2 Universal Database on z/OS.
Company B is small Internet-based motor insurance company, which currently has less than one million policyholders, and is expanding.
The company's IT infrastructure includes WebSphere Application Server on Windows 2003, and Oracle Enterprise and IBM DB2 Universal Database on Windows XP.
-
134
Mergers and Acquisitions Scenario The Problem Company A acquired Company B to gain access to the Internet-
based insurance market and to use Company B's Internet-based skills and IT infrastructure.
The two companies have customer and policy data of different formats but, for legal reasons, the data from the separate companies cannot be merged.
However, the administration costs of managing the separate IT infrastructures are high. Also, customers, agents, and call center staff need a single administration process to interact with the company's data.
-
135
Mergers and Acquisitions Scenario The Solution
As the two companies have merged: users can request an insurance quotation
by giving some basic personal information in a form on the new company's Web site.
WebSphere Application Server, on which the Web site runs, forwards the request in XML format to WebSphere Message Broker using the request queue in a WebSphere MQ cluster.
WebSphere Messa