Oracle Forms und der Weg in eine
zukunftsorientierte Entwicklungsumgebung
Jürgen Allmich, MT AG
Sven-Olaf Kelbert, MT AG
19.03.2009 Forms-Modernisierung 2
Häufig gestellte Fragen
Wie lange
wird Oracle
noch Forms
unterstützen?
Wir nutzen heute
Forms Client/Server.
Wie soll es damit
weitergehen?
Bei uns soll künftig
mit J2EE entwickelt
werden. Was wird
aus den Forms-
Anwendungen?
Bietet Oracle
für Forms-
Entwickler eine
Migration nach
J2EE?
19.03.2009 Forms-Modernisierung 3
Überblick
Oracle Forms heute
Gründe für eine Modernisierung
Varianten der Modernisierung
Forms ablösen
Forms modernisieren
Vor- und Nachteile
Randnotizen
weitere Vorgehensweise
19.03.2009 Forms-Modernisierung 4
Wege zum Ziel
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 5
Oracle Forms heute
sehr aktive Kundenbasis
> 2000 Beiträge/Monat im OTN-Forum
> 7000 Downloads/Monat (OTN)
> 32000 Besuche der Forms-Seiten
ca. 3000 Forms-Kunden in Deutschland
viele Kundenreferenzen und Lösungen
zahlreiche Veranstaltungen
19.03.2009 Forms-Modernisierung 6
Der einfache Weg
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 7
Beibehaltung der Architektur
Forms als Client/Server-Anwendung weiter betreiben
Vorteile
- keine Kosten/Aufwände für die Migration
- keine Kosten/Aufwände für den Oracle Application Server
- kein Umlernen für Anwender und Entwickler
Nachteile
- kein Support
- u. U. Probleme mit neuen Client-Betriebssystemen
- u. U. Probleme mit neuen Datenbank-Versionen
- keine neuen Features (z. B. Java- oder Browser-Integration)
19.03.2009 Forms-Modernisierung 8
Gründe für eine Modernisierung
19.03.2009 Forms-Modernisierung 9
Gründe für eine Modernisierung
technische Gründe
Portabilität
Flexibilität
einfaches Einhalten von Standards
Applikation als „Self-Service“ oder „Business to Customer“ im Internet
Nutzung eines extrem einfachen HTML User-Interface
Möglichkeit der individuellen Gestaltung der Applikation
19.03.2009 Forms-Modernisierung 10
Der Weg in die Datenbank
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 11
Was ist APEX?
19.03.2009 Forms-Modernisierung 12
Warum APEX?
moderne Web-Entwicklung
einfach und schnell in der Entwicklung
leichter Umstieg für Forms-Entwickler
deklarativ und Wizard-gestützt
RAD SQL und PL/SQL-zentrierte Tools
kostenloses Datenbank-Feature
benötigt nur die Datenbank
viele eingebaute Konzepte für
höhere Entwickler-Produktivität
19.03.2009 Forms-Modernisierung 13
Wie APEX?
schnelle Neuentwicklung einer Anwendung
Forms-Migration ab APEX-Version 3.2
19.03.2009 Forms-Modernisierung 14
APEX Forms Migration
Migration IST
Starthilfe für ein Modernisierungsprojekt von Forms nach APEX
automatische Konvertierung von einigen Forms-Komponenten
Analyse der Forms-Applikations-Logik
Bequeme Verfolgung der manuelle Konvertierung von Triggern und nicht-
konvertierbarer Logik
Migration IST NICHT
eine Wunderwaffe
ein Forms Emulator
19.03.2009 Forms-Modernisierung 15
Wofür APEX?
abgegrenzte datenbanknahe Anwendungen
mit nicht zu viel Komplexität
Ersatz von Access-Lösungen
Ersatz von Excel
19.03.2009 Forms-Modernisierung 16
Der Weg in die Java-Welt
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 17
Ablösung durch Java
Neuentwicklung
Migration mit Tools von Drittanbietern
Problem: Objektorientierung, andere Entwicklungsmethoden
Automatische Erzeugung des Datenmodells
PL/SQL-Logik kann nicht sinnvoll übertragen werden
?
19.03.2009 Forms-Modernisierung 18
Der Weg in die Java-Welt von Oracle
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 19
Was ist ADF?
Komplettes Java-Framework mit viel enthaltener Funktionalität
Unterstützung moderner Technologien und Architekturen (JSP, JSF, MVC, SOA,…)
Schnelle Implementierung durch visuelle und deklarative Entwicklung (Rapid Application Development)
Praktisch unbegrenzte Entwicklungsmöglichkeiten und Flexibilität durch J2EE
Einfacher Datenbankzugriff (ADF Business Components)
Große Auswahl an Web User Interface Komponenten (ADF Faces) und Templates
einfacher Einstieg für Forms-Entwickler in die Java-Welt
19.03.2009 Forms-Modernisierung 20
Oracle ADF Faces Rich Client Components
mehr als 150 AJAX-fähige Komponenten
ab OAS 10.3 (WebLogic)
19.03.2009 Forms-Modernisierung 21
ADF-Seiteneffekte
Heterogene Umgebung erfordert viel Wissen bei komplexen
Anwendungen (J2EE, XML, Oracle, Patterns, JDeveloper, …)
Eventuell ist ein Redesign von Teilen der Anwendungsarchitektur
notwendig (z. B. User- und Rechteverwaltung)
Initialer Integrationsaufwand ist notwendig (z. B.
Versionsverwaltung, Benutzerverwaltung, Browser-/GUI-
Komponenten)
Mapping Forms- auf J2EE-Konzepte
19.03.2009 Forms-Modernisierung 22
Oracle ADF Faces Rich Client Components
deklaratives Partial Page Rendering
Unterstützung für „reusable page regions“ und „deklarative
Komponenten“
Nutzung von Task Flows zur Navigation in der Anwendung
Nutzung von Bookmarking
19.03.2009 Forms-Modernisierung 23
Oracle ADF Faces Rich Client Components
Page Templates
19.03.2009 Forms-Modernisierung 24
Oracle ADF Faces Rich Client Components
Verschiedene Styles und Skinning
19.03.2009 Forms-Modernisierung 25
Datenvisualisierungskomponenten
Mehr als 50 Graph-Typen
Adobe Flash-Rendering und Animation
Interaktivität
Oracle ADF Faces Rich Client Components
19.03.2009 Forms-Modernisierung 26
Migration von Forms nach ADF
Migration mit JHeadstart
automatische Erzeugung des Datenmodells nach ADF BC
automatische Erstellung des Layouts in ADF Faces
Übernahme von PL/SQL-Code (Trigger,…) problematisch
manuelle Übernahme in die DB und Integration in ADF oder
Neu-Entwicklung der Business-Logik in ADF
19.03.2009 Forms-Modernisierung 27
Der Weg von Oracle weg
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 28
Ablösung durch .NET
Neuentwicklung
Migration mit Forms2net
sinnvoll, wenn .NET strategische Systemumgebung ist
gute Integration mit MS Office und MS Server-Produkten
völlig neues Terrain mit Unwägbarkeiten
19.03.2009 Forms-Modernisierung 29
Der Weg in die Modernisierung
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 30
Oracle Forms Support
Forms 6i (auch C/S) / 9i: Support ausgelaufen
Forms 10g: Extended Support bis 31.12.2009
Forms 10gR2: Extended Support bis 31.12.2011
Zukünftige Forms-Releases: Support bis mindestens 2017
19.03.2009 Forms-Modernisierung 31
Forms modernisieren
Modernisierung durch
Migration auf neueste Releases
Neues Look-and-Feel
Einbindung von Java in Forms
Einbindung in SOA-Umgebung
- Nutzung und Bereitstellung von Web-Services
- Einbindung in BPEL-Prozess
19.03.2009 Forms-Modernisierung 32Forms-Modernisierung 32
Pluggable Java Components (PJC)
Komponenten mit optischen und funktionalen Erweiterungen.
19.03.2009 Forms-Modernisierung 33
Pluggable Java Components (PJC)
Standard-Forms-Items:
Ausgangspunkt für eigene Erweiterungen
01.03.2009 Forms-Modernisierung 33
19.03.2009 Forms-Modernisierung 34
Pluggable Java Components (PJC)
Alles ist möglich – ist alles nötig?
01.03.2009 Forms-Modernisierung 34
19.03.2009 Forms-Modernisierung 35
Forms Look-and-Feel
19.03.2009 Forms-Modernisierung 36
Forms Look & Feel
01.03.2009 Forms-Modernisierung 36
19.03.2009 Forms-Modernisierung 37
Vorteile der Forms-Modernisierung
Bewährte, datenbanknahe Technologie + Schritt halten mit
technologischen Entwicklungen
Modernes Look-and-Feel
Integration in die SOA-Welt
Zentrales Deployment und Administration
Performance
Keine oder nur geringe Umstellung der Entwickler
1. Schritt: Migration auf neueste Releases
19.03.2009 Forms-Modernisierung 38
Vorteile der Forms-Ablösung
Zukunftsfähige Technologie
Portabilität
Flexibilität
Individualisierung
einfaches Einhalten von Standards bei der Entwicklung
Verbesserung der QS-Möglichkeiten
19.03.2009 Forms-Modernisierung 39
Randnotizen
Ersatz
für den
Designer
Auswirkungen
auf die
Entwicklungs-
umgebung
Ersatz
für
Reports
Schnittstellen
zu anderen
Systemen
19.03.2009 Forms-Modernisierung 40
SQL Developer Data Modeling
Logische Modellierung (ERD)
Relationale Modellierung
Physikalische Modellierung
Forward/Reverse Engineering
Import, Export und
Code Generierung
Verschiedene
Formatierungsmöglichkeiten
19.03.2009 Forms-Modernisierung 42
Antworten
Wie lange
wird Oracle
noch Forms
unterstützen?
Wir nutzen heute
Forms Client/Server.
Wie soll es damit
weitergehen?
Bei uns soll künftig
mit J2EE entwickelt
werden. Was wird
aus den Forms-
Anwendungen?
Bietet Oracle
für Forms-
Entwickler eine
Migration nach
J2EE?
19.03.2009 Forms-Modernisierung 43
Antworten
mindestens
bis 2017
Wir nutzen heute
Forms Client/Server.
Wie soll es damit
weitergehen?
Bietet Oracle
für Forms-
Entwickler eine
Migration nach
J2EE?
Bei uns soll künftig
mit J2EE entwickelt
werden. Was wird
aus den Forms-
Anwendungen?
19.03.2009 Forms-Modernisierung 44
Antworten
mindestens
bis 2017
Wir nutzen heute
Forms Client/Server.
Wie soll es damit
weitergehen?
Umstellung
oder
Einbindung
Bietet Oracle
für Forms-
Entwickler eine
Migration nach
J2EE?
19.03.2009 Forms-Modernisierung 45
Antworten
mindestens
bis 2017
Wir nutzen heute
Forms Client/Server.
Wie soll es damit
weitergehen?
Umstellung
oder
Einbindung
Jein!
19.03.2009 Forms-Modernisierung 47
Antworten
mindestens
bis 2017
Eine Umstellung wird
immer
wahrscheinlicher
Umstellung
oder
Einbindung
Jein!
19.03.2009 Forms-Modernisierung 48
Wohin soll es gehen?
APPLICATION DEVELOPMENT
FRAMEWORK
19.03.2009 Forms-Modernisierung 49
Entscheidungsfindung für die optimale Zielumgebung
Wie sieht die aktuelle DV Landschaft aus ?
Welche aktuellen Anforderungen oder Bedürfnisse haben die Fachabteilungen ?
Sind größere Anpassung an bestehenden Systemen geplant ?
Welche nächsten Projekte sind geplant ?
Welches Entwickler know-how ist an Board ?
Sind SOA Projekte geplant ?
Welche Schnittstellen bestehen zwischen den aktuellen Systemen ?
Gibt es neuen Anforderungen an externe Schnittstellen ?
Welchen Umfang haben die aktuellen Forms Anwendungen ?
…
19.03.2009 Forms-Modernisierung 50
Forms
Forms
Java
APEX
2009 201?
Der Weg zu einer modernen Zielumgebung
Das Ziel steht fest !
Aber wie sieht der Weg dahin aus ?
19.03.2009 Forms-Modernisierung 51
Migrations / Modernisierungs - Optionen
Horizontale Migration
Austausch einzelner Architekturschichten
Vertikale Migration
Austausch kompletter Anwendungen bzw. Anwendungsfunktionen
Kompletter Umstieg
Migration der gesamten Developer Anwendungen in einem Gesamtprojekt
Stufenweiser Umstieg
Migration in einzelnen Schritten
19.03.2009 Forms-Modernisierung 52
Horizontale Migration
Präsentations-
schicht
Geschäftslogik
Datenbankschicht
Austausch /
Modernisierung
Geschäftsregeln
Forms
In erster Linie für die Ebene der Geschäftslogik geeignet
Qualitätssteigerung des Code durch bessere Strukturierung und Wiederverwendbarkeit (-> SOA Ansätze)
Es können sehr kleine Projekte gestartet werden, da man theoretisch nach Masken bzw. Geschäftsfunktionen vorgehen kann
?Integration
z.B. von
Java
Beans
Austausch
/ Modernisierung
Formsmasken
Austausch /
Modernisierung
Datenbankregeln
Web-
ServicesPL/SQL
in DB
? Web-
Services
Austausch Modernisierung
19.03.2009 Forms-Modernisierung 53
Java AnwendungenForms - Anwendungen
Vertikale Migration
A B N
Präsentations-
schicht
Businesslogik
Datenbank-
schicht
APräsentationschicht
Ablauflogik
Businesslogik
Datenzugriff
Datenbankschicht
B NPS
AL
BL
DZ
DB
PS
PL
BL
DZ
DB
PS
BL
DB
PS
BL
DB
Kompletter Architekturumstieg wird kennen gelernt
Mögliche Problemstellungen bei Schnittstellen zu anderen Systemen (z.B. gegenseitiger Aufruf und Datenaustausch)
Projekte lassen sich nach Geschäftsprozessen schneiden
Technologieumstieg
19.03.2009 Forms-Modernisierung 54
Komplettumstieg
Forms-Anwendungen Java-Anwendungen
A
BC
D
A
BC
D
Nur bei kleiner Anzahl Forms-Anwendungen oder
bei Release Migration sinnvoll
Entspricht quasi der Neuentwicklung des Gesamtsystems
Großes Projekt mit großem Risiko (Zeit, Aufwand ?)
Zusätzliche Anforderungen „stören“ das Projekt
19.03.2009 Forms-Modernisierung 55
APEX-Anwendungen
Java-Anwendungen
Stufenweiser Umstieg
Forms-Anwendungen Java-Anwendungen
A
B
C
D
1.A
BC
D
Ideale Vorgehensweise bei großen Anwendungen
2.
3.
Begrenztes Risiko
Erster Erfahrungsaufbau möglichst mit einfachen Anwendungen
Endanwender müssen sich ggf. auf zwei unterschiedliche Systeme einstellen
19.03.2009 Forms-Modernisierung 56
Forms Forms
JavaJava
APEXAPEX
2009 201?
Stufenweise / Vertikale Migration als optimaler Weg
19.03.2009 Forms-Modernisierung 57
Nicht nur die Technologie modernisieren !
Sondern auch:
Neue Modellierungsmethoden und Werkzeuge (UML, Objektorientierung)
Neue Entwicklungsumgebung und Vorgehensweisen (Versionsverwaltung, Buildprozesse, …)
Qualifizierung der Mitarbeiter
Neue Testverfahren und Testwerkzeuge
Umgewöhnung der Endanwender
Zusätzliche Anforderungen an IT-Architekten (stärkere Nutzung Appl. Server, ggf. ESB, Webservices, …)
Stufenweise Migration bedeutet
auch stufenweises Lernen !
19.03.2009 Forms-Modernisierung 58
Mit MT AG in 3 Schritten zur Migration/Modernisierung
1. Analyse der aktuellen Rahmenbedingungen
2. Konzept für eine mögliche Migrations-/Modernisierungs-Strategie
Identifikation der geeigneten Anwendungen / Funktionen
Grobplanung des Umstiegsszenarios
Aus- und Weiterbildungskonzept
Entwicklungsumgebung / Vorgehensweisen
QS Verfahren und Werkzeuge
3. Umsetzung der Migration/Modernisierung
Durchführung von Workshops & Coaching Maßnahmen
Einbindung von Experten Know-how aus diversen Technologiethemen
Unterstützung bei der konkreten Umsetzung
Komplettrealisierung einzelner Arbeitspakete
19.03.2009 Forms-Modernisierung 59
Erfahrungen MT AG
Forms-
Migrations-
Projekte
Weiterbildung
von Forms-
Entwicklern
Richtung Java
APEX-
Projekte
ADF-
Einführung
Workshops /
Schulungen
Training
on the Job
Java-
Projekte
Entwicklung
von Style Guides
und Richtlinien
19.03.2009 Forms-Modernisierung 60
Fazit
Bleiben Sie solange bei Forms, wie es geht
Migrieren Sie immer auf die aktuelle Forms-Version und nutzen
Sie die jeweiligen neuen Features zur Modernisierung der
Anwendungen
Prüfen Sie die Möglichkeit der „Code-Bereinigung“ von Forms-
Anwendungen (-> SOA Ansatz)
Bereiten Sie mögliche Modernisierungs/Umstiegs-Szenarien
frühzeitig vor
Stellen Sie Ihre Anwendung schrittweise um
Nutzen Sie die Erfahrungen und Unterstützungsmöglichkeiten
durch MT AG und Oracle
19.03.2009 Forms-Modernisierung 62
Ansprechpartner
APEX: Niels de Bruijn
Java: Volker Koster
ADF: Arne Platzen
Forms: Sven-Olaf Kelbert
Top Related