Ibm travelframe
This presentation is the property of its rightful owner.
Sponsored Links
1 / 29

IBM TravelFrame PowerPoint PPT Presentation


  • 55 Views
  • Uploaded on
  • Presentation posted in: General

IBM TravelFrame. Arvind Viswanathan [email protected] Any references to future plans are for planning purposes only. IBM reserves the right to change those plans at its discretion.

Download Presentation

IBM TravelFrame

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Ibm travelframe

IBM TravelFrame

Arvind Viswanathan

[email protected]

Any references to future plans are for planning purposes only. IBM reserves the right to change those plans at its discretion.

Any reliance on such a disclosure is solely at your own risk. IBM makes no commitment to provide additional information in the future.


What is travelframe

What is TravelFrame?

  • An IBM e-business architecture that leverages travel industry specific frameworks and standards

  • A Java and XML based toolkit for building travel-related e-business applications

  • An integration platform to allow aggregation of disparate travel applications


What business issues does travelframe address

What Business Issues Does TravelFrame Address?

  • Create solutions at lower cost

  • Faster Time to Market

  • Create solutions that can interoperate more easily

  • Adherence to Industry Standards for application compatibility.

  • Flexible, scalable implementation; ability to maintain and enhance in-house

  • Build travel solutions at lower cost using industry standard frameworks/components


Ibm travelframe1

IBM TravelFrame

  • Travel specific and Infrastructure tooling

  • Vertical Services

    • Air, Car, Hotel Reservation Systems

    • Affinity, Profile Services

    • Geography and Vehicle Information Services

  • Infrastructure tooling

    • “Generation X”

      • XML/Java/SQL bindings from Rose/XIDL

    • XML over HTTP between tiers

    • Programming model

    • Infrastructure can be used in any industry


Travelframe vertical services

TravelFrame Vertical Services

  • Reservation System Framework - Host

    • connectors to Sabre, Galileo (planned) supporting Air, Car, Hotel

    • Works with but not limited to IBM connectivity products (A2CS/ACSA)

  • Mid Tier Business Logic

    • e.g. Site specific rules, Journey Management

  • Geography Services - Connects locations to services provided

  • Affinity Services - Basic functionality for loyalty applications

  • Profile Services - Customer Profile Support

    • Developed to Open Travel Alliance specs.


Travelframe vertical services1

TravelFrame Vertical Services

  • Personalization

    • Export customer data for processing by external DSS

    • Blaze integration (prototyping)

    • Allows business users to define system behavior


Logical layering

ISV Application Software

Domain

and IBM Solutions

Engagements

TravelFrame

Domain

Core

Travel Industry Standard

Content

Java Objects and XML

Cross-Industry

Standard Java Objects

and XML

HTTP

Application

JVM

XML

JNDI

LDAP

Database

JDBC

Server

Horizontal

Distributed

Middleware

Servers: AIX Solaris NT

Platforms

Logical Layering

ReservationSystemFramework

User Profile

Loyalty Framework

ReservationServices

GeographyService

VehicleService

ManagementService

ConfigurationService


Architecture goals

Architecture Goals

  • Robust operational architecture

  • Simple, mature infrastructure

  • Comprehensive security model

  • Reliable

  • Adaptable

  • Scalable

  • Standards-based


Requirements

Requirements

  • Open products for load-balancing/fault tolerance

  • High performance/scalability/reliability

  • Web Server, App Server, Database, OS agnostic

  • Set foundation for future clients

  • Make simple path easy

    • Request followed by persistence or backend access

  • Flexible service deployment

    • Many developers, test environments, deployment environment

  • Lower the bar for developer entry

  • Simplify debugging, testing and maintenance

  • Consistent programming model


Server configuration

Server Configuration

Servlet Engine

Services

HTTP Server

Backend Communications

XML over HTTP

XML over HTTP

Internet

...

XML over MQ

XML over MQ

Channel Tier

Middle Tier

Reservation System Framework Tier

Reservation and Loyalty Systems

Clients


Extensible markup language

eXtensible Markup Language

  • Extensible

    • Tag set is not fixed

  • Structural

    • Deep, hierarchical nesting of structures

    • Can infer meaning from structure

      • Valid document requirement

    • Can check structure against a schema


Extensible markup language1

eXtensible Markup Language

  • Portable

    • Text-based Unicode

    • All parsers must support UTF-8 (US-ASCII)

    • Parsers may support: UTF-16, EBCDIC, etc

  • Human readable

  • Machine understandable

  • W3C standard

  • Rich set of emerging tools


Ibm travelframe

UserID, password, ACLs

User profiles

Geography and vehicle services

Backend Communications

  • Presentation

  • Authentication of clients

  • Authorization of clients

  • Calls mid-tier services only

  • Stateful

  • Profile services

  • Shoppers

  • Loyalty

  • Access to RSF

  • Exports to DSS

  • Stateless (but potentially stateful)

  • Consistent interfaces to backend systems

  • Stateless (but potentially stateful)

Inter-tier communications

Inter-tier communications

Internet

...

Reservation and Loyalty Systems

Clients

Extra-tier communications

DSS system

Business Partners

Channel Tier

Middle Tier

RSF Tier


Xml http communication

  • <SOAP:ENVELOPE>

  • <SOAP:BODY>

  • <FAREQUOTERESPONSE> <RETURN>

  • 2349.68

    • </RETURN>

  • </FAREQUOTERESPONSE>

  • </SOAP:BODY>

  • </SOAP:ENVELOPE>

XML/HTTP Communication

Request Message

XML4J

Input DOM

Marshal

  • <SOAP:ENVELOPE> <SOAP:BODY>

  • <FAREQUOTE>

  • <CSTNO> 123456789

    • </CSTNO>

    • <BOOKINGCODE> SD123457

    • </BOOKINGCODE>

  • </FAREQUOTE>

  • </SOAP:BODY>

  • </SOAP:ENVELOPE>

Router

Service

Logic

HTTP

Client Service Request Java Objects

Output DOM

Server

Client

Client Service Response Java Objects

Output DOM

HTTP

Unmarshal

XML4J

Reply Message


Ibm travelframe

Service C

Service A

Reservation System

Service D

Client

Service B

Persistent Store


Ibm travelframe

SOAP

  • Simple Object Access Protocol

  • Emerging industry standard for exchanging structured & typed information using XML

  • Specifies how to perform Remote Procedure Calls

  • Platform and programming language independent

  • Wire Protocol independent (HTTP, MQ….)


Technical strategies

Technical Strategies

  • Asynchronous, Service oriented architecture

    • Eases development and debugging

  • XML used in:

    • Services API

    • XML server architecture

    • Configuration

      • Master copy available using HTTP

    • Rendering

  • Persistence and Type System Conversion


Xml server architecture

XMLSession Object

HttpServlet

XmlService

XML Server Architecture

new(),

handleServiceRequest()

Further XML/HTTP service requests

Service instance

XmlRPCServlet

XML/HTTP Service Request

Typically Java, JSP or XSLT templates

XML/HTTP Service Response

Web Server

Servlet Engine


Xml marshalling

XML Marshalling

  • The problem: conversion between object graphs and XML

  • <MESSAGE>

    • <COMMAND>

      • Authenticate

    • </COMMAND>

    • <CSTNO>

      • 123456789

    • </CSTNO>

    • <PIN>

      • secret

    • </PIN>

  • </MESSAGE>


Generation x genesis

Generation X genesis

  • UML Modeling has become the central part of designing

    • Provides a language independent representation

    • Provides a single repository for all information, single point of update

  • Sending objects or data through the wire, persisting object in RDB are standards

  • Getting the most from the model by generating most of the code needed

  • Based upon Java/SQL Data Object generation in previous asset - Student Server

    • Shipped Oct 98

    • Solves particular Java/SQL access issues


Generation x

Generation X

  • Generates from a UML model:

    • Java beans

    • Marshalling/unmarshalling code

    • XML DTD / Schema

    • SQL persistence code

  • Generates up to 75 % of the code


Generation x principles

Generation X principles

  • Developer creates Rose Model of structures and graphs

  • Augment model with type system bindings

    • Model to Java, XML, SQL

    • graphs for serialization

  • Tools Generate:

    • Java Class definition, XML DTD

      • For each structure and method

    • Java to XML and XML to Java conversion

    • Java to RDB and RDB to Java

    • XML to RDB and RDB to XML


Generation x types

Generation X Types

Persistence

Generate Home

and Graphs

using Model2RDBBindings

XML

RDB

Model

Generate

Helpers and

Graphs using

Model2XML

bindings

Persistence

Generate Interface

and Bean using

Model2Java bindings

Generate Helpers

and Graphs using

Java2XML, XML2Java

bindings

Java


Generated files

Generated files

  • For one class XYZ in the model, the DO and Binding Generator produces the following files :

  • XYZ.java

  • XYZBean.java

  • XYZHome.java Proprietary interface for persisting/accessing RDB

  • XYZKey.java

  • XYZJava2XML.java

  • XYZXML2Java.java

  • XYZ.DTD

  • A graph describes the tree of associations for one object. It defines which association to follow to serialize the object. For one graph ABC in the graphs section, the Generator produces the following java files :

  • ABCJava2XML.java

  • ABCXML2Java.java

  • ABC.DTD


Generation x with xml http

Generation X with XML/HTTP

Create Model

DO Generator

Binding Generator

Bindings - java

Beans, DTDs

Create Client Code

java

Create Server Code

java or XSLT

Compile/Deploy

Web Server + Servlet Engine

Client App

XMLRPCServlet

SOAP

Client Code

DOs, Bindings

Services

Router

DOs, Bindings


Generation x advantages

Generation X Advantages

  • Simpler than writing backend API code

  • More maintainable and consistent generation

  • Faster generation of data objects

  • Allows optimizations of code in the future

  • Easier to retarget for a different backend

  • Allows generation of test suites

  • Extensible


Infrastructure deliverables

Infrastructure Deliverables

  • Runtime Java Classes

    • XMLRPCServlet

    • MessageRouter

  • Tooling

    • Generation X

      • Type conversions between Java, RDB, XML

  • Security, Logging, Systems Management, Connection Management, Rendering, State management, etc..

  • Can be deployed on any environment that supports Java Servlets


Summary

Summary

  • Architecture

  • Vertical Services

    • Leverage existing enterprise data and business rules using:

      • Reservation, Profile, Affinity Services

    • Provide an integrated view of backend systems

    • Track industry standards bodies such as Open Travel Alliance

    • Integration with personalization products will allow easier configuration of business rules

  • Infrastructure

  • Build travel solutions at lower cost using industry standard frameworks / components


Contacts

Contacts

  • Arvind Viswanathan

    • [email protected]

  • Bruce Gobioff

    • [email protected]


  • Login