Successfully reported this slideshow.

Anwendungsmodernisierung mit Oracle Application Express (APEX)

343 views

Published on

Lernen Sie warum man für legacy Anwendungen basierend auf Oracle Forms oder MS Access überlegen sollte, warum eine Migration auf eine neue Technologie sinnvoll ist.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Anwendungsmodernisierung mit Oracle Application Express (APEX)

  1. 1. Anwendungs- modernisierung Niels de Bruijn / Sven-Olaf Kelbert, MT AG Oliver Lemm, MT AG Januar 2017
  2. 2. 2 Facts & Figures Technologie-orientiert Branchen-unabhängig Hauptsitz Ratingen 240 Beschäftigte Gründung 1994 Niederlassungen Köln, Dortmund & Frankfurt am Main Ausbildungs- betrieb Inhabergeführt Zertifizierter Partner von Oracle, Microsoft und SAP 24 Mio. Euro Umsatz
  3. 3. MT AG - Application Development3 JAVASCRIPT TECHNOLOGIES DEVELOPMENTENTERPRISE CLOUD SOLUTIONS Technologien
  4. 4. Application Express Development § APEX, PL/SQL, Oracle DBMS § Mobile WebApps § Rapid Development § FOEX § Migration von Forms, Access, Reports MT AG - Application Development 4 Technologien im Detail ENTERPRISE Java Enterprise Development § Java EE/SE, JSF (Primefaces), Spring Framework, EJB, JPA (Hibernate), Swing § JBoss, Tomcat, WebLogic § Microservices, BPM, Container(Docker) § DB2, Oracle, MySQL, Cassandra
  5. 5. JavaScript Development § JavaScript, ES2016 § AngularJS, Ionic, React § TypeScript, Angular 2 § Node.js, Electron § MongoDB, CouchDB MT AG - Application Development 5 Technologien im Detail Hybrid Mobile Apps Development § JavaScript § HTML5, CSS3 § jQuery (Mobile & UI), Bootstrap § SQLite § Apache Cordova, PhoneGap JAVASCRIPT TECHNOLOGIES
  6. 6. Microsoft Development § C#, VB.NET, ASP.NET, WPF, XAML, Entity Framework, WF § Dokumentengenerierung MTdoxx § SQL Server, SQL Reporting-, Analysis- und Integration Services § BizTalk Server, SharePoint Server MT AG - Application Development 6 Technologien im Detail Cloud-based Development § Agile Cloud Development, Testautomatisation and Continuous Delivery § Azure, AWS § Office 365, Apps § Collaboration CoffeeNet365 DEVELOPMENT CLOUD SOLUTIONS
  7. 7. Strategien für datenbankgestützte Legacy Anwendungen Niels de Bruijn, MT AG
  8. 8. 8 Über mich § Niels de Bruijn, Fachbereichsleiter APEX § Geboren in 1977, verheiratet, drei Töchter, Wohnort Ratingen § seit 12.2003 bei der MT AG in Ratingen § zuvor 2 Jahre als Berater bei Oracle Nederland B.V. angestellt § Beschäftigt sich seit 2004 mit APEX § Federführend beim Vertrieb/Marketing/Delivery von APEX Projekten § https://apex.mt-ag.com § Themenverantwortlicher für APEX bei der DOAG & Organisator von APEX Connect § Hält Vorträge u.A. auf der DOAG Konferenz, APEX World, DOAG APEX Connect & ODTUG Kscope
  9. 9. § Oracle Forms & Co. § Modernisierung – warum? § Modernisierung – wohin? § Modernisierung – wie? 9 Agenda
  10. 10. 10
  11. 11. § Forms ist ein rüstiger Patient im besten Alter, ist wieder völlig fit, genießt sein weiteres Leben und hat keine Pläne, vorzeitig abzutreten. Im Moment können viele Jüngere, wie Java, ADF oder APEX von seiner Erfahrung profitieren. Irgendwann werden die Jungen das Ruder übernehmen, und Forms wird sich aufs Altenteil zurückziehen, aber bis dahin werden noch viele Jahre ins Land gehen. Sven-Olaf Kelbert, DOAG News 2/2011 11
  12. 12. § Versionen § 1986 2.x § 1997 Erste Webforms-Version § 2000 6iR2 (letzte Client/Server-Version) § 2002 9i § 2005 10g § 2010 11g § 2015 12c 12 Oracle Forms gestern
  13. 13. § 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 § 100.000 Kunden weltweit § viele Kundenreferenzen und Lösungen § zahlreiche Veranstaltungen 13 Oracle Forms heute
  14. 14. § Bewährt § Effizient § Nicht mehr modern, Technologie veraltet § Hohe Kosten (Anschaffung / Betrieb / Schulung) § Schlechte Zukunftsaussichten (Know-how am Markt verschwindet) § Insum hat es in einem Artikel gut wieder gegeben: § https://insum.ca/time-modernize-oracle-forms-reports-application 14 Status Quo Oracle Forms
  15. 15. § Lifetime Support für Oracle Forms und Reports § Version Forms 12c Bestandteil der Oracle Fusion Middleware 12c § Entwicklungs-Aktivitäten werden fokussiert § leichtere Upgrades von einer Version auf die nächste § Integration mit Features der übrigen Plattform § Produkt-Stabilität § kein weiteres Reports-Release nach Version 12c § Terminal Release 12.2.1.3 § Designer seit Version 10g eingestellt § Discoverer seit Version 11g nicht mehr weiter entwickelt 15 Oracle Forms / Reports / Designer / Discoverer
  16. 16. Modernisierung – warum?
  17. 17. 17 Gründe für eine Modernisierung
  18. 18. § keine Trennung von Geschäfts- und Präsentationslogik § Geschäftslogik nicht wiederverwendbar § Präsentationslogik/Layout über alle Masken und Reports verteilt § allgemeine Änderungen am Aussehen erfordern ein Anfassen sämtlicher Module § keine Unterstützung von Build-Prozessen § keine Unterstützung von Unit-Tests 18 Nachteile von Forms Gründe für eine Modernisierung
  19. 19. § Jinitiator, JRE oder Java Web Start (12c) muss auf dem Client installiert werden § Look & Feel nicht zeitgemäß § Integration in moderne Unternehmens-IT-Architekturen schwierig § wiederverwendbare Geschäftslogik § Workflow-gestütztes Arbeiten § Schnittstellen zu anderen Systemen 19 Nachteile von Forms Gründe für eine Modernisierung
  20. 20. Modernisierung – wohin?
  21. 21. § Oracle APEX § Java / JEE § VisionX § .NET § JavaScript § AuraPlayer (setzt Forms voraus) 21 moderne Technologien zur Auswahl
  22. 22. § Oracle Application Express (APEX) § Seit 2004 als kostenlose Option der Oracle Datenbank verfügbar § 2 bzw. 3-Tier-Framework (je nach Betrachtung) § moderne, browserorientierte Lösung § Weiterentwicklung mit hoher Produktivität möglich § in PL/SQL-Packages abgelegte Geschäftslogik weiterhin verwendbar § Mit Plugins erweiterbar § Sowohl für den Desktop als auch mobile Endgeräte entwickelt § Mit APEX 5.1 keine Limitationen in der Standardfunktonalität mehr § Master-Detail-Subdetail: es geht! § Mehr als 200 Items auf einer Seite: es geht! 22 moderne Technologien zur Auswahl
  23. 23. 23 FOEX Plugins als addon Migration von Forms auf APEX mittels FOEX Plugins
  24. 24. § JAVA, .NET, JavaScript § browserorientierte Lösung § Bereitstellung gut strukturierter PL/SQL Packages vereinfacht die Modernisierung § weit verbreitetes Know-how § Objektorientierung 24 moderne Technologien zur Auswahl
  25. 25. 25 Java-App, Web-App, sowie iOS/Android-App VisionX – Simultane Generierung von adaptiven GUIs
  26. 26. § Die Oberfläche lässt sich damit zügig erstellen § Die wesentlichen Elemente sind Datentabelle und die zugehörigen Eingabefelder § Bindungen an die Datenbank erfolgen automatisch § Programmlogik lässt sich ebenfalls im Editor schnell erstellen § Weitere Logik lässt sich simultan in der IDE erstellen 26 Der Hauptteil der Implementierung erfolgt hauptsächlich durch das „Zusammenklicken“ VisionX – WYSIWYG
  27. 27. 27 AuraPlayer
  28. 28. 28 Was ist mit Oracle Reports? JasperReports, BIRT APEX Office Print Oracle BI Publisher APEX Plugins PL-JRXML 2PDF PL/PDF Oracle REST Data Services MTdoxx APEXIR_XLSX Server Technologie Java-Server (JEE) APEX Plugin + Executable or Cloud Oracle WebLogic Server PL/SQL in RDBMS PL/SQL in RDBMS PL/SQL in RDBMS WebLogic / Glassfish / Apache Tomcat .Net / IIS PL/SQL in RDBMS Client Tool für die Definition JasperSoft Studio, Eclipse/Birt Word / Excel / PowerPoint Word / Excel (Plugin notwendig) / Browser APEX ggf. SQL Plus JasperSoftStud io (jrXML) SQL Plus und ggf. Word Altova StyleVision oder Stylus Studio Word / Excel IR in APEX Mögliches Layout? Pixel perfekt Pixel perfekt Pixel perfekt Nicht Pixel perfekt Nicht Pixel perfekt Pixel perfekt Pixel perfekt Pixel perfekt Vorgegeben Ausgabe über IR? Nein Ja (DA oder Process Plugin mit support für mehrere IRs) Ja Nein Nein Nein Ja Nein Ja (Plugin) Schnittstelle für APEX URL, PL/SQL PL/SQL API, APEX Plugin XSL-FO/ XML PL/SQL PL/SQL PL/SQL XSL-FO/ XML SOAP Web Service PL/SQL Formate XLS(X), PDF, RTF, DOCX (JR), PPT (BIRT), DOC (BIRT) XLSX, PPTX, PDF, DOCX, HTML5 XLS, PDF, DOC PDF, XLSX PDF PDF, DOCX, XLSX PDF DOCX, PDF XLSX, PPTX Kostenpflichtig? Nein (Open Source) Ja Ja Nein (Open Source) Nein (Open Source) Ja Nein Ja Nein (Open Source)
  29. 29. 29 Provokativ vorerst die Frage stellen: Brauche ich überhaupt noch eine Lösung hierfür? Punktuelle Lösungen § Resultat Interactive Report 1:1 in XLSX überführen: APEXIR_XLSX (läuft in der DB) § Resultat Interactive Report 1:1 in PDF überführen: Reports2PDF Plugin (läuft in der DB) § Einfache pixelperfekte Berichte in PDF überführen: PL-JRXML2PDF (läuft in der DB) Enterprise Lösungen § Reporting-Tool als Vorlage verwenden § Pixelperfectes Layout: Jasper Reports / Birt § Office als Vorlage verwenden § Nahtlose Integration mit APEX: APEX Office Print § Massengenerierung von Dokumenten: MTdoxx (setzt Windows Server voraus) Und nun? „Well, it depends...“
  30. 30. § Implementiert auf Basis .Net und bereitgestellt als Windows Dienst § Generierung von Word (.docx) oder PDF Dokumenten § Vorlagen auf Basis Word (.docx) § Verrechnung mit APEX Integrationsleistungen 30 Zur Dokumentengenerierung MTdoxx-Lite APEXVorlagen MTdoxx generierte Dokumente
  31. 31. Modernisierung – wie?
  32. 32. § Steht die Entscheidung für die Zieltechnologie? § wenn nein à Strategieberatung § Aufbau Kriterienkatalog durch MT AG § Gewichtung Kriterien durch Kunde § Festlegung zu analysierender Technologien durch Kunde § Bewertung der Kriterien durch Technologie-Experten der MT AG 32 Modernisierung – wohin geklärt?
  33. 33. Es liegen folgende Kriteriengruppen vor: 1. Product functional requirements 1. Enduser User Interface/Client requirements 2. Server related criteria 3. Developer Skills 4. Development Environment 5. Testing / Debugging 2. Product non functional requirements 1. Deployment and staging features 3. Strategic safety 4. Investments for implementation and license 5. Maintenance and managed service costs 33 Aufbau eines Kriterienkatalogs als Entscheidungsgrundlage
  34. 34. § Steht die Entscheidung für die Zieltechnologie? § wenn ja à Proof of Concept § Aufwandsschätzung oder einfach los legen? § verschiedene Wege zum Ziel 34 Modernisierung – wohin geklärt?
  35. 35. § Unterstützung durch Analyse-Tool § PITSS § Forms-API-Master § FormsTool § QAFE § Forms Migration Assistent in APEX § Analyse durch erfahrene Entwickler § Erstellung eines Konzepts § Wegner‘s Lemma: „It is not possible to completely specify an interactive system.” 35 Aufwandsschätzung
  36. 36. § Upgrade auf neueste Forms-Releases § auf der sicheren Seite bzgl. Support § WebLogic Server Basis für weitere Schritte § Extraktion von möglichst viel Logik aus Forms in die DB § Logik nicht nur in Forms nutzbar § von anderen DB-Funktionalitäten § von anderen Anwendungen § WebServices § Anwendung keine Black Box mehr § danach über Migrationen in andere Technologien nachdenken 36 Szenario 1: langfristige Ablösung von Forms Empfehlung für Modernisierung
  37. 37. § strategische Beratung hinsichtlich neuer Technologie § APEX § VisionX (Java) § JEE § JavaScript § Microsoft .Net § Stück-für-Stück-Ablösung von Forms § Entwicklung durch MT AG und Kunden § Coaching des Kunden durch MT AG § Integration neuer Bestandteile in alte Anwendung § agiles Vorgehen für schnelle Erfolge 37 Szenario 2: kurz-/mittelfristige Ablösung von Forms Empfehlung für Modernisierung
  38. 38. Anwendungs- modernisierung mit Oracle Application Express 5.1 Oliver Lemm, MT AG
  39. 39. Rapid Application Development mit APEX 5 39 Über mich § Oliver Lemm, Competence Center Leiter APEX § Geboren in 1980, verheiratet, vier Kinder, Wohnort Dinslaken § seit 02.2007 bei der MT AG in Ratingen § Projektleitung und Entwicklung § Blog oliverlemm.blogspot.de § Twitter @OliverLemm § Hält Vorträge u.A. auf der DOAG Konferenz, APEX World, DOAG APEX Connect & ODTUG Kscope § XING https://www.xing.com/profile/Oliver_Lemm § LinkedIn https://www.linkedin.com/in/oliverlemm
  40. 40. § APEX vs Forms § FOEX § Oracle Forms Migration Assistent § APEX Generator § Enterprise APEX Agenda
  41. 41. Unterschiede in den Technologien APEX vs Forms Oracle Application Express Oracle Forms Oracle Datenbank PL/SQL & SQL Apache Tomcat & ORDS Oracle Middleware (Weblogic) JavaScript & jQuery HTML 5 & CSS 3 Oracle Jet
  42. 42. 42 Architektur APEX APEX vs Forms
  43. 43. § Globale Variablen § Validierungen § Commit & Rollback § Unittests § Locking 43 Stateless vs statefull APEX vs Forms
  44. 44. § LOV § Wertelisten mit mehreren Rückgabewerten § „Trigger“ § Forms Trigger vs Dynamic Actions § Web „submit“ 44 APEX vs Forms
  45. 45. § Tastatur & Maus vs Tastatur & Maus/Touch § Suchmodus & Bearbeitungsmodus vs Report & Formular § Drucken 45 Bedienung APEX vs Forms
  46. 46. § Logik in der Datenbank § PL/SQL § Blocks / Regions § Program Unit / Process § Items 46 APEX == Forms
  47. 47. 47 Layout APEX vs Forms
  48. 48. 48 Layout FOEX Plugins
  49. 49. 49 Oracle Forms Migration Assistent
  50. 50. 50 Oracle Forms Migration Assistent
  51. 51. § Assistent nur zur „Analyse“ verwenden! § PL/SQL Code aus Forms Masken § „Komplexität wird sichtbar“ 51 Oracle Forms Migration Assistent
  52. 52. 52 Metadatentabellen Oracle Forms Migration Assistent
  53. 53. 53 Generiert „out-of-the-box“ APEX Seiten, sinnvoll z.B. zur Verwaltung von Stammdaten APEX Generator der MT AG
  54. 54. 54 Arbeitsschritte APEX Generator der MT AG Generierung • Regions • Items & Buttons • Processes & Branches • Dynamic Actions Metadaten • Seiten • Tabellen APEX • Erstellung der Anwendung • Layout „Subscriptions“ • LOV „Subscriptions“ f100.sql
  55. 55. § einfache Stammdatenmasken generierbar § Änderungen an allen Seiten durch Anpassung Metadaten § Keine nachträgliche Änderungen von Hand § gleiches Layout § keine händischen Fehler § robust 55 Fazit APEX Generator der MT AG
  56. 56. § Analyse der Forms Anwendung § Identifikation der bisherigen Formulare § Prozesse, Funktionalitäten & Schnittstellen § Vorgaben für neue Anwendung § UI / Corporate Design § Optimierung von Prozessen & Layouts § Aufwandsschätzung § abhängig vom Know-How bzgl. Prozesse & Verarbeitung § Logik in der Datenbank? § jeweils pro Formular <-> APEX Seite(n) § 2-x APEX Anwendungen § Risikoaufschlag zwischen 25-100% des Entwicklungsaufwands 56 Migrationsvorgehen
  57. 57. § Allgemein § Datenmodell Metadaten 1PT § Funktionslogik pro Projekt 10PT § CI-Automatisierung 3PT § Testautomatisierung 5PT § pro Stammdatentabelle § Metadaten bereitstellen 0,25PT § pro Maske ca. (bei 50 insg.) 0,5PT § bei 50 Stammdatentabellen 31,5PT 57 einfache Maske (Stammdaten) – mit APEX Generator der MT AG Entwicklungsaufwände
  58. 58. § Report § Interactive Report 0,25PT § Formular (Modal/non Modal) § Formular 0,25PT § Validierungen 0,125PT § Seitenobjekte 0,125PT § Tests § Entwicklertests 0,125PT § Abnahmetests 0,125PT § pro Maske 1PT § Bei 50 Stammdatentabellen 50PT 58 einfache Maske – ohne APEX Generator und ohne automatisiertes Vorgehen Entwicklungsaufwände
  59. 59. § Formular „Seitenkopf“ § Verarbeitung 2PT § Validierungen 1PT § Gesamtlayout 1PT § 8 Tabreiter jeweils § Verarbeitung 1PT § Validierungen 0,5PT § Layout 0,5PT § Gesamt 20PT 59 Beispiel von einer Maske aus der Kategorie „komplex“ Entwicklungsaufwände
  60. 60. 60 Enterprise APEX – SW-Entwicklungsprozess Rapid Application Development mit APEX 5 MT AG 4. Entwicklungs Umgebung 8. Test Umgebung 5. Versionierung 11. Abnahme Umgebung 13. Produktions Umgebung 7. Build-Prozess Kunde 9. Vers. Tests* 2. Aufgaben 1. Aufträge 12. Vers. Tests* 6. Modultests *) Modul-, Qualitäts-, Integrations-, Performance-, Sicherheits-,, Akzeptanz- & Browsertests **) Release Notes, DV-Konzept, Installationsanleitung Zeiterfassung 10.1 Auslieferung 14. Bugs 3. Projektplan Projektleiter Auftraggeber IT/Fachbereich EndanwenderQA-SpezialistEntwickler Neue Features 10.2 Dokumentation ** Abhängigkeiten Richtlinien Manager Delivery SpezialistDelivery Spezialist
  61. 61. Ausgewählte Projektreferenzen
  62. 62. 62 Hygiene-Industrie: Migration von Oracle Forms
  63. 63. 63 Hygiene-Industrie: Migration von Oracle Forms
  64. 64. 64 Vodafone: Migration von MS Access
  65. 65. 65 Union Investment: Migration von Oracle Forms Migration von Forms auf APEX Migration auf APEX 5 inkl. Universal Theme
  66. 66. 66 Versicherer: Prototyp Migration von Oracle Forms Migration von Forms auf APEX inkl. FOEX Plugins
  67. 67. APEX Community Niels de Bruijn, MT AG Oliver Lemm, MT AG
  68. 68. 68 Software/Dokumentation apex.oracle.com APEX World apex.world APEX Showcase apex.mt-ag.com Open Source oraopensource.com Oracle Learning Library oll.oracleapex.com Oracle Community (DE): lang.oracleapex.com BLOG Aggregator (RSS Feed): aggrssgator.com/rss/odtug/apex Forum: forum.oracleapex.com Plug-Ins: apex-plugin.com & apex.world Twitter Hash Tag: #orclapex Feature Requests: apex.oracle.com/vote Snippets: Denes Kubicek & Jari‘s Podcasts: apex.press/talkshow Built with APEX: builtwithapex.com Die APEX Community
  69. 69. 69 Jetzt anmelden! – apex.doag.org Neu in 2017: 30 minutige 1:1 Gespräche mit dem APEX Dev Team!
  70. 70. Q&A @MT_AG_ http://blog.mt-ag.com/apex

×