model-driven software migration towards service- oriented...

16
Model-Driven Software Migration towards Service- Oriented Architectures Volker Riediger Institute for Software Technology University of Koblenz-Landau, Germany Grant No. 01IS09017A-D Coworkers: U. Erdmenger, U. Kaiser, D. Uhlig,Y. Zimmermann A. Herget, W. Teppe, M. Theurer A. Fuhr, T. Horn A. Winter, C. Zillmann

Upload: trandang

Post on 29-Aug-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Model-Driven Software Migration towards Service-

Oriented Architectures

Volker RiedigerInstitute for Software Technology

University of Koblenz-Landau, Germany

Grant No. 01IS09017A-D

Coworkers:U. Erdmenger, U. Kaiser, D. Uhlig, Y. Zimmermann

A. Herget, W. Teppe, M. TheurerA. Fuhr, T. Horn

A. Winter, C. Zillmann

Page 2: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

SOAMIG Consortiumpro et con GmbH, ChemnitzSMB (small to medium sized business)Software Reengineering and Migration➠ Language front ends, COBOL-to-Java transformations, code generators, analysis tools, service implementation

Amadeus Germany, Bad HomburgGlobal provider of IT solutions for tourism & travel industryExperience in large scale migration project➠ RailClient system developers, domain experts, evaluation of process and tools

Institute for Software Technology, University of KoblenzResearch on Software Engineering, Reverse/Re-Engineering,➠ TGraph repository technology, transformation and analysis tools, process development

OFFIS Institute for Information Technology, Univ. of OldenburgResearch on Software Engineering,Knowledge transfer from research to economy,➠ Target architecture, implementation, and process development

2

Page 3: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Project Goals

• Define a reference process for migration into SOA - the SOAMIG Process

• Achieve a high degree of automatic code migration

• Provide prototypic tools and technologies for legacy analysis and transformation based migration

• Explore different migration scenarios

• Language Migration

• Architecture Migration

3

Page 4: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Industrial Case Studies

• LCOBOL

• Language migration

• COBOL to Java

• RailClient

• Architecture migration

• Monolithic Java to Java SOA

4

Page 5: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

LCOBOL Case Study

5

Translator chain

Cobol2Java

Cobol Code

Java Code

CobolFE JGen JFormat

Java model

Transformation rules

Cobol model

• Language Migration from COBOL server to Java Web Services

• Main challenges:

• Semantics-preserving automatic language migration

• Quality and maintainability of target code

• Technology mappingTuxedo transaction monitor to JAX-WS

Page 6: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

RailClient Case Study

6

Java, Cobol, UMLand DSL Metamodels

SOAMIG Repository

Monolithic legacy system

Message repository

Business processes

State machines

Java code

Extractor tools

JavaFE DSL parsers

Analysis tools

GReQL

FGM

Dynamic Analysis Toolset

Code generation tools

Transformation tools

JGenJFormat

DataModelGenerator

Isolated service code

SOAMIGExtractor

GReTLJava model

• Architecure migration

• Java fat client to SOA based Web Application

Page 7: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Ihre Vorteile mit Amadeus Bahn

> Gezielte Unterstützung für Ihren Bahn-

verkauf. Durch individuelle Amadeus Bahn

Vorbelegungen (Customizing) für Ihren

PC, Ihre Betriebsstelle oder Ihre Kette

werden Ihre manuellen Angaben auf ein

Minimum reduziert, z.B. jeweils bis zu 50

Abgangsorte/Zielorte speicherbar.

> Angebote einfach finden und schnell

buchen. Mit der Amadeus Bahn

Buchungshilfe (Guided Mode) gelangen

Sie über einen Suchbaum schnell zum

gewünschten Bahn-Angebot. Alle für die

Buchung relevanten Daten werden auto-

matisch in die RAIL-Maske übernommen.

> Weniger Eingaben durch Übernahme

von Kundendaten wie BahnCard-Nr,

GKR-Nr und Reisepräferenzen aus KDP

oder Amadeus Customer Profile.

> Unterstützung bei der Reservierung. Sie

erhalten gezielte Informationen aus aus

Reservierungsübersicht, Wagenreihung

und ICE-Wagengrafik (siehe Abbildung).

> Schneller Bearbeitungsprozess über DB

Auftragsverwaltung. Z.B. bei einer Grup-

penreise die schon geleistete Anzahlung

mit einem einzigen Mausklick in die erfor-

derliche Restzahlung umwandeln.

> Reduzierung Zustellungsaufwand für

Bahn-Tickets und verbesserter Kunden-

service durch DB Online Ticket.

Voraussetzungen

Sie können Amadeus Bahn mit allen

Produktlinien der Amadeus Selling Platform

wie folgt nutzen:

> Mit der DB-Voll-Lizenz (DB-Lizenzvertrag

erforderlich) bei Amadeus Selling Platform

Leisure Pack oder Professional Pack.

Sie umfasst alle Bahnfunktionen (Ange-

botsübersicht mit Fahrplanauskunft und

Preisinfo, Buchung und Ticketdruck sowie

DB-Auftragsverwaltung).

> Mit der DB Auskunfts-Lizenz

(kein DB-Lizenzvertrag erforderlich)

bei allen Produktlinien der Amadeus

Selling Platform. Sie umfasst nur die

Infoanzeige und den Druck der Reisever-

bindung.

Preis

Amadeus Bahn ist Bestandteil aller

Amadeus Selling Platform Produktlinien

– die Nutzung ist kostenfrei.

Amadeus Germany GmbH Tel.: +49 (0) 61 72-91 32 80 E-Mail: [email protected] www.de.amadeus.com

Amadeus Bahn – Buchung im Reiter „Verkauf“

> Eingaben in RAIL-Grundmaske und

bei Bedarf in Teilmasken, Aufruf der

Angebotsübersicht

> Auswahl von Hin- und Rückfahrt mit

Fahrplan- und Preis-Information

> Buchung bzw. Ausdruck aller Bahn-Belege

(Reservierungen, Fahrscheine, sonstige

Tickets) sowie Reiseverbindungen

Detaillierte Informationen

aus Reservierungsübersicht

und Wagenreihung mit

ICE-Wagengrafik

04

/20

10

© Am

adeu

s Germ

any G

mb

H

RailClient Case Study

• DB Ticketsolution fortravel agents

• Schedules,reservation,booking,ticketing

• Additional services, hotels,cars, public transportation...

7

Page 8: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

RailClient numbers

• Java code: ~450 files~266,000 LOC

• ~7,000 messages~30,300 attributes

• Model size: 2.5 million elements

• Flat data model, ~1,900 MVC variables

• Traces for use case „TMF“Request: 276,708 callsBooking: 1,548,891 calls

8

5125

1796

1968

3965

Non-Java Model Elements (12,854)

Workflow DFAs (53 major UI states)Source file information11 BP modelsTraceability links for 1 use case

Page 9: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Dynamic Analysis

!"#$%&'()#$*"+&+,(-.//&#0

!

!!

9

• Static analysis alone not sufficient

• Dynamic analysis used for...

• Mapping of business processes to code

• Identifying service candidates

• Narrowing down static over-estimates

• Detecting relevant data model parts for service interfaces

Page 10: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Tools & Technologies

Page 11: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Tools & Technologies

11

Java, Cobol, UMLand DSL Metamodels

SOAMIG Repository

Analysis tools

GReQL

FGM

Dynamic Analysis Toolset

Legacy system

Message repository

Business processes

State machines

Cobol code

Java Code

Extractor tools

JavaFE DSL parsers

CobolFE

Code generation tools

Transformation tools

JGenJFormat

DataModelGenerator

Migrated system

SOAMIGExtractor

GReTL

Java model

Cobol2Java

Page 12: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

SOAMIG Repository

• Initial programunderstanding supportdby FGM (Flow Graph Manipulator)

• explorative program analysis

• metrics

• redocumentation

• repository grows as you analyze more

12

Page 13: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

SOAMIG Repository• Analysis and transformation repository based on JGraLab

• High performance TGraph API

• Graph UML (grUML) modeling

• Querying

• Transformations

• In SOAMIG: Integrated model for

• Source code

• Other legacy systemdescriptions

• Business processes

• Target architecture

• Traceability

13

Page 14: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Tools & Technologies

14

Java, Cobol, UMLand DSL Metamodels

SOAMIG Repository

Analysis tools

GReQL

FGM

Dynamic Analysis Toolset

Legacy system

Message repository

Business processes

State machines

Cobol code

Java Code

Extractor tools

JavaFE DSL parsers

CobolFE

Code generation tools

Transformation tools

JGenJFormat

DataModelGenerator

Migrated system

SOAMIGExtractor

GReTL

Java model

Cobol2Java

Ready to use „industrial strength“ toolsEasily Reusable (minor project specific extensions)Completely project specific

Page 15: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

SOAMIG @ CSMR

• This Talk☺• People: J. Ebert, A. Fuhr, A. Winter, V.

Riediger, W. Teppe, C. Zillmann,

• Poster Session (stands are two-sided!)

• EU Track (Thursday)The SOAMIG Process Model in Industrial Applications

15

Page 16: Model-Driven Software Migration towards Service- Oriented ...ist/mdsm/2011/files/presentations/... · Ihre Vorteile mit Amadeus Bahn > Gezielte Unterstützung für Ihren Bahn-verkauf

Model Driven Migration ??

16

Models

Metamodels

Transformations

CIM PIM

PSM

Evolution

Views/Viewpoints

ReverseEngineering

Redocumentation

Testing

Renovation

Architecture

Services

Business Processes

Querying

TechnologySelection

Tool integrationHumancommunication

ROI