SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
Modernisierung von Altsystemen
Migration einer Oracle Forms Anwendung
Rhenus Freight Network GmbH
Stephan Strunk
2014-11-26
Head of IT Solutions
2
Agenda
Überblick1
Herausforderungen und Ziele2
Szenarien für die Migration3
Vorgehen im Projekt4
Konzept der Migration5
Beispiel6
Vorteile der modellgetriebenen Softwareentwicklung7
Anwendungsüberblick
3
 Anwendung auf Basis Oracle Forms
 Funktional deckt die Anwendung weitgehend alle Anforderungen ab
 Business Logik wurde weitgehend in PL/SQL in Prozeduren in der Datenbank implementiert
 Oberfläche basiert auf Oracle Forms inkl. darin enthaltener View-Logik
 Umfang: >1200 Dialoge und >1300 Datenbanktabellen
 Entwicklung erfolgte durch ein Team in NL
 Starkes fachliches Know-how
 Entwicklungszeitraum >10 Jahre
Herausforderungen
4
 Technologiestack nicht mehr zeitgemäß
 Eine manuelle Migration ist aufgrund des Umfangs weder zeitlich noch finanziell sinnvoll
 Keine Kenntnisse im Bereich der Java Entwicklung im bisherigen Entwicklungsteam vorhanden
 Die Anwendung soll zukünftig international eingesetzt werden – daraus folgt:
 Steigende Nutzerzahl
 Steigende Performanceanforderungen
 Forderung nach hoher Flexibilität und Geschwindigkeit bei der Implementierung neuer Anforderungen
 Veränderte Anforderungen an den Betrieb der Software
Ziele der Migration
5
 Migration auf einen Java basierten Technologiestack
 UI als Webanwendung
 Weiterentwicklung des vorhandenen Entwicklungsteams.
 Sicherung des vorhandenen fachlichen Know-how‘s
 Schaffung einer zukunftssicheren offenen Entwicklungsplattform auf Basis von OpenSource Produkten
 Entwicklung eines Toolings, dass auch für die zukünftige Weiterentwicklung der Anwendung sowie die
Entwicklung neuer Applikationen genutzt werden kann
Vorgehen im Projekt
6
 Ist-Aufnahme aktueller Stand der Anwendung sowie der eingesetzten Techniken und Methoden
 Analyse und Auswahl eines Weges zur Migration
 Technische Migration
 Keine Implementierung neuer Features
 Nur Austausch von Funktionen wenn dies technisch motiviert ist (z.B. Authorizaton)
 Ablösung der bestehenden Produktivumgebung
 Später
 Implementierung neuer Features
 Rollout neuer Standorte
Mögliche Szenarien nach Analyse
7
Zunächst wurde in einer Analysephase die Machbarkeit einer Migration geprüft und mögliche Wege aufgezeigt:
1) Verbleib bei Oracle Forms
+ Schneller Rollout in anderen Ländern
- Keine neue Plattform, schlechte Wartbarkeit
2) Vollständig automatisierte Migration
+ Schneller Einsatz in neuen Ländern
+ Geringere Aufwände als eine Neu-Implementierung
- Schlechte Wartbarkeit des generierten Quelltextes
- Hohes Risiko
3) Automatisierte Migration, anschließende Modernisierung
+ Schneller Einsatz in neuen Ländern
+ Überarbeitung findet in der neuen Plattform statt
- Schlechte Wartbarkeit des generierten Quelltextes
- Überarbeitung kann zu hohen Aufwänden führen
Mögliche Szenarien nach Analyse
8
4) Neue GUI, Verbleib PL/SQL
+ Mittelfristiger Einsatz in neuen Ländern
+ Vorhandene Businesslogik wird weiter verwendet
- PL/SQL bleibt als weitere technische Plattform erhalten
5) Neue GUI, schrittweise Migration PL/SQL
+ Mittelfristiger Einsatz in neuen Ländern
+ Vorhandene Businesslogik wird weiter verwendet
+ Langfristig echter Wechsel auf neue Plattform
- PL/SQL bleibt relativ lange erhalten
- Koexistenz von Java und PL/SQL technisch anspruchsvoll
6) Re-Implementierung in neuer Technik
+ Echter Wechsel auf neue Plattform
+ Keine Rücksichtnahme auf Altlasten
- Hoher Aufwand
- Hohes Risiko
Gewählter Weg für die Migration
9
 Gewählt wurde:
 5) Neue GUI, schrittweise Migration PL/SQL
in Kombination mit einem modellgetriebenen Vorgehen
 Die Gründe hierfür sind:
 Ein mittelfristiger Einsatz in weiteren Ländern ist möglich
 Die vorhandene Businesslogik in der Datenbank kann zunächst eingefroren werden
 Eine langfristige vollständige Migration ist möglich
 Das Risiko wird minimiert
Konzept der Migration – Definition DSL‘s
10
 Für den ersten Schritt der Migration wurden zunächst 3 Beschreibungssprachen
definiert:
 Application DSL
 „Einstieg“ zur Definition einer Applikation
 Business DSL
 Beschreibt Entities, LOV, ValueObjects
 Frontend DSL
 Dient der Beschreibung der Elemente, des Layouts und des Verhaltens von
Bildschirmmasken
 Für die Entwicklung der DSL‘s wurde das Xtext Framework verwendet
DSL Models
Business
Frontend
Application
Konzept der Migration – Von Oracle Forms zur DSL
11
 Die Beschreibung der Oberfläche und der View Logik kann in Form von XML Dateien exportiert
werden
 Die XML Dateien wurden analysiert und ein Eclipse Plugin zur Reduktion auf relevante
Informationen implementiert
 Die reduzierten XML Dateien werden als Basis für einen Transformator verwendet der hieraus
DSL Modelle (Dateien) generiert
 Die Struktur der Oracle Datenbank (Metadaten) wird als weitere Informationsquelle für die
Generierung von DSL Modellen verwendet
 Die XML Dateien enthalten zusätzlich View Logik in Form von SQL Prozeduren. Diese werden
für die späteren manuellen Schritte als Information extrahiert und in Form von Dateien zu den
Modellen bereitgestellt.
 Der gesamte Prozess läuft innerhalb der Entwicklungsumgebung automatisch ab!
Oracle Forms
Application
XMLXMLXML
DB
Konzept der Migration – Von der DSL zur Zielplattform
12
 Für die Zielplattform wurde das Eclipse Scout ausgewählt:
 OpenSource
 Multi Device Support
 Client-Server Architektur
 Standardfunktionalitäten bereits vorhanden (z.B. Tabellensortierung etc.)
 100% Java
 Integration mit anderen Frameworks möglich
 Für die Generierung des Quellcodes der Zielplattform wird das Xtend Framework eingesetzt
 Änderungen an DSL Dateien führen nach dem Speichern direkt zur Neugenerierung des
betroffenen Quellcodes. D.h. die DSL verhält sich wie eine Programmiersprache.
 Als Basis für die Codegenerierung wurde zunächst ein Prototyp in der Zielplattform
implementiert
 Die Arbeit mit der DSL integriert sich nahtlos in die Eclipse Entwicklungsumgebung!
Generator
Templates
Architecture
Konzept der Migration - Zusammenfassung
13
Oracle Forms
Application
XMLXMLXML
DB
DSL Models
Business
Frontend
Application
Generator Target
Application
Templates
Architecture
Source
Code
Beispiel – Screenshot
14
Beispiel – DSL Entität
15
Beispiel – DSL Frontend
16
Vorteile der modellgetriebenen Softwareentwicklung
17
Generelle Vorteile
 Verkürzte Entwicklungszeiten
 Weniger technisches Wissen notwendig
 Leichtere Umstellung auf neue Technologien
 Stärkere Entkopplung von Anwendungswissen und Technologiewissen
 Dokumentation durch Kohärenz von Modell und Code
 Wohldefinierte Softwarearchitektur, besserer Code
Konkrete Vorteile für die Migration:
• Massive Beschleunigung der Migration
• Know-How Träger in lokaler IT können sich auf fachliche Themen konzentrieren
• Schnelle Konsolidierung der Entwicklungs- und Produktions-Technologie
Since 1912

Mais conteúdo relacionado

Destaque

LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOS
LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOSLOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOS
LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOSChazey Partners
 
Targeted job search #PCATX13
Targeted job search #PCATX13Targeted job search #PCATX13
Targeted job search #PCATX13Career Pivot
 
大鼻的故事
大鼻的故事 大鼻的故事
大鼻的故事 verybooks
 
Choosing the right mobile architecture
Choosing the right mobile architectureChoosing the right mobile architecture
Choosing the right mobile architectureLonneke Dikmans
 
Tic ted chino loco quiroga
Tic ted chino loco quirogaTic ted chino loco quiroga
Tic ted chino loco quirogaEduardo Quiroga
 
De geschiedenis van de toekomst justus sturkenboom
De geschiedenis van de toekomst   justus sturkenboomDe geschiedenis van de toekomst   justus sturkenboom
De geschiedenis van de toekomst justus sturkenboomJustus Sturkenboom
 
Infografica PROJECT BASED LEARNING
Infografica PROJECT BASED LEARNINGInfografica PROJECT BASED LEARNING
Infografica PROJECT BASED LEARNINGAlberto Garniga
 
Is it Copyrighted? Can I Use it? (NLA2014)
Is it Copyrighted? Can I Use it? (NLA2014)Is it Copyrighted? Can I Use it? (NLA2014)
Is it Copyrighted? Can I Use it? (NLA2014)Michael Sauers
 
Large-Scale Multimedia Exploration with Adaptive Similarity Measures
Large-Scale Multimedia Exploration with Adaptive Similarity MeasuresLarge-Scale Multimedia Exploration with Adaptive Similarity Measures
Large-Scale Multimedia Exploration with Adaptive Similarity MeasuresFörderverein Technische Fakultät
 
Impacto De Las Ti Cs En La Soc Actual
Impacto De Las Ti Cs En La Soc ActualImpacto De Las Ti Cs En La Soc Actual
Impacto De Las Ti Cs En La Soc ActualUVA
 

Destaque (15)

LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOS
LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOSLOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOS
LOS 7 HÁBITOS DE CSCs ALTAMENTE EFECTIVOS
 
Targeted job search #PCATX13
Targeted job search #PCATX13Targeted job search #PCATX13
Targeted job search #PCATX13
 
Expert Group Report: From Niche to Norm – Raimund Bleischwitz
Expert Group Report: From Niche to Norm – Raimund BleischwitzExpert Group Report: From Niche to Norm – Raimund Bleischwitz
Expert Group Report: From Niche to Norm – Raimund Bleischwitz
 
大鼻的故事
大鼻的故事 大鼻的故事
大鼻的故事
 
Choosing the right mobile architecture
Choosing the right mobile architectureChoosing the right mobile architecture
Choosing the right mobile architecture
 
Tic ted chino loco quiroga
Tic ted chino loco quirogaTic ted chino loco quiroga
Tic ted chino loco quiroga
 
Raw Materials and Upcoming 2016/17 Calls - Milan Grohol
Raw Materials and Upcoming 2016/17 Calls - Milan GroholRaw Materials and Upcoming 2016/17 Calls - Milan Grohol
Raw Materials and Upcoming 2016/17 Calls - Milan Grohol
 
De geschiedenis van de toekomst justus sturkenboom
De geschiedenis van de toekomst   justus sturkenboomDe geschiedenis van de toekomst   justus sturkenboom
De geschiedenis van de toekomst justus sturkenboom
 
Infografica PROJECT BASED LEARNING
Infografica PROJECT BASED LEARNINGInfografica PROJECT BASED LEARNING
Infografica PROJECT BASED LEARNING
 
Bidmas
BidmasBidmas
Bidmas
 
Is it Copyrighted? Can I Use it? (NLA2014)
Is it Copyrighted? Can I Use it? (NLA2014)Is it Copyrighted? Can I Use it? (NLA2014)
Is it Copyrighted? Can I Use it? (NLA2014)
 
Large-Scale Multimedia Exploration with Adaptive Similarity Measures
Large-Scale Multimedia Exploration with Adaptive Similarity MeasuresLarge-Scale Multimedia Exploration with Adaptive Similarity Measures
Large-Scale Multimedia Exploration with Adaptive Similarity Measures
 
Wheat and Tares
Wheat and TaresWheat and Tares
Wheat and Tares
 
Diapositivas paradigma
Diapositivas paradigmaDiapositivas paradigma
Diapositivas paradigma
 
Impacto De Las Ti Cs En La Soc Actual
Impacto De Las Ti Cs En La Soc ActualImpacto De Las Ti Cs En La Soc Actual
Impacto De Las Ti Cs En La Soc Actual
 

Semelhante a Migration einer Oracle Forms Anwendung - Rhenus Freight Network GmbH

Überblick Oracle GoldenGate
Überblick Oracle GoldenGateÜberblick Oracle GoldenGate
Überblick Oracle GoldenGateIleana Somesan
 
Rollout-Prozess für APEX Anwendungen
Rollout-Prozess für APEX AnwendungenRollout-Prozess für APEX Anwendungen
Rollout-Prozess für APEX AnwendungenOliver Lemm
 
Übersetzungsproduktivität: Der nächste Schritt
Übersetzungsproduktivität: Der nächste SchrittÜbersetzungsproduktivität: Der nächste Schritt
Übersetzungsproduktivität: Der nächste SchrittSDL Language Technologies
 
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...Niels de Bruijn
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Niels de Bruijn
 
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?KurtStockinger
 
Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"joergreichert
 
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText BasisAnwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basisnetmedianer GmbH
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017oraclebudb
 
SplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaSplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaGeorg Knon
 
SplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use CaseSplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use CaseSplunk
 
SplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaSplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaSplunk
 
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...OPITZ CONSULTING Deutschland
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebNiels de Bruijn
 
GWAVACon - Secure and managed file transfer - deutsch
GWAVACon - Secure and managed file transfer - deutschGWAVACon - Secure and managed file transfer - deutsch
GWAVACon - Secure and managed file transfer - deutschGWAVA
 
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...Bernd Zuther
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudAarno Aukia
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeKremer Consulting
 
Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2 oraclebudb
 

Semelhante a Migration einer Oracle Forms Anwendung - Rhenus Freight Network GmbH (20)

Überblick Oracle GoldenGate
Überblick Oracle GoldenGateÜberblick Oracle GoldenGate
Überblick Oracle GoldenGate
 
Rollout-Prozess für APEX Anwendungen
Rollout-Prozess für APEX AnwendungenRollout-Prozess für APEX Anwendungen
Rollout-Prozess für APEX Anwendungen
 
Übersetzungsproduktivität: Der nächste Schritt
Übersetzungsproduktivität: Der nächste SchrittÜbersetzungsproduktivität: Der nächste Schritt
Übersetzungsproduktivität: Der nächste Schritt
 
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?
Analyse von Applikationslogs und Querylogs: Datenbanken, Hadoop oder Splunk?
 
Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"
 
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText BasisAnwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017
 
SplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaSplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case Helvetia
 
SplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use CaseSplunkLive! Frankfurt 2016 - Helvetia Use Case
SplunkLive! Frankfurt 2016 - Helvetia Use Case
 
SplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case HelvetiaSplunkLive! Zürich 2016 - Use Case Helvetia
SplunkLive! Zürich 2016 - Use Case Helvetia
 
Kevin Hofer
Kevin HoferKevin Hofer
Kevin Hofer
 
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & Betrieb
 
GWAVACon - Secure and managed file transfer - deutsch
GWAVACon - Secure and managed file transfer - deutschGWAVACon - Secure and managed file transfer - deutsch
GWAVACon - Secure and managed file transfer - deutsch
 
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...
Java Aktuell Bernd Zuther Canary Releases mit der Very Awesome Microservices ...
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of Life
 
Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2
 

Mais de itemis AG

YAKINDU Statechart Tools Training (look-inside)
YAKINDU Statechart Tools Training (look-inside)YAKINDU Statechart Tools Training (look-inside)
YAKINDU Statechart Tools Training (look-inside)itemis AG
 
Zukunftsfähige Softwarearchitekturen
Zukunftsfähige SoftwarearchitekturenZukunftsfähige Softwarearchitekturen
Zukunftsfähige Softwarearchitekturenitemis AG
 
Modernisierung von Altanwendungen
Modernisierung von AltanwendungenModernisierung von Altanwendungen
Modernisierung von Altanwendungenitemis AG
 
YAKINDU Traceability
YAKINDU TraceabilityYAKINDU Traceability
YAKINDU Traceabilityitemis AG
 
GEF Past, present, future
GEF Past, present, futureGEF Past, present, future
GEF Past, present, futureitemis AG
 
Model-based Automotive Software Development
Model-based Automotive Software DevelopmentModel-based Automotive Software Development
Model-based Automotive Software Developmentitemis AG
 
Modellbasierte Migration
Modellbasierte MigrationModellbasierte Migration
Modellbasierte Migrationitemis AG
 
Personas als Methode des Usability Engineerings
Personas als Methode des Usability EngineeringsPersonas als Methode des Usability Engineerings
Personas als Methode des Usability Engineeringsitemis AG
 
Entwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für UsabilityEntwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für Usabilityitemis AG
 
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe DortmundGemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmunditemis AG
 
Von der Nutzungsanforderung zur formalen Softwarespezifikation
Von der Nutzungsanforderung zur formalen SoftwarespezifikationVon der Nutzungsanforderung zur formalen Softwarespezifikation
Von der Nutzungsanforderung zur formalen Softwarespezifikationitemis AG
 
Usability und agile Softwareentwicklung
Usability und agile SoftwareentwicklungUsability und agile Softwareentwicklung
Usability und agile Softwareentwicklungitemis AG
 
Yakindu Statechart - Domain specific statecharts
Yakindu Statechart - Domain specific statechartsYakindu Statechart - Domain specific statecharts
Yakindu Statechart - Domain specific statechartsitemis AG
 
Scrum Portfolio itemis
Scrum Portfolio itemisScrum Portfolio itemis
Scrum Portfolio itemisitemis AG
 
Warum macht Usability Engineering Sinn? Was kann ich tun?
Warum macht Usability Engineering Sinn? Was kann ich tun?Warum macht Usability Engineering Sinn? Was kann ich tun?
Warum macht Usability Engineering Sinn? Was kann ich tun?itemis AG
 
itemis Unternehmenspräsentation
itemis Unternehmenspräsentationitemis Unternehmenspräsentation
itemis Unternehmenspräsentationitemis AG
 

Mais de itemis AG (16)

YAKINDU Statechart Tools Training (look-inside)
YAKINDU Statechart Tools Training (look-inside)YAKINDU Statechart Tools Training (look-inside)
YAKINDU Statechart Tools Training (look-inside)
 
Zukunftsfähige Softwarearchitekturen
Zukunftsfähige SoftwarearchitekturenZukunftsfähige Softwarearchitekturen
Zukunftsfähige Softwarearchitekturen
 
Modernisierung von Altanwendungen
Modernisierung von AltanwendungenModernisierung von Altanwendungen
Modernisierung von Altanwendungen
 
YAKINDU Traceability
YAKINDU TraceabilityYAKINDU Traceability
YAKINDU Traceability
 
GEF Past, present, future
GEF Past, present, futureGEF Past, present, future
GEF Past, present, future
 
Model-based Automotive Software Development
Model-based Automotive Software DevelopmentModel-based Automotive Software Development
Model-based Automotive Software Development
 
Modellbasierte Migration
Modellbasierte MigrationModellbasierte Migration
Modellbasierte Migration
 
Personas als Methode des Usability Engineerings
Personas als Methode des Usability EngineeringsPersonas als Methode des Usability Engineerings
Personas als Methode des Usability Engineerings
 
Entwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für UsabilityEntwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für Usability
 
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe DortmundGemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
 
Von der Nutzungsanforderung zur formalen Softwarespezifikation
Von der Nutzungsanforderung zur formalen SoftwarespezifikationVon der Nutzungsanforderung zur formalen Softwarespezifikation
Von der Nutzungsanforderung zur formalen Softwarespezifikation
 
Usability und agile Softwareentwicklung
Usability und agile SoftwareentwicklungUsability und agile Softwareentwicklung
Usability und agile Softwareentwicklung
 
Yakindu Statechart - Domain specific statecharts
Yakindu Statechart - Domain specific statechartsYakindu Statechart - Domain specific statecharts
Yakindu Statechart - Domain specific statecharts
 
Scrum Portfolio itemis
Scrum Portfolio itemisScrum Portfolio itemis
Scrum Portfolio itemis
 
Warum macht Usability Engineering Sinn? Was kann ich tun?
Warum macht Usability Engineering Sinn? Was kann ich tun?Warum macht Usability Engineering Sinn? Was kann ich tun?
Warum macht Usability Engineering Sinn? Was kann ich tun?
 
itemis Unternehmenspräsentation
itemis Unternehmenspräsentationitemis Unternehmenspräsentation
itemis Unternehmenspräsentation
 

Migration einer Oracle Forms Anwendung - Rhenus Freight Network GmbH

  • 1. Modernisierung von Altsystemen Migration einer Oracle Forms Anwendung Rhenus Freight Network GmbH Stephan Strunk 2014-11-26 Head of IT Solutions
  • 2. 2 Agenda Überblick1 Herausforderungen und Ziele2 Szenarien für die Migration3 Vorgehen im Projekt4 Konzept der Migration5 Beispiel6 Vorteile der modellgetriebenen Softwareentwicklung7
  • 3. Anwendungsüberblick 3  Anwendung auf Basis Oracle Forms  Funktional deckt die Anwendung weitgehend alle Anforderungen ab  Business Logik wurde weitgehend in PL/SQL in Prozeduren in der Datenbank implementiert  Oberfläche basiert auf Oracle Forms inkl. darin enthaltener View-Logik  Umfang: >1200 Dialoge und >1300 Datenbanktabellen  Entwicklung erfolgte durch ein Team in NL  Starkes fachliches Know-how  Entwicklungszeitraum >10 Jahre
  • 4. Herausforderungen 4  Technologiestack nicht mehr zeitgemäß  Eine manuelle Migration ist aufgrund des Umfangs weder zeitlich noch finanziell sinnvoll  Keine Kenntnisse im Bereich der Java Entwicklung im bisherigen Entwicklungsteam vorhanden  Die Anwendung soll zukünftig international eingesetzt werden – daraus folgt:  Steigende Nutzerzahl  Steigende Performanceanforderungen  Forderung nach hoher Flexibilität und Geschwindigkeit bei der Implementierung neuer Anforderungen  Veränderte Anforderungen an den Betrieb der Software
  • 5. Ziele der Migration 5  Migration auf einen Java basierten Technologiestack  UI als Webanwendung  Weiterentwicklung des vorhandenen Entwicklungsteams.  Sicherung des vorhandenen fachlichen Know-how‘s  Schaffung einer zukunftssicheren offenen Entwicklungsplattform auf Basis von OpenSource Produkten  Entwicklung eines Toolings, dass auch für die zukünftige Weiterentwicklung der Anwendung sowie die Entwicklung neuer Applikationen genutzt werden kann
  • 6. Vorgehen im Projekt 6  Ist-Aufnahme aktueller Stand der Anwendung sowie der eingesetzten Techniken und Methoden  Analyse und Auswahl eines Weges zur Migration  Technische Migration  Keine Implementierung neuer Features  Nur Austausch von Funktionen wenn dies technisch motiviert ist (z.B. Authorizaton)  Ablösung der bestehenden Produktivumgebung  Später  Implementierung neuer Features  Rollout neuer Standorte
  • 7. Mögliche Szenarien nach Analyse 7 Zunächst wurde in einer Analysephase die Machbarkeit einer Migration geprüft und mögliche Wege aufgezeigt: 1) Verbleib bei Oracle Forms + Schneller Rollout in anderen Ländern - Keine neue Plattform, schlechte Wartbarkeit 2) Vollständig automatisierte Migration + Schneller Einsatz in neuen Ländern + Geringere Aufwände als eine Neu-Implementierung - Schlechte Wartbarkeit des generierten Quelltextes - Hohes Risiko 3) Automatisierte Migration, anschließende Modernisierung + Schneller Einsatz in neuen Ländern + Überarbeitung findet in der neuen Plattform statt - Schlechte Wartbarkeit des generierten Quelltextes - Überarbeitung kann zu hohen Aufwänden führen
  • 8. Mögliche Szenarien nach Analyse 8 4) Neue GUI, Verbleib PL/SQL + Mittelfristiger Einsatz in neuen Ländern + Vorhandene Businesslogik wird weiter verwendet - PL/SQL bleibt als weitere technische Plattform erhalten 5) Neue GUI, schrittweise Migration PL/SQL + Mittelfristiger Einsatz in neuen Ländern + Vorhandene Businesslogik wird weiter verwendet + Langfristig echter Wechsel auf neue Plattform - PL/SQL bleibt relativ lange erhalten - Koexistenz von Java und PL/SQL technisch anspruchsvoll 6) Re-Implementierung in neuer Technik + Echter Wechsel auf neue Plattform + Keine Rücksichtnahme auf Altlasten - Hoher Aufwand - Hohes Risiko
  • 9. Gewählter Weg für die Migration 9  Gewählt wurde:  5) Neue GUI, schrittweise Migration PL/SQL in Kombination mit einem modellgetriebenen Vorgehen  Die Gründe hierfür sind:  Ein mittelfristiger Einsatz in weiteren Ländern ist möglich  Die vorhandene Businesslogik in der Datenbank kann zunächst eingefroren werden  Eine langfristige vollständige Migration ist möglich  Das Risiko wird minimiert
  • 10. Konzept der Migration – Definition DSL‘s 10  Für den ersten Schritt der Migration wurden zunächst 3 Beschreibungssprachen definiert:  Application DSL  „Einstieg“ zur Definition einer Applikation  Business DSL  Beschreibt Entities, LOV, ValueObjects  Frontend DSL  Dient der Beschreibung der Elemente, des Layouts und des Verhaltens von Bildschirmmasken  Für die Entwicklung der DSL‘s wurde das Xtext Framework verwendet DSL Models Business Frontend Application
  • 11. Konzept der Migration – Von Oracle Forms zur DSL 11  Die Beschreibung der Oberfläche und der View Logik kann in Form von XML Dateien exportiert werden  Die XML Dateien wurden analysiert und ein Eclipse Plugin zur Reduktion auf relevante Informationen implementiert  Die reduzierten XML Dateien werden als Basis für einen Transformator verwendet der hieraus DSL Modelle (Dateien) generiert  Die Struktur der Oracle Datenbank (Metadaten) wird als weitere Informationsquelle für die Generierung von DSL Modellen verwendet  Die XML Dateien enthalten zusätzlich View Logik in Form von SQL Prozeduren. Diese werden für die späteren manuellen Schritte als Information extrahiert und in Form von Dateien zu den Modellen bereitgestellt.  Der gesamte Prozess läuft innerhalb der Entwicklungsumgebung automatisch ab! Oracle Forms Application XMLXMLXML DB
  • 12. Konzept der Migration – Von der DSL zur Zielplattform 12  Für die Zielplattform wurde das Eclipse Scout ausgewählt:  OpenSource  Multi Device Support  Client-Server Architektur  Standardfunktionalitäten bereits vorhanden (z.B. Tabellensortierung etc.)  100% Java  Integration mit anderen Frameworks möglich  Für die Generierung des Quellcodes der Zielplattform wird das Xtend Framework eingesetzt  Änderungen an DSL Dateien führen nach dem Speichern direkt zur Neugenerierung des betroffenen Quellcodes. D.h. die DSL verhält sich wie eine Programmiersprache.  Als Basis für die Codegenerierung wurde zunächst ein Prototyp in der Zielplattform implementiert  Die Arbeit mit der DSL integriert sich nahtlos in die Eclipse Entwicklungsumgebung! Generator Templates Architecture
  • 13. Konzept der Migration - Zusammenfassung 13 Oracle Forms Application XMLXMLXML DB DSL Models Business Frontend Application Generator Target Application Templates Architecture Source Code
  • 15. Beispiel – DSL Entität 15
  • 16. Beispiel – DSL Frontend 16
  • 17. Vorteile der modellgetriebenen Softwareentwicklung 17 Generelle Vorteile  Verkürzte Entwicklungszeiten  Weniger technisches Wissen notwendig  Leichtere Umstellung auf neue Technologien  Stärkere Entkopplung von Anwendungswissen und Technologiewissen  Dokumentation durch Kohärenz von Modell und Code  Wohldefinierte Softwarearchitektur, besserer Code Konkrete Vorteile für die Migration: • Massive Beschleunigung der Migration • Know-How Träger in lokaler IT können sich auf fachliche Themen konzentrieren • Schnelle Konsolidierung der Entwicklungs- und Produktions-Technologie