DOAG SIG Development :: Clean Code :: 22.09.2011 :: Köln Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust Opal-Consulting, Deutschland / Köln www.opal-consulting.de Version 1.0 / 22.09.2011 / D. Aust Vorstellung Dietmar Aust ► Dipl.-Inform. Dietmar Aust, freiberuflicher Berater ► [email protected] ► http://daust.blogspot.com/ ► 1997-2000: Consultant bei der Oracle Deutschland GmbH / Düsseldorf ► Schwerpunkte: Oracle Portal, Oracle Reports, Oracle Forms, PL/SQL, PLSQL Web Toolkit (OWA) ► Seit 09/2000: Freiberuflich ► Schwerpunkte: Oracle Portal, Oracle Reports, Oracle Application Express, Oracle Express Edition ► Seit 2006 ausschließlich APEX Entwicklung ► Entwicklung von Webapplikationen seit 14 Jahren ► Jasper Reports Integration ► Kostenlose Alternative für die PDF – Erstellung in APEX ► http://www.opal-consulting.de/tools Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 1 Vorstellung Dietmar Aust ► Wichtige Applikationen ► AbiT : Absatzerfassung im Telekom Shop ► ShopDB / SPOTS: Shop-Datenbank für die Telekom Shops ► Vorträge ► DOAG Special Interest Day APEX (31.05.2007) − Absatzerfassung im T-Punkt (AbiT) − Apex auf Oracle Express Edition (XE) ► DOAG 2007 (12.11.2007) − Standortauswahl mit Workflow und Geomarketing; Migration von MS Access auf Apex 2.2 ► ODTUG (New Orleans, 15.06.2008) − Mastering Unreasonable Deadlines with Oracle APEX at the German Telecom Shops ► DOAG 2008 (01.12.2008) − PDF Erstellung mit APEX - eine kostenlose Alternative Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 2 Vorstellung Dietmar Aust ► Vorträge ► ODTUG 2009 (21.06.2009) − JasperReportsIntegration (PDF Erstellung mit JasperReports) − jXLS (Native Excel Sheets erzeugen mit Excel Templates) ► OOW 2009 (11.10.2009) − JasperReportsIntegration ► DOAG2009 (17.11.2009) − Komplexe Excel Berichte mit APEX und jXLS erstellen ► ODTUG2010 (29.06.2010) − APEX Application Lifecycles: Managing the Change ► DOAG2010 (16.11.2010) − Der Lebenszyklus einer APEX Applikation: Managing the Change Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 3 Vorstellung Dietmar Aust ► Oracle APEX und XE in der Praxis ► Erschienen am 21.12.2009 ► Autoren: ► Denes Kubicek ► Jens-Christian Pokolm ► Dietmar Aust Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 4 Vorstellung Dietmar Aust ► Expert Oracle Application Express ► Erschienen am 25.05.2011 ► Charity Projekt für Carl Backstrom und Scott Spadafore (verstorbene Mitglieder aus dem APEX Team) ► Autoren: ► Dietmar Aust (Kapitel 9: Lifecycle Management) ► Martin Giffy D'Souza ► Denes Kubicek ► Doug Gault ► Raj Mattamal ► Dimitri Gielis ► Dan McGhan ► Roel Hartman ► Francis Mignault ► Michael Hichwa ► Anton Nielsen ► Sharon Kennedy ► John Scott ► Download der Skripte für Ka pitel 9: ► http://www.opal-consulting.de/tools Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 5 Agenda ► Die Problemstellung ► Warum? ► Das Hintergrund-Projekt ► Die Herausforderungen ► Das Verfahren ► Wesentliche Randbedingungen / Grundsätze ► Die Bestandteile: Projektmanagement, Versionskontrolle, Namenskonventionen ► Rollout von A-Z ► Patch-Erstellung ► Installation im Testsystem ► Installation in der Produktion ► Tipps Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 6 Die Problemstellung Warum? ► Jeder benötigt ein gut strukturiertes Konfigurationsmanagement und Lebenszyklus-Management für Applikationen ► Wenn es fehlt, sind die Kosten hoch und leider gut versteckt ► Es ist nicht leicht, eine gute Strukturierung zu finden ► Keine Standards in der Oracle Community, die Java Community hat sich anscheinend auf Maven verständigt ► http://maven.apache.org ► Ursprung: Verzeichnisbäume und Abläufe in den diversen Apache Projekten waren zu unterschiedlich => Entwickler konnten nicht einfach zwischen den Projekten wechseln ► Basiert technologisch auf ANT für das Build Management von Java Applikationen (ursprünglich) ► Umsetzung des Grundgedankens: “Konvention vor Konfiguration” ► Standard-Verzeichnisstruktur ► Viele Artefakte (Source Code bzw. Dokumentation) werden generiert. Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 7 Die Problemstellung Das Hintergrund-Projekt ► Entstanden im Projekt “SPOTS” bei der Telekom Shop Vertriebsgesellschaft mbH, dem Shop-Informationssystem ► Das Konzept ist innerhalb der letzen vier Jahre entstanden und wird kontinuierlich weiterentwickelt ► Komplexität ► 2-3 Entwickler seit 05/2007 ► 200 Tabellen, 100 Packages, 3000 Datenbank-Objekte ► APEX Applikation mit 140 Seiten ► Tablespace-Namen sind identisch auf Entwicklung, Abnahme und Produktion !!! ► Releases ► Vier Releases pro Jahr ► Durchschnittlich 100 (50-250) geänderte / neue Objekte ► Normalerweise vier interne Revisionen mit dem Test-Team Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 8 Die Problemstellung Herausforderungen ► Gleichzeitiges Arbeiten an Datenbank-Packages, Prozeduren, Views, etc. ► Änderungen werden gegenseitig überschrieben ► Vollständige Propagation aller Änderungen über Entwicklung, Abnahme und Produktion sicherstellen ► Jede Änderung an der Software sollte identisch auf die Abnahmesysteme und Produktion verteilt werden können ► Sollte komplett skriptbasiert sein, damit Fehler durch manuelle Vorgänge reduziert werden ► Es muss sichergestellt werden, dass alle Änderungen propagiert werden (DDL, DML, APEX, Konfigurationsdateien, etc.) ► Gleichzeitige Entwicklung unterschiedlicher Versionen (klassisches Branching / Merging) ► Z.B. Korrekturen an der aktuellen Produktionsversion (Hotfixes) während gleichzeitig die nächste Version entwickelt wird. ► Propagation einer Änderung in alle Branches der Software Konfigurationsmanagement in Oracle APEX Projekten Dietmar Aust, 22.09.2011 Seite 9
Description: