WebSphere Message Broker Application Development Training

1

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