© copyright ibm corporation 2000 ibm travelframe arvind viswanathan [email protected] any...

29
© Copyright IBM Corporation 2000 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

Upload: deirdre-tucker

Post on 16-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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.

Page 2: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 3: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 4: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 5: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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.

Page 6: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

TravelFrame Vertical Services

• Personalization– Export customer data for processing by external DSS

– Blaze integration (prototyping)

– Allows business users to define system behavior

Page 7: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Logical Layering

TravelFrame

Travel Industry Standard

Java Objects and XML

Cross-Industry Standard Java Objects

and XML

XML JDBC

ISV Application Softwareand IBM Solutions

Platforms Servers: AIX Solaris NT

Application

ServerHTTP LDAP

JVM Database

JNDI HorizontalDistributedMiddleware

DomainCore

Content

DomainEngagements

GeographyService

VehicleService

ReservationSystemFramework

Loyalty Framework

ManagementService

ReservationServicesUser Profile

ConfigurationService

Page 8: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Architecture Goals• Robust operational architecture

• Simple, mature infrastructure

• Comprehensive security model

• Reliable

• Adaptable

• Scalable

• Standards-based

Page 9: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 10: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Server Configuration

HTTP

Serv

er

Serv

let

Engin

eServ

ices

Channel Tier Middle Tier Reservation System

Framework Tier

XML over HTTP

XML over HTTP

...

Reservation and Loyalty Systems

Clients

Internet

Backend Communicati

ons

XML over MQ

XML over MQ

Page 11: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 12: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 13: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Channel Tier Middle Tier RSF Tier

Inte

r-ti

er

com

munic

ati

ons

...

Reservation and Loyalty Systems

Clients

Internet

Back

end

C

om

mun

icati

ons

•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)

UserID, password, ACLs

User profiles

Geography and vehicle services

DSS system

Inte

r-ti

er

com

munic

ati

ons

Business

Partners

Extra-tier

communications

Page 14: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

<SOAP:ENVELOPE>

<SOAP:BODY>

<FAREQUOTERESPONSE> <RETURN>

2349.68

</RETURN>

</FAREQUOTERESPONSE>

</SOAP:BODY>

</SOAP:ENVELOPE>

<SOAP:ENVELOPE> <SOAP:BODY>

<FAREQUOTE>

<CSTNO> 123456789

</CSTNO>

<BOOKINGCODE> SD123457

</BOOKINGCODE>

</FAREQUOTE>

</SOAP:BODY>

</SOAP:ENVELOPE>

XML4J

Router

HTTP

HTTP

Clie

nt

Serv

er

XML4J

Reply Message

Request Message

Input DOM

Client Service Request Java

Objects

Mars

hal

Output DOM

Output DOM

XML/HTTP Communication

Client Service Response Java

Objects

Unm

ars

hal

Service

Logic

Page 15: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000Persistent

Store

Reservation System

Client

Service A

Service B

Service C

Service D

Page 16: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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….)

Page 17: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 18: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

HttpServlet

XmlRPCServlet

XmlService

Typically Java, JSP or XSLT

templates

Further XML/HTTP service requests

Servlet Engine

Web Server

XML/HTTP

Service Request

XML/HTTP

Service Respons

e

Service instance

XMLSession Object

new(),

handleServiceRequest()

XML Server Architecture

Page 19: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

XML Marshalling• The problem: conversion between object graphs and

XML

<MESSAGE>

<COMMAND>

Authenticate

</COMMAND>

<CSTNO>

123456789

</CSTNO>

<PIN>

secret

</PIN>

</MESSAGE>

Page 20: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 21: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 22: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 23: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Generation X Types

XML

RDB

Java

ModelPersistence

Persistence

Generate Interfaceand Bean usingModel2Java bindings

GenerateHelpers and Graphs usingModel2XMLbindings

Generate Homeand Graphsusing Model2RDBBindings

Generate Helpers and Graphs usingJava2XML, XML2Javabindings

Page 24: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 25: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Web Server + Servlet Engine

Generation X with XML/HTTPCreate Model

DO Generator Binding Generator

Beans, DTDs Bindings - java

Create Server Codejava or XSLT

Compile/Deploy

Client App

Client Code

Create Client Codejava

DOs, Bindings

DOs, BindingsXMLRPCServlet

Services

Router

SOAP

Page 26: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 27: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 28: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

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

Page 29: © Copyright IBM Corporation 2000 IBM TravelFrame Arvind Viswanathan arvind@ca.ibm.com Any references to future plans are for planning purposes only. IBM

© Copyright IBM Corporation 2000

Contacts

• Arvind Viswanathan– [email protected]

• Bruce Gobioff– [email protected]