grundprinzipien und beispielecredit suisse it-architektur · credit suisse it-architektur...

54
Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen (CIXT) Date: Produced by:

Upload: others

Post on 26-Mar-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Credit Suisse IT-ArchitekturGrundprinzipien und Beispiele

Claus HagenETH Zürich9.1.2000

Slide 110.01.2001C.Hagen (CIXT)

Date:Produced by:

Page 2: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 210.01.2001C.Hagen (KXT)

Date:Produced by:

INHALT

� TEIL 1: Credit Suisse IT-Architektur im Ueberblick� Architektur-Anforderungen� Umsetzung der Architektur� Architektur-Beispiele

� TEIL 2: Middleware� EAI - Enterprise Application Integration� Erweiterung der strategischen Middleware-Plattform der CS

Page 3: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 310.01.2001C.Hagen (KXT)

Date:Produced by:

CREDIT SUISSE E-COMMERCE STRATEGY

� Since several years, CS is heavily using the Web� DirectNet� youtrade� yourhome� FundLab� InsuranceLab

� New applications and platforms are constantly added� youtrade on WAP� youtrade on Palm� Personal Financial Services (European Banking Services on

www.credit-suisse.net)

Page 4: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 410.01.2001C.Hagen (KXT)

Date:Produced by:

2ND GENERATION E-COMMERCEFRONT-END IS TIP OF THE ICE-BERG

� 2nd generation E-Commerce applications require highfunctionality

� User interface in the web (and beyond) is only tip of the icebergof complete functionality (maybe 10%)

� Underwater part of the iceberg exists in the traditional brick andmortar company

� Traditional application assets need to be tapped systematicallyfor quick rollout of e-Applications

Page 5: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 510.01.2001C.Hagen (KXT)

Date:Produced by:

� 40 Mio Lines of code in central system

� > 100 C/S-applications (self made)

� more than 100 simultaneous projects

� up to 1 Mio payments per day

� 25000 work stations networked

� 1000 Servers

� 400 Mio. Pages of output on paper peryear (5.5 tons paper per day)

� several 100 projects

� 16 Mio IMS transactions per day

� 50000 DBs, 30 TB Disk

� typically over 99% availability

� several different electronic bankingchannels (internet, phone, IVR, ATM,etc.)

� ca. 1500 IT professionals

� 160000 MQSeries objects

� 100 Mio MQSeries messages perday

CS INFORMATIK - SOME NUMBERS

Page 6: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 610.01.2001C.Hagen (KXT)

Date:Produced by:

DIFFERENT LIFE TIME OFAPPLICATION LAYERS.

GUI, presentation,channel specific

Application logic,product specific

Core system, close to operational data,generic for the bank

30 years10 years2 years

Page 7: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 710.01.2001C.Hagen (KXT)

Date:Produced by:

MANAGED EVOLUTION.

Host 2000

Fusion RZ2/RZ3DEP Redesign

DirectNet LBMMCM

Focus /Match

IT Efficiency

Business value

Driven by business, time to market

Driven by IT Architecture,

IT efficiency Exit OS/2

Page 8: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 810.01.2001C.Hagen (KXT)

Date:Produced by:

IT ARCHITEKTUR:STADTPLANUNG

Page 9: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 910.01.2001C.Hagen (KXT)

Date:Produced by:

IT-ARCHITEKTUR IST “STADTPLANUNG”

� Existierender IST-Zustand - Komplette Neuplanungen äusserstselten� Vielzahl existierender Applikationen� Verschiedene Plattformen (Host, UNIX, PC)� Unterschiedliche Systeme (Datenbanken, Betriebssysteme,

Programmiersprachen)

� Hohe Komplexität - Zentrale Planung bis ins Detail jederApplikation nicht möglich

� KONZEPT: Definition von “Überbauungsplänen”, die dieEntwicklung in gewünschten Bahnen halten

Page 10: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1010.01.2001C.Hagen (KXT)

Date:Produced by:

ARCHITECTURE DEPARTMENT (KX)

� One of 4 departments of CS IT (the others are ApplicationDevelopment, Technical IT, and IT Production)� High valuation of architecture-driven development!

� 5 groups� Application architecture� Technical architecture� Security architecture� Systems management architecture� European platform architecture� Architecture process

Page 11: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slid

e 11

10.0

1.20

01C

.Hag

en (K

XT)

Dat

e:Pr

oduc

ed b

y:

Mod

ular

isin

g S

yste

ms:

Dom

ain

Con

cept

, CS

Info

rmat

ion

Bis

Man

agem

ent a

nd S

uppo

rtD

ata

War

ehou

ses

MANAGEMENT REPORTING

FINANCIAL ACCOUNTING

OPERATIONAL MANAGEMENT

Cust

omer

sPr

oduc

tsD

istr

ibut

ion

CHANNELS

CS

Info

rmat

ion

Bus

Servicemodule

Clientapplikationen

SALES SUPPORT

CUSTOMERS

ACCOUNTS

CREDITS

PAYMENTS

SECURITIES

TREASURY

LOGISTICS

DOCUMEN- TATION

BASIC FACILITIES

DATA ANALYSIS

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Servicemodule

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

Clientapplikationen

CH

AS

AL

CU

SA

CC

CR

EP

AY

SEC

TRE

OP

RFA

CLO

GD

OC

BA

SD

AT

MA

N

Page 12: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1210.01.2001C.Hagen (KXT)

Date:Produced by:

The Service-Layer Project

Main tasks of Service-Layer

➣ Coordination of CORBA-Engineering and Service-development and integration.➣ Design and implementation of the middleware layer (Credit Suisse Information Bus),

infrastructure and services.➣ Implementation of key business services as proof of concept (CIF-Pilot).➣ Provide an IntraNet based service-repository which allows complete documentation

of all services.➣ Define and provide needed documentation, guidelines, helpers and tools for either

Engineering-, Development- or Support-staff.➣ Set up service-reviews in order to provide high quality service interfaces along the

standards.➣ Ensure training in design and development of service interfaces and services.➣ Set up a support team in order to help projects during all phases of the project life

cycle.

Page 13: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1310.01.2001C.Hagen (KXT)

Date:Produced by:

Service-Layer: Goals of 1999 / 2000

CSI

B

- Core system structurally unchanged- Renovation

- Channel Services- Driven by frontend needs- Implementation with CORBA/PL1/IMS

- Scaling infrastructure- Develop methods, skills- Security / Stability

- Selected pilot Applications

Business Case- Open bank system- Multichannel

Page 14: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1410.01.2001C.Hagen (KXT)

Date:Produced by:

Service-Layer: Goals of 2001 ff.

CSI

B

- Core system decomposed into services- Data encapsulation- Parts of core system replaced if necessary

- Channel Services V3- complete bank functionality on CSIB- internal services for core available- potentially standardized financial services

- Infrastructure optimized for server/server communication- Bridges to non-CORBA component standards - Replacement CS-internal middleware

- Existing applications migrated to standard MW- All new frontends based on CSIB- Integration of standard applications

CSIB

Business Case- Simplified integration ofstandard applications- Standardized middleware- Open bank system

Page 15: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1510.01.2001C.Hagen (KXT)

Date:Produced by:

Granularität

...........................................

...........................................

...........................................

...........................................

...........................................

...........................................

............................................................................................................................................................................

Name

Granularität

Anzahl Objekte

Ein Objekt kann in seine Bestandteile, d.h. Teilobjektezerlegt werden, und diese wieder in seine Teilobjekte, usw.Die Granularität von Objekten nimmt mit zunehmenderTeilung zu.

Vorname Tel PLZ

Name

1-5 1‘000‘000 10‘000‘000

Adresskartei

Adresse

Attribut

Page 16: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1610.01.2001C.Hagen (KXT)

Date:Produced by:

Granularität

� Heutige objektbasierte Middleware-Produkte - wie z.B. Orbix - sindnicht in der Lage, Objektmengen in der Grössenordnung mehrererZehntausend oder Millionen in verteilten Umgebungen effizient zuhandhaben.

� Die Wahl der Granularität bedingt deshalb ein sorgfältiges Abwägenkonzeptioneller und technischer Randbedingungen und Gegebenheiten.Schnittstellen können nicht losgelöst von diesen Gegebenheitenentwickelt werden.

� Die Credit Suisse wird aus diesen Gründen in den nächsten Jahrenvorwiegend grobgranulare Services implementieren und eineServicearchitektur umsetzen.

Page 17: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1710.01.2001C.Hagen (KXT)

Date:Produced by:

Implementation (Orbix MVS)

IMSadapter

MappingGateway

Intf

“IMSraw”

IDL-DB

Int. Repository

NameService

Exporter

IIOP

contains IDL definitions

Mapfile

Tx IDL

reads IORsfor Txs binds IORs

get IOR

call TxIMS Control Region

InputQueue

OutputQueue

MPPs MPPs MPPs

DC-Part (Data Comm.)

Database(s)

MPRs

DB

IMS

USS UNIX & NT systems

APPC

ClientClient

Client

seq. of. char

Page 18: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1810.01.2001C.Hagen (KXT)

Date:Produced by:

Overall-Status: Services by the End of 2000

56 58 64109 105 102 105

158 170 17345 49

94

5993

135 135

112 97 98

0

50

100

150

200

250

30023

.03.20

0019

.04.20

0024

.05.20

0029

.06.20

0023

.07.20

0022

.08.20

0021

.09.20

018

.10.20

0006

.11.20

0030

.11.20

00

in Entwicklungin Produktion

Stand: 6.11.2000

Page 19: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 1910.01.2001C.Hagen (KXT)

Date:Produced by:

Overall-Status: Load by the End of 2000 (in Production)

Gesamtauswertung CORBA Infrastruktur Orbix OS/390

0

100'000

200'000

300'000

400'000

500'000

600'000

700'000

w17 w19 w21 w23 w25 w27 w29 w31 w33 w35 w37 w39 w41 w43 w45 w47

Tran

sakt

ions

aufr

ufe

Page 20: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2010.01.2001C.Hagen (KXT)

Date:Produced by:

Overview 2001: End of 2000 vs. End of 2001

Projects

Developers

Services

BusinessUnitsand Clients

Platforms

- More than 50 Applications in Production- Another ?? Applications under development

- Clients: HMTL, Java, C++, SmallTalk, MS-Office- Mid-tiers: Java, C++, EJB, SmallTalk- Servers: PL1 (IMS, CICS), Java, C++, VBA- OS: OS/390, NT, Solaris, AIX

- 2 BUs provide Services (CS, CSPB, ?)- 4 BUs use Services (CS, CSPB, CSAM, CSFB)- About 100’000 Users (staff as well as customers)

- 300 Services in Production- About ?? Services planed or under development

- 200 Developers attended the OrbixPL1-Training- 50 Attendees finished the Java-Academy- Up to 500 Developers in total

- 21 Applications in Production- Another 30 Applications under development

- Clients: HMTL, Java, C++, SmallTalk, MS-Office- Mid-tiers: Java, C++, EJB, SmallTalk- Servers: PL1 (IMS, CICS), Java, C++, VBA- OS: OS/390, NT, Solaris, AIX

- 2 BUs provide Services (CS, CSPB)- 4 BUs use Services (CS, CSPB, CSAM, CSFB)- About 9’000 Users

- 176 Services in Production- About 95 Services planed or under development

- 140 Developers attended the OrbixPL1-Training- 30 Attendees finished the Java-Academy- Up to 300 Developers in total

Page 21: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2110.01.2001C.Hagen (KXT)

Date:Produced by:

Referenz-ArchitekturHTTPS

CORBA/SSL

andereKanäle

Web-Server (RZ)

CORBA

Präsentation(Benutzer)

Applikations-Logik(zentral)

Data/Business Services(zentral)

some text

text texttext ...

Java (Applet) Präsentation

Java (Applet) Präsentation/

Applikationslogik

HTMLPräsentation

Applikations-Server (RZ)Applikations-Server (RZ)Applikations-Server

Web-Server (RZ)Web-Server

JDBCLDAPJMS

Page 22: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2210.01.2001C.Hagen (KXT)

Date:Produced by:

IT-Strategy: CREDIT SUISSE Towers (I)

Java Servlets

HTML Java Client

Appl. Server mit EJBs

CORBAServices

Front-Tier

Middle-Tier

Backend-Tier

HTTPS

CORBA/ SSL

CSI Tower 1 CSI Tower 2 CSI Tower 3 CSI Tower 4 CSI Tower 5

HTMLJava Client HTML

Java Servlets

Appl. Server mit EJBs Appl. Server

mit EJBs

Java Servlets

CORBAServices

CORBAServices

CORBAServices

CORBAServices

CORBA/ SSL

CORBA/ SSL

HTTPSHTTPS

CORBA/ SSL

CORBA/SSL CORBA/SSL

CORBA/SSL CORBA/SSL

B1 Entry

9 Applications 2 Applications 0 Application 1 Application 1 Application

Page 23: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2310.01.2001C.Hagen (KXT)

Date:Produced by:

CSI TOWERS: SUPPORT

� Technische end-to-end Sicht von Client bis Datenbank-Server(Entwicklung, Test, Betrieb)� Betriebssystem, Middleware, Kommunikations-Software� Entwicklungsumgebung inkl. Tests� Run-Time Umgebung� Sicherheitsinfrastruktur

� Auswahl- und Einsatzkriterien

� Programmier-, Konstruktions- und GUI-Richtlinien

� Software-Frameworks und Komponenten

� Rahmenorganisation für Aufbau, Wartung, Betrieb

Page 24: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2410.01.2001C.Hagen (KXT)

Date:Produced by:

COMMERCIAL BREAK

� JOBS AT CREDIT SUISSE:

� www.credit-suisse.ch

[email protected]

Page 25: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2510.01.2001C.Hagen (KXT)

Date:Produced by:

IT ARCHITEKTUR:STADTPLANUNG

Page 26: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2610.01.2001C.Hagen (KXT)

Date:Produced by:

VERKEHRSPLANUNG IN DER IT-ARCHITEKTUR

� Ziel: Verbindung der Gebäude (Tools) und Stadtteile (Applikationen)

� Mittel: Unterschiedliche “Verkehrstechnologien”� RPC� Messaging� File Transfer� SOAP (?)� CORBA, COM, DCE� Workflow� ETT-Tools (Extract, Transform, Transport)

� Ziel: Geeignete “Transportformen” für unterschiedliche Applikationenbereitstellen, dabei “Time to Market” und Kostenaspekteberücksichtigen

Page 27: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2710.01.2001C.Hagen (KXT)

Date:Produced by:

ENTERPRISE APPLICATION INTEGRATIONAUSGANGSLAGE

� ENTERPRISE - Je grösser ein Unternehmen ist, desto vielfältigerist sein “Zoo” aus unterschiedlichsten Applikationen, oft ausverschiedenen Epochen und mit diversesten Technologien

� APPLICATION - Kein Programm funktioniert heute mehr „stand-alone“ - die IT besteht aus vernetzten „Applikationlandschaften“,innerhalb derer ständig Daten ausgetauscht werden.

� INTEGRATION - Neue Applikationen (die heute häufigeingekauft statt selbstgebaut werden) müssen möglichstkostengünstig und flexibel mit den existierenden Systemenverbunden werden.

Page 28: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2810.01.2001C.Hagen (KXT)

Date:Produced by:

LIFE IS SIMPLE. IS IT?CLASSICAL THREE-TIER-ARCHITECTUREPresentationLayer(Users, Customers)

ApplicationLayer

“Backoffice”Data,Business ServicesHost

Web-ServerWeb-Server

Application Server

Application Server

Application Server

Application Server

Host ServicesHost Services

DatabasesDatabases

Decentral Servers

Decentral Servers

CORBA

CORBA

Page 29: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 2910.01.2001C.Hagen (KXT)

Date:Produced by:

CORBA

CORBA

HostApplications

Databases

ERP Systems(Peoplesoft etc.)

Data Warehouses

New non-Host Applications

External Data Feeds(Swift,SIC,…)

INSIDE THE BACK OFFICECONNECTION COMPLEXITY

Page 30: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3010.01.2001C.Hagen (KXT)

Date:Produced by:

MESSAGE BROKER / INTEGRATION BROKER (EAI)“COMMUNICATION SWITCH”

CORBA

CORBA

HostApplications

Databases

ERP Systems(Peoplesoft etc.)

Data Warehouses

New non-Host Applications

External Data Feeds(Swift,SIC,…)

IntegrationBroker

Data TierApp.Tier

Page 31: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3110.01.2001C.Hagen (KXT)

Date:Produced by:

PROBLEME DER APPLIKATIONSINTEGRATION

� Bei der Integration neuer Applikationen mit der existierendenSystemlandschaft tauchen eine ganze Reihe von Problemen auf:� Unterschiedliche Arten des Zugriffs auf eine Applikation (Remote

Procedure Calls, Message Queues, API-Libraries, DB-Tabellen, ...)� Unterschiedliche Datendarstellung (ASCII/EBCDIC, gepackt/XML,

Fliesskomma/Fixpunkt,...)� Unterschiedliche Interfaces (Datenstrukturen)� Unterschiedliche Semantik� Häufig ist eine n-to-m-Kopplung der Applikationen notwendig

� Enterprise Application Integration befasst sich mitLösungsmöglichkeiten für die obigen Probleme

Page 32: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3210.01.2001C.Hagen (KXT)

Date:Produced by:

ENTERPRISE APPLICATION INTEGRATION

Man findet zwei sehr unterschiedliche Definitionen des Begriffes EAI:

� EAI als Problem (Anwendersicht): Integration der vielfältigenSysteme eines Unternehmens zu einem einheitlichen Ganzen,wobei insbesondere die Einbindung eingekaufter Software mitproprietären Schnittstellen gelöst werden muss.

� EAI als Lösung (Herstellersicht): Software-Packages, bestehendaus existierenden Tools mit mehr oder weniger grossenErweiterungen, die in irgendeiner Weise bei der Integration vonApplikationen behilflich sind.

„Wenn man einen Hammer hat, scheint die ganze Welt aus Nägeln zubestehen”

Page 33: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3310.01.2001C.Hagen (KXT)

Date:Produced by:

Der EAI-Stack

Resource Interfaces (Adapter)

Base Connectivity Addressing style: Peer-to-peer, publish/subscribe, or broadcast

Communication coupling: synchronous or asynchronous

Transformation

Rules

Intra-Broker Process Control

Inter-Application Process Control (Workflow)

Application 1 Application 2Resource Interfaces

(Adapter)

Page 34: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3410.01.2001C.Hagen (KXT)

Date:Produced by:

EAI-GRUNDPRINZIP

� Obwohl die EAI-Produkte am Markt sehr unterschiedlich sindund keine allgemeingültige Definition des EAI-Funktionsumfangsexistiert, lassen sich doch einige Gemeinsamkeiten finden:� EAI-Software basiert auf einem „Integration Broker“� Die Kommunikation zwischen Applikationen ist asynchron, um eine

möglichst lose Kopplung zu erreichen� Publish/Subscribe-Kommunikation erlaubt es, mehrere Sender mit

mehreren Empfängern zu verbinden� Tranformationsdienste ermöglichen die Anpassung der

ausgetauschten Datenstrukturen, ohne dass die Applikationengeändert werden müssen

Page 35: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3510.01.2001C.Hagen (KXT)

Date:Produced by:

ADAPTER

� „Wrappen“ eine Applikation und führen grundlegendeDatentranformationen durch

� Out-of-the-box-Adapter für Standard-Produkte (SAP, Peoplesoft,Siebel, Oracle) und Protokolle, Adapter-Toolkits für eigeneSoftware

� Verschiedene Zugriffs-Techniken� Zugriff über API, falls vorhanden� Direkter Zugriff auf Datenbank, falls Schema bekannt (und stabil)� Nutzung von Messaging-Schnittstellen

� Einzelne EAI-Produkte bieten bis zu 50 Out-of-the-box-Adapteran.

Page 36: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3610.01.2001C.Hagen (KXT)

Date:Produced by:

KOMMUNIKATIONSSTEUERUNG

� EAI-Software erweitert die üblichen asynchronenKommunikationsmechanismen um zusätzliche Funktionen

� Insbesondere: Publish-Subscribe Messaging� Topic- vs. Content-based routing� Static vs. Dynamic Subscriptions

Page 37: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3710.01.2001C.Hagen (KXT)

Date:Produced by:

TRANSFORMATIONEN

� Anpassung von Format und Inhalt der übermittelten Daten jenach den Bedürfnissen des Empfänger

� Unterschiedliche Funktionalitäten� One-to-one-map� One-to-many-map� Data enrichment� Many-to-one-map� Many-to-many-map� Algorithmische Transformation

� Gefahr: Applikationslogik in der Middleware

Page 38: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3810.01.2001C.Hagen (KXT)

Date:Produced by:

REGELN

� Regeln steuern, aufgrund der Struktur oder des Inhalts einerNachricht, wie diese verarbeitet wird� anzuwendende Transformationen� zu beliefernde Empfänger

� Regeln sind ein sehr mächtiger Mechanismus, der aber auchsehr schnell unübersichtlich werden kann.

Page 39: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 3910.01.2001C.Hagen (KXT)

Date:Produced by:

WORKFLOW

� Intra-Broker-Prozesskontrolle� Alternative zu Regeln: graphische Beschreibung der

Verarbeitungsfolge einer Nachricht

� Workflow-Kontrolle� Statt Konzentration auf Einzel-Messages: Beschreibung und

Kontrolle kompletter Geschäftsprozesse

� Problem: Workflow-Komponente in existierenden EAI-Tools nichtausgereift; klassische Workflow-Tools nicht geeignet

Page 40: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4010.01.2001C.Hagen (KXT)

Date:Produced by:

WEITERE KOMPONENTEN

� Message Type Repository

� Message Warehouse

� Message-Kataloge

� XML-Infrastruktur

Page 41: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4110.01.2001C.Hagen (KXT)

Date:Produced by:

APPLIKATIONSINTEGRATION ALSPROBLEMSTELLUNG

ERP-Systeme Host-Apps

UNIX-basierteServer

Benutzer

??

Page 42: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4210.01.2001C.Hagen (KXT)

Date:Produced by:

APPLIKATIONSINTEGRATION

UNIX-basierteServer

Benutzer

ERP-Systeme Host-Apps

Ereignisbasiert•MQSeries•Message-Broker

Servicebasiert•CORBA•Client-Server

Prozessbasiert•Workflow•Other

Page 43: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4310.01.2001C.Hagen (KXT)

Date:Produced by:

MATCHING INTEGRATION REQUIREMENTSTO TECHNICAL SOLUTIONS

Data Synchronization

B2B InformationBroadcast

Stovepipe Processing

Data Warehousing

Classical Service-based

SS

SS

SS

SS

SS

SSSS

SS

SSSS

Company A Company B

SS

SS

SS

SS

SS

SS

SS

asynch

FTP(limited)

ETT-ToolsFTP

CORBA

MQSeries (limited)

-proprietary

EAI needed

EAI needed

EAI needed

Page 44: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4410.01.2001C.Hagen (KXT)

Date:Produced by:

APPLICATION INTEGRATION:COUPLING SPHERES

Sphere 2:Bought Apps

Sphere 3:External Apps

Sphere 1:Built Apps

Page 45: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4510.01.2001C.Hagen (KXT)

Date:Produced by:

TIGHT VS LOOSE COUPLINGTHREE LEVELS OF COUPLING

Communications levelTight coupling: synchronous RPCLoose coupling: asynchronous messaging

Communications levelTight coupling: synchronous RPCLoose coupling: asynchronous messaging

Technical / Framework levelTight coupling: Framework exists (CORBA etc.)Loose coupling: No Framework

Technical / Framework levelTight coupling: Framework exists (CORBA etc.)Loose coupling: No Framework

Interface / dataTight coupling: Common interface modelLoose coupling: Disjoint interface models

Interface / dataTight coupling: Common interface modelLoose coupling: Disjoint interface models

Page 46: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4610.01.2001C.Hagen (KXT)

Date:Produced by:

NEED FOR EAITRENDS AND CONSEQUENCES

� 24x7 Online Computing (no batch window)� File transfer not sufficient any more� Required: Permanent message flow, asynchronous model (publish/subscribe)

� Bought applications� …have their own databases, need data synchronization,have proprietary interfaces� Required: “glue” to fit them into existing environment (adapters, data synchronization

and transformation)

� Decomposition of applications� From centralized applications to processing chains - separation of trade, production,

settlement - incorporation of business partners� Required: loosely coupled, message-based “straight-through-processing”

Page 47: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4710.01.2001C.Hagen (KXT)

Date:Produced by:

Event bus providesEAI services:•Publish/subscribe•Rule-based routing•Message transformation

Event bus providesEAI services:•Publish/subscribe•Rule-based routing•Message transformation

ENTERPRISE APPLICATION INTEGRATION (EAI)THE CS EVENT BUS

CS EventBus (Message based) - NEWCS EventBus (Message based) - NEW

CS Information Bus (Service based) - existing

ServerServer Core BankingSystems (Host)Core Banking

Systems (Host)Bought

ApplicationsBought

Applications

InternationalIT PlatformsInternationalIT Platforms

Other Business Units

Other Business Units

DataWarehouses

DataWarehouses

BusinessPartners

BusinessPartners

PresentationTier

Front Tier

AppLogicApp

LogicApp

LogicApp

LogicApp

LogicApp

LogicApp

LogicApp

Logic

ClientClient ClientClientClientClientClientClient

Scope ofCSI Towers

CS Event Bus initiative:•approved by Architecture Sounding Board•common development by CSFS and CSPB•Timeframe: Fully productive beginning of 2002

CS Event Bus initiative:•approved by Architecture Sounding Board•common development by CSFS and CSPB•Timeframe: Fully productive beginning of 2002

Asynchronous messagingloosely coupled

Asynchronous messagingloosely coupled

Page 48: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4810.01.2001C.Hagen (KXT)

Date:Produced by:

PROPOSED SOLUTION:CS EVENT BUS

� Complements the CS information bus (CSIB)� Reliable publish/subscribe messaging + EAI functionality� CSIB remains the only bus for client / application access to host services and data� Event bus only for asynchronous inter-server data exchange

� Concept similar to CSPB’s BackBoneBus and CSFB’s FOBOCA

� Appropriate processes and organization avoid mis-use and ensurereusability of message structures� Similar to existing processes/organization within the Service Architecture

� Technical: EAI services provided by IBM MQSeries Integrator� Already used by CSPB and planned for next release of CSFB’s FOBOCA

Page 49: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 4910.01.2001C.Hagen (KXT)

Date:Produced by:

BEISPIEL

COREAPP

COREAPP

COREAPP

COREAPP

CLIENT/APP

CLIENT/APP

Service Interface

CLIENT/APP

CLIENT/APP

Page 50: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 5010.01.2001C.Hagen (KXT)

Date:Produced by:

BEISPIEL

COREAPP

COREAPP

COREAPP

COREAPP

CLIENT/APP

CLIENT/APP

Service Interface

Event Interface

CLIENT/APP

CLIENT/APP

Page 51: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 5110.01.2001C.Hagen (KXT)

Date:Produced by:

BEISPIEL

COREAPP

COREAPP

COREAPP

COREAPP

CLIENT/APP

CLIENT/APP

Event Interface

CLIENT/APP

CLIENT/APP

Event RepositoryEvent Repository

Event Bus

Transfor-mation

Transfor-mation

RulesEngineRulesEngine

WorkflowWorkflow

Page 52: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 5210.01.2001C.Hagen (KXT)

Date:Produced by:

PRODUKTE

� Es existiert eine ganze Reihe (>30) von Anbietern mit EAI-Lösungen am Markt.� Alteingesessene Hersteller: BEA, Candle, IBM, Oracle, TIBCO� Spezialisten: Mercator, Vitria, WebMethods

� Entscheid in der CS: IBM MQSeries Integrator� bereits bei der CSPB im Einsatz, Einsatz in der CSFB geplant� gute Integration mit MQSeries� erweiterbar (Framework-Ansatz)

Page 53: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 5310.01.2001C.Hagen (KXT)

Date:Produced by:

THE CS EVENT BUSPRIME GOALS OF PROJECT

API support•CORBA•XML•JMS,AMI,CMI

Usage Policies•When use services?•When use events?•When use file transfer?

Management•Configuration•Change Mgt•Monitoring•Security

Technology•Tool deployment•MQ Integration

Processes•Institutionalized:•Event definition•Channel Mgt•(Foster Re-use)

Page 54: Grundprinzipien und BeispieleCredit Suisse IT-Architektur · Credit Suisse IT-Architektur Grundprinzipien und Beispiele Claus Hagen ETH Zürich 9.1.2000 Slide 1 10.01.2001 C.Hagen

Slide 5410.01.2001C.Hagen (KXT)

Date:Produced by:

LESSONS LERNED(meine eigenen nach 2 Jahren CS)

� Es genügt nicht, die technisch beste Lösung zu finden. Sie mussimmer im Gesamtkontext gesehen werden� Anbindung an existierende Systeme� Vorhandene Skills� Schulungsaufwand� Security� Systems Management

� Prozesse sind essentiell, insbeondere bei Infrastruktur� Entwicklungsprozesse - Guidelines, Reviews, etc.� Testvorgehen, Testumgebungen� Change Management