Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF BASEL 1 BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 DOAG Konferenz 2011 Jan-Peter Timmermann Principal Consultant, Trivadis GmbH 17.11.2011, Nünberg FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN Trivadis Facts & Figures 11 Trivadis Niederlassungen mit über 550 Mitarbeitern Hamburg Finanziell unabhängig und nachhaltig profitabel Kennzahlen 2010 Umsatz CHF 101 / EUR 73 Mio. ~180 MA Düsseldorf Dienstleistungen für über 700 Kunden in mehr als 1‘800 Projekten Frankfurt Über 170 Service Level Agreements Stuttgart Wien Freiburg Basel Bern Lausanne 2 Zürich München ~20 MA ~350 MA 2011 © Trivadis Tagebuch Trivadis – das eines Unternehmen Entwicklers: Von Oracle Forms hin zu ADF Datum 17.11.2011 Mehr als 5'000 Trainingsteilnehmer Forschungs- und Entwicklungsbudget: CHF 5.0 / EUR 3.6 Mio. Das Besondere Kundenindividuelle Lösungskompetenz und Herstellerunabhängigkeit Technologiekompetenz bietet fundierte Methodenkenntnisse und eigenentwickelte Vorgehensweisen garantiert wiederholbare Qualität und Realisierungssicherheit hat über 17 Jahre Expertise in Oracle und Microsoft verfügt über ein eigenes Technology Center und setzt auf technologische Exzellenz Lösungs- und Integrations-Know-how hat eine breite, branchenübergreifende Kundenbasis und jährlich über 1800 Projekte verbindet technologisches Spezialistenwissen mit dem Verständnis für die Business-Spezifika des Kunden Begleitung über den gesamten IT-ProjektLifecycle 3 begleitet den gesamten IT-Projekt-Lifecycle mit einem modularen Dienstleistungsportfolio bietet für jeden „Reifegrad“ die passende Dienstleistungs- und Lösungskombination 2011 © Trivadis Tagebuch Trivadis – das eines Unternehmen Entwicklers: Von Oracle Forms hin zu ADF Datum 17.11.2011 Agenda 1. Einleitung 2. Ausgangslage 3. Entscheidung für das Framework 4. Vier Tage 5. Fazit 4 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Einleitung Da Oracle ja immer wieder Forms abgekündigt hatte kamen immer wieder Frage auf wie da wären Was wird aus den Forms Entwicklern Wie kann ich mein Wissen retten Was für Entwicklungs-Umgebungen gibt es für mich Bin ich überhaupt in der Lage etwas neues zu erlernen 5 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Ausgangslage Hierzu ein kurzer Ausschnitt aus meinem Lebenslauf Kein Studium der Informatik Keine Programmiersprache erlernt Als Quereinsteiger in den 1980er angefangen zu Programmieren Mehr als 12 Jahre Forms/Reports Entwicklungs-Erfahrung Viele Migrationen von C/S auf Forms im Web Viele Vorträge zu dem Thema Forms / Reports gehalten Schulungen im Bereich Forms/Reports gegeben Versucht mit den Kunden zusammen Alternativen zu erkennen 6 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Entscheidung Was für eine neue Welt kann sich mir öffnen. Ich bin es von Forms gewohnt seit über 12 Jahren dieselbe IDE zu nutzen Also brauche ich eine: Zukunftssichere Entwicklungs-Umgebung Forms ähnlich, Wizard Unterstützung Stabil in der Ausführung sowie in der Entwicklung Geschwindigkeit muss gut sein Dauerhaft, nicht jedes Jahr eine neue Umgebung Betriebssystem unabhängig Migrations-fähig Anbindung an Oracle Datenbanken Was bietet der Mark im Oracle Umfeld einem da? 7 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Entscheidung Rückblick Forms über 20 Jahre von Oracle gepflegt und weiter entwickelt Über all die Jahre Migrations-Pfade vorhanden Laufend Erweiterungen Sehr selten obsolete Funktionen Sehr guten Support Stabile IDE und Laufzeit Ich bin also sehr verwöhnt ! 8 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Warum ADF Framework zum Erstellen einer mehrschichtigen Datenbank-Applikation für die JEE-Plattform Einfache Generierung eines Domänenmodells Einfache Anbindung von JSF, Java Swing, Jakarta Struts und JSP Clients Integration in JDeveloper Wizards und grafische Editoren zur Erstellung & Deployment von Business Components Entwicklerparadigma stark an 4-GL-Sprachen, Oracle Forms angelehnt 9 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Was ist ADF Oracle Application Development Framework, kurz Oracle ADF, ist ein kommerzielles Java EE-Framework, das sich zum Ziel gesetzt hat auf einfache, visuelle, deklarative und effiziente Art und Weise Java-EnterpriseAnwendungen zu entwickeln. ADF bietet mit einem Spektrum an Komponenten und einem Zusammenschluss an Frameworks (wie z.B. TopLink, JSF und Struts) einen ganzheitlichen Ansatz auf Basis des ModelView-Controller (MVC) -Prinzips. Durch den Einsatz von bewährten Designmustern, metadatengesteuerten Komponenten und visuellen Tools wird Rapid Application Development unterstützt. Aus der deutschen Wikipedia: http://de.wikipedia.org/wiki/Oracle_ADF 10 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 ADF in Fusion Middleware Oracle WebCenter Grid Control, IDM Management etc. Exalogic Data Integration BI ADF BPM and Human Taskflow Mapviewer and Spatial Business Activity Monitoring Content Management Quelle: Oracle ADF at the Heart of Middleware Frank Nimphius 11 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 ADF warum Für mich war wichtig, das man heute mit Gewissheit sagen kann, dass ADF Oracles strategisches Framework für die Softwareentwicklung darstellt 12 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 ADF Quelle: Oracle ADF at the Heart of Middleware Frank Nimphius 13 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Entscheidung für ADF Ich persönlich stelle es in der Wertigkeit auf die gleiche Stufe wie Forms Also fing ich an die notwendigen Komponenten zusammen zu tragen Was brauche ich um mit ADF entwickeln zu können 14 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Starten in die neue Welt Zusammentragen der benötigten Komponenten: Datenbank http://download.oracle.com/otn/nt/oracle10g/xe/10201/OracleXEUniv.exe Jdeveloper, Java, Weblogic http://www.oracle.com/technetwork/developer-tools/jdev/downloads/index.html 15 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Vorbereitungen Aus dem OTN herunterladen: JDeveloper in der Version 11.2 (1,2 GB) Einrichten der Umgebung auf der bereits eine Datenbank läuft JDeveloper installieren Demo Anwendung anlegen FOD Schema welches Oracle bereitstellt 16 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Vorbereitungen Anlegen eines Middleware Homes Standard Installation Startmenü Auswahl Installation abgeschlossen 17 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Einrichten der Beispiel Anwendung Als Demo Anwendung habe ich mich für das Fusion Order Demo Schema entschieden. Viele Beispiele im OTN basieren auf diesem Schema Zum Herunterladen der benötigten Sourcen steht im OTN folgender Link zur Verfügung: http://www.oracle.com/technetwork/developer-tools/jdev/index-095536.html 18 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Was ist der JDeveloper Der JDeveloper ist eine kostenlose Integrierte Entwicklungsumgebung (IDE) von Oracle. Er bietet Möglichkeiten für die Softwareentwicklung in Java, XML, SQL, PL/SQL, HTML, JavaScript, BPEL und PHP. Der JDeveloper deckt den vollen Entwicklungsprozess ab, beginnend mit dem Entwurf, über die Kodierung, Debugging, Optimierung und Profiling, bis hin zum Deployment. Seit 2005 ist er frei verfügbar. Quelle: http://de.wikipedia.org/wiki/JDeveloper 19 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Was ist der JDeveloper Mit JDeveloper verfolgt Oracle das Ziel, die Anwendungsentwicklung zu vereinfachen. Dabei wurde auf eine visuelle und deklarative Herangehensweise an die Softwareentwicklung und auf eine fortschrittliche Kodierumgebung Wert gelegt. Der Oracle JDeveloper ist die empfohlene Entwicklungsumgebung (IDE) für das Application Development Framework (ADF) von Oracle, das auf Java EE basiert. Quelle: http://de.wikipedia.org/wiki/JDeveloper 20 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Was ist der JDeveloper Der Oracle JDeveloper ist die Hauptplattform für diverse Oracle-Werkzeuge. Der Kern dieser IDE stellt eine API zur Verfügung, die von anderen Programmierern genutzt wird, um Erweiterungen für den JDeveloper zu erstellen. Die Design- und Entwicklungskomponenten von BPEL, WebCenter (Portal) , Oracle Business Intelligence und andere Komponenten der Oracle-Plattform bauen auf dieser JDeveloper API auf. Dieselbe IDE-Plattform dient als Basis für den SQL Developer, ein anderes Produkt von Oracle, welches speziell auf die PL/SQL und Datenbankentwicklung abzielt Quelle: http://de.wikipedia.org/wiki/JDeveloper 21 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der JDeveloper 22 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Bereiche des Jdevelopers Application Navigator Der Application Navigator zeigt eine file-basierte Sicht auf die Struktur der Applikation. Durch Doppelklick auf einzelne Dateien werden diese in der „Mitte“, d.h. im zentralen Arbeitsbereich geöffnet - In Forms F3 Structure Pane Im Structure Pane (Strukturbereich) wird die jeweilige Struktur dargestellt, ausgehend von der aktuell mit dem Cursor markierten Komponente der Applikation - In Reports ebenfalls vorhanden 23 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Bereiche des Jdevelopers Component Palette Auf der rechten Seite der IDE stehen die verfügbaren Komponenten zur Verfügung, die per Drag and Drop auf die Design Oberfläche gezogen werden können. Die Component Palette (im Screenshot rechts oben) beinhaltet eine Auswahl von Optionen (Komponenten, Ressourcen), die per Drag & Drop im jeweiligen Kontext (Page, Taskflow etc.) verwendet werden können. - Im Forms Builder auf der linken Seite Property Inspector Über den Property Inspector können für die einzelnen Komponenten individuelle Einstellungen vorgenommen werden. Je nach Komponente sind diese unterschiedlich - Über F4 erreichbar in Forms 24 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Nach zwei Tagen Viele Ähnlichkeiten zwischen Forms und Jdeveloper Zum erstellen werden häufig Wizard genommen Vieles wird nicht durch Code sondern durch Properties „konfiguriert“ Business Components für mich ähnlich wie Datenblöcke 25 Festlegen der Tabellen Attribute Festlegen von Constraints Festlegen von NULL Etc… 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der dritte Tag Die ersten Tage verbrachte ich mit der IDE sowie der Umgebung, nun wollte ich mich einmal an eine kleine Beispielanwendung heranwagen Als Einstieg erlaubte ich mir das Buch von Grant, Ronald: Quick Start Guide to Oracle Fusion Development: Oracle JDeveloper and Oracle ADF (2010) 26 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der Dritte Tag Nachdem ich mein „Gerüst“ erstellt hatte ging es an die Datenbasis In Forms sind das die Datenblöcke welche mit einem Wizard erstellt werden können Im ADF Umfeld ist das der ADFbc-Wizard 27 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der Dritte Tag 28 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der dritte Tag Ich habe im Umfeld von ADFbc weit aus mehr Möglichkeiten als im Forms Umfeld 29 Details UI Hints Validation Rules Security Dependencies Cproperties 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Der vierte Tag Webanwendung erstellen Auf Grund von Abhängigkeiten schwerer als erwartet Viele Möglichkeiten eine „Leinwand“ zu erstellen Hilfreich Tagesworkshop Nachdem die ersten Hürden genommen waren Sehr viele Möglichkeiten Objekte zu nutzen Vordefinierte Objekte >150 Stück Einstellungen wie in Forms per „Properties“ 30 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 Fazit Sehr schnell erste Erfolge erziehlt Sehr hohen Wiedererkennungs-Faktor Aber für große komplexe Projekte nicht ausreichend Im ADF Umfeld gibt es sehr viel zu lernen Projekt Teams mischen aus ADF-Guru‘s und Forms-Guru‘s Von Forms in Richtung ADF per automatischer Migration Rest von ca. 40% händisch nacharbeiten PitssCon, Jheadstart… sind hier als Beispiele zu nennen Für mich persönlich : Ich werde weiter in diese Richtung gehen ! 31 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 DEN TRIVADISSTAND VIELEN FINDEN DANK. SIE AUF Trivadis GmbH Jan-Peter Timmermann Paul-Dessau-Str. 6, Gebäude P D-22761 Hamburg Tel +49-40-248591- 30 Fax +49-40-248591- 59 Mobile +49-172-2151043 EBENE 3, STAND NR. 304 BASEL 32 BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. 2011 © Trivadis Tagebuch eines Entwicklers: Von Oracle Forms hin zu ADF 17.11.2011 [email protected] www.trivadis.com FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN