best practice - business intelligence mit oracle und open ......jasperreport, jfreechart jdbc apache...

31
08.11.2006 Business Intelligence mit Oracle und Open Source 1 Projektbericht Business Intelligence mit Oracle und Open Source Praxisbeispiel LBS-Vertriebscontrolling Dario Sanna (IT-Architekt)

Upload: others

Post on 15-Mar-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 1

Projektbericht

Business Intelligencemit Oracle und Open Source

Praxisbeispiel LBS-Vertriebscontrolling

Dario Sanna (IT-Architekt)

Page 2: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 2

● Kunde

● Vertriebscontrolling

● Neues System

● Projektaufbau und Ablauf

● Systemarchitektur

● Fazit

Agenda

Page 3: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 3

Motivation

Page 4: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 4

● 2,1 Millionen Kunden der LBS West in NRW

● 2,6 Millionen Bausparverträge

● Bausparsumme im Bestand 57 Milliarden €

● Neugeschäft 2005: 450.000 Verträge, 10 Milliarden € Bausparsumme

● Nutzung überwiegend für die Immobilienfinanzierung

Kunde

Die LBS-West ist eine der größten Bausparkassen Deutschlands

Page 5: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 5

Kunde (Vertrieb)

● VertriebsmannschaftSteuerung durch den LBS-Innendienst

Eigener Außendienst (ca. 1500 User)

120 Sparkassen (ca. 500 User)

700 Bezirke

● BesonderheitenZwei sich überlagernde, feingliedrige Vertriebshierarchien

Historien (Sparkassenfusionen, Umstrukturierung von Gebieten, etc.)

Komplexität durch große Vertriebsmannschaft und Vertriebshierarchien

Page 6: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 6

Altanwendung wurde den Anforderungen nicht mehr gerecht

● 25 Jahre altes HostsystemListenausgaben

Papierflut

Mangelnde Flexibilität

● KriterienDatenqualität

Aktualität

Berichtsarten

Systemintegration

Wartbarkeit

Office Anbindung

Vertriebcontrolling (Altanwendung)

Page 7: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 7

Neues, modernes, zukunftssicheres System für alle Benutzergruppen

● AnforderungenBrowser basiert, mit einfacher, intuitiver Bedienung

Viele fachlich hoch komplexe, vordefinierte Berichte mit Varianten

Office Anbindung (PDF und Excel Weiterverarbeitung)

Hohe Performance am Frontend

● SicherheitSehr detailliertes Berechtigungssystem

Rollenkonzept

Datenschutz

● Effiziente Entwicklung, zukunftssicher, kostengünstig, revisionsfähig

Vertriebcontrolling (Zielsetzung)

Page 8: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 8

Neues System (Startseite)

Page 9: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 9

Neues System (Beispielbericht 1)

Page 10: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 10

Neues System (Beispielbericht 2)

Page 11: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 11

Neues System (Beispielbericht PDF)

Page 12: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 12

Vorstudie zur Analyse der Anforderungen

● Entscheidende Kriterien für eine angemessene LösungSkill und Erfahrung der beteiligten MA

Verfügbarkeit und Reifegrad der Tools

Abdeckungsgrad der Anforderungen

Anschaffungskosten, Lizenzkosten, Eigenentwicklungskosten

Integrationsfähigkeit in die LBS-Infrastrukturen

Flexibilität, Austauschbarkeit, Wartbarkeit

Beherrschbarkeit, Anpassungs- und Erweiterungsfähigkeit

● Betrachtung / EvaluierungEinige ausgewählte kommerzielle BI-Lösungen

Kombination Open Source und Oracle

Projekt (Vorstudie)

Page 13: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 13

Empfehlungen aus der Vorstudie

● Drei ProjektphasenBasisarchitektur und Neugeschäft, Finanzierung, Bestandsauswertungen

● AIX Hardware

● OracleOracle DB 10g Datenhaltung und PL/SQL für die Geschäftslogik

OWB zur Bewirtschaftung

Berichtserstellung und Bereitstellung mit Oracle Werkzeugen

Reports, Portal, Infrastruktur

● Java Eigenentwicklung für Navigations- und Auswahllogik

Projekt (Vorstudie)

Page 14: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 14

Erarbeitung Konzeption und Prototyp durch Umsetzen Empfehlung

● Berichtsanforderungenanhand von Layoutprototypen und

existierendem Datenhaushalt

● Konzeptiondispositiver Datenhaushalt mit Modellierung als Snowflake Schema

Bewirtschaftungsprozesse von Quellsystemen bis in Zieldatenbank

● Web-Prototyp auf Basis der Vorstudienempfehlung

verarbeitet einige typische Berichte

Projekt (Konzeption)

Page 15: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 15

Konzeption der fachlichen Anforderungen liefert Erkenntnisse

● ErkenntnisseKeine Notwendigkeit für Standardreportingwerkzeuge beim Endbenutzer

Grundlegende Überarbeitung der techn. Vorgaben der Vorstudie

● Konsequenzen für die BasisarchitekturOracle Portal überdimensioniert

Oracle Reports nicht unbedingt notwendig

Stattdessen Open Source + Eigenentwicklung

Oracle und PL/SQL für die Datenhaltung und die Geschäftslogik

OWB für die Bewirtschaftung

Projekt (Konzeption)

Page 16: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 16

Projekt (Konzeption)

● Ausschluss von Standardsoftware und Oracle BI-LösungenZu hohe LizenzkostenUnzureichende oder zu aufwändige ErweiterungsmöglichkeitenGeforderte Performance nicht sichergestelltNicht auflösbare Abhängigkeiten (Oracle IAS, Infrastruktur, Portal, Reports) Wenig Erfahrung mit Oracle Reports, Oracle Portal, OLAP Extention

Ein großer Benutzerkreis benötigt vordefinierte, feststehende BerichteNur flache Ergebnismengen mit vereinzelten festen Navigationswegen

● Oracle PL/SQL für Berichtslogikunübertroffenen Fähigkeiten und Performance von PL/SQLhoher Verbreitungsgrad, leicht erlernbar

Entscheidende KO-Kriterien für kommerzielle Lösungen

Page 17: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 17

Systemarchitektur

● AufgabenAuthentifizierung (SO/SSO)

Autorisierung

Wertebereichsprüfung, Auswahllogik, Darstellung, PDF- und Excel-Export

Berichtslogik

ETL

DataWarehouse

Systemarchitektur durch Zuschnitt der Verantwortlichkeiten

Page 18: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 18

Systemarchitektur

● Definierte Zuständigkeiten

● Standardisierte Schnittstellen

● Interdisziplinäre Kommunikation

● Überdisziplinär, Gesamtarchitekt

Best Practice : Separation of Concerns (SoC)Trennung der Verantwortlichkeiten

Page 19: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 19

● VorteileEindeutige, überprüfbare, testbare Verantwortlichkeiten

Zeitversetzte, parallele Entwicklung möglich

Austauschbarkeit

● BedingungenEindeutige Identifikation und Zuordnung der Verantwortlichkeiten

Definierte, standardisierte Schnittstellen

● RegelnDomänen lösen nicht Probleme anderer Domänen

Domänen vertrauen übergeordneten / vorstehenden Domänen

Basis für Revisionsfähigkeit :Einhaltung von Standards und Trennung der Verantwortlichkeiten

Systemarchitektur

Page 20: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 20

Oracle 10g

PL/SQL-PackagesMaterialized-Views

DWH-Builder

WebSphere 5.1

Cockpit J2EE

STRUTS, JSP JasperReport

Apache 2.x

SO / SSOmod_kerbmod_so

Windows 2003

Active Directory

HOST

Host-Daten

Authentifizierung GUI, AutorisierungBericht-Darstellung

DWH,Bericht-Logik Datenbestand

Systemarchitektur (Hauptkomponenten)

Page 21: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 21

BNB_108_GL BNB_108_BL

Fakten / Dimensionen

Vorverdichtung

BNB_108_E2

BNB_108_E1

Ausgabe Nutzdaten

Verarbeitung / Aufbereitung

GD lesen

Ergebnis in temporären Tabellen

BNB_108_GD

Neugeschäft

GL lesen BL lesen

PL/SQL-Package:

Error

Audit

Ablaufsteuerung

InitialisierungParameterverarbeitung

FehlerverarbeitungLogging

BNB_108_Geschaeftsarten

System-Tabellen

GD = Müller

Monat = 1

Tarif = Vario3

Parameter in

in

in

Systemarchitektur (Berichtslogik)

Page 22: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 22

Web-Anwendung auf Open Source Basis

● Eingesetzte Open Source ToolsStruts, JSP JasperReport, JFreeChartJDBCApache Commons, AspectJEclipse, MyEclipseWeb 1.0

● Warum nicht andere Tools wie z.B.:Spring, JSFBIRT, FOPHibernateJDeveloperWeb 2.0

Systemarchitektur (J2EE Entwicklung)

Page 23: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 23

Die Verteilung sicherheitsrelevanter Anforderungen auf einzelne Komponenten ist sorgfältig zu begründen

● Standard : Domäne der App-ServerAuthentifizierung, Autorisierung, Schutz von Web-Resourcen (URIs)

Bereitstellung von Ressourcen (z.B. DB-Verbindungen)

● Nicht StandardisiertBerechtigungsprüfung auf Wertemenge (Parameter)

● Mögliche LösungenPrüfung Wertemenge durch WEB-Anwendung

Oracle Virtual Private Database / Label Security

Systemarchitektur (Security)

Page 24: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 24

Oracle Virtual Private Database nicht für Wertebereichsprüfung

● Fachliche GründeBerichtslogik benötigt meist uneingeschränkten Zugriff auf Einzeldaten

Z.B. Vergleichen, Rankings, Summierungen, etc.

● Technologische GründeConnection-Pooling

Ein techn. DB-User für J2EE-Anwendung

● Gewählte LösungWertebereichprüfung in der Web-Anwendung

Daher sicherheitsrelevantes Testobjekt

Systemarchitektur (Security)

Page 25: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 25

Systematische Qualitätssicherung durch Automation

● Automatisierte Testverfahren mit ReferenztestsFür Wertebereichsprüfung (ca. 1000 Testfälle)

Für jedes PL/SQL-Package

Referenzdaten werden vom Fachbereich in Excel erstellt

Auf Basis von HttpUnit Tests

● Automatisierung in der EntwicklungBuild- und –Deploy-Prozesse aller Softwareartefakte

Prüfung Einhaltung von Architektur- und Coding-Conventions

Code Prüfungen

Systemarchitektur (Qualitätssicherung)

Page 26: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 26

Architekturdesign für hohe Performance

● DatenbankDenormalisierungen, Materialized-Views, PL/SQL

● Cache in Web-AnwendungEigener Cache für bereits erstellte Berichte

Minimierung DB-Zugriffe, hohe Rechenkosten für PDF

Preload für unveränderliche Daten

Baumstrukturen für Vertriebshierarchien

● SonstigeFachliche Beschränkung einzelner Berichte auf wenige Seiten

http-Komprimierung bringt Durchsatz

Systemarchitektur (Performance)

Page 27: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 27

Alle Ziele erreicht

● System hat sehr hohe Akzeptanz bei den BenutzernLayout, Navigation, Inhalte, Performance, Robustheit, Office-Anbindung

● Reibungsloser Betrieb

● Hohe Qualitätdurch automatisierte Tests, bei gleichzeitiger konstanter Weiterentwicklung

● Investition in ZukunftNeue Basisverfahren auch für neue Projekte der LBS-West geschaffen

● Der Einsatz der Oracle Datenbank mit PL/SQL war entscheidend

Fazit (Positiv)

Page 28: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 28

Optimierungspotential

● JasperReport hat SchwächenPDF-Erzeugung skaliert unter sehr hoher Last nur begrenzt gut

Für HTML und Excel wenig geeignet

Bei Neuentwicklung BIRT in Betracht ziehen

● VerdichtungenLange nächtliche Laufzeiten

Komplizierte SQLs

Oracle-Bug: zu komplexe SQLs für Matviews

● DWBEinige Unzulänglichkeiten können Komplexität erhöhen

Fazit (Negativ)

Page 29: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 29

„LBS-Cockpit –

ein Quantensprung für die Steuerung

des Vertriebs der LBS.“

Uwe Körbi, Leiter Hauptabteilung Vertrieb LBS-West

Kundenstatement

Page 30: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 30

Fragen ?

Vielen Dank !

Page 31: Best Practice - Business Intelligence mit Oracle und Open ......JasperReport, JFreeChart JDBC Apache Commons, AspectJ Eclipse, MyEclipse Web 1.0 Warum nicht andere Tools wie z.B.:

08.11.2006 Business Intelligence mit Oracle und Open Source 31

viadee UNTERNEHMENSBERATUNG GMBH

Anton-Bruchausen-Str. 8

48147 Münster

+49 251 77777 888Fax:

+49 251 77777 0Fon:

[email protected]:

www.viadee.deWeb:

Vielen Dank für Ihr Interesse!