Business Services

Werbung
1
<Insert Picture Here>
Moderne Anwendungs-Entwicklung mit Oracle
Jürgen Menge
Oracle Deutschland GmbH
<Insert Picture Here>
Perspektiven der
Anwendungs-Entwicklung
Anwendungsentwicklung - gestern
Oberflächen
User Interface
UIX /JSP
Geschäftslogik
Daten
Business Services
ADF BC / EJB
DB
Schema
Web Services
Forms / Reports
Application
Express
Moderne Anwendungs-Entwicklung
Oberflächen
Geschäftslogik
WebCenter
User Interface
Daten
Business Services
ADF Faces Components
Data
Binding
DB
Schema
Web Services
Events
Business
Activity
Monitoring
Human Workflow
Service
BPEL
Prozess
Aufgaben
zuweisen
Menschl. Interaktion
Rules
Engine
Schlussfolgerung
Aufgaben
erledigt
Monitoring
Fakten
Orchestrierung
Regel-Evaluierung
Trends und Standards
Java EE 5
SOA
Web 2.0
Kontext-bezogenes User Interface
Favorites
Search
Recent
Preferences
Notifications
Presence
Email
Contextual Wiring
Discussions
Documents
Personal / Group Spaces
<Insert Picture Here>
Entwicklung von BenutzerSchnittstellen und Services
Oracle Entwicklungs-Plattformen
• Klassische Entwicklung
• Langfristige Unterstützung für Oracle Forms, Reports und Designer
(bis mindestens 20171))
• Weiterentwicklung der Produkte (Forms/Reports 11g)
• Integration bestehender Applikationen in SOA
• Nutzen vorhandener Entwickler-Kenntnisse
• Offene, standard-basierte Entwicklung
• Entwicklung mit Oracle JDeveloper, ADF und BI Publisher
• Entwicklung auf Basis offener Standards (J2EE)
• Produktivität durch Anknüpfen an vertraute Konzepte
(deklarative, visuelle und code-orientierte Arbeitsweise)
• Einsatz im Projekt Fusion
• Einarbeitung der Entwickler-Teams
1)
http://www.oracle.com/technology/products/forms/pdf/10g/ToolsSOD.pdf
<Insert Picture Here>
Entwicklung von BenutzerSchnittstellen und Services
Entwicklung mit Oracle Forms
Forms-Applikationen – Heute
• ca. 3000 Forms-Kunden in Deutschland
• zahlreiche Standard-Lösungen auf Basis von Forms
• geschäftskritische Anwendungen in Unternehmen
• kleinere und mittlere Abteilungs-Anwendungen
• Forms-Applikationen über viele Jahre gewachsen
•
•
•
•
viele Entwicklungsstufen von Character Mode bis Web
in den Anwendungen steckt großer Entwicklungsaufwand
keine einheitliche Struktur der Anwendung
unterschiedliche Qualität der Dokumentation
• Monolithische Architektur der Forms-Applikationen
• Prozess-Logik ist in die Applikation eingebettet
• häufig mit Oracle Reports für Berichte & Dokumente integriert
• häufig mit dem Desktop (MS Office, lokale Geräte) integriert
Neue Anforderungen an Applikationen
• Zugriff auf die Applikation vom Internet und Extranet
• mobiler Zugriff auf die Applikation
• saubere Trennung der Schichten
• Separierung der Geschäftslogik von der Präsentation
• Wiederverwendbarkeit von Geschäftslogik
• attraktive Oberfläche (Look & Feel)
• neue GUI-Controls (Table Grid)
• Anpassung der Fenstergröße an die Auflösung
• …
• Session-Replikation, transparentes Failover
Alternativen für Forms-Applikationen
Standard-Software
J2EE
Komplette Migration
FormsApplikation
J2EE
Modernisierung
Was empfiehlt Oracle Forms-Kunden ?
• Upgrade der Forms-Applikationen auf die aktuelle Version
• vollständiger Support der Anwendungen
• Vorteile der Mehrschicht-Architektur in Entwicklung und Betrieb
• Funktionalität des Oracle Application Server nutzen
• Integration, Infrastruktur-Services, Hochverfügbarkeit
• Zusätzlich benötigte Funktionen mittels Java in die
Forms-Anwendung einbetten
• WebUtil, Pluggable Java Components, Java Beans,
Web Services
• Entwicklung neuer Anwendungen und Module auf Basis
von J2EE
• Einsatz von Oracle JDeveloper und ADF
Was empfiehlt Gartner Forms-Kunden ?
How to Maneuver Oracle Forms Into an Ideal Position for NextGeneration Challenges (Studie: Juli 2007)
• Modernisieren der Forms-Applikationen (Forms Upgrade)
• um Vorteile aus dem zentralen Deployment und der
Administration zu ziehen
• um Service und Support zu erhalten
• Integration in die SOA-Welt
• auf der Basis der Oracle Middleware und Java-Tools
• Langfristige Migration zu standard-basierten Technologien
• Migration nach Oracle ADF (J2EE) ist mit den geringsten Kosten
und Risiken verbunden
Komplett-Migration von Forms-Anwendungen
• Komplette Ablösung einer Forms-Applikation in einem relativ kurzen
Zeitraum
• Technologische Alternativen für eine Komplett-Migration
• J2EE, .NET, Oracle APEX, proprietäre Technologien
• teilweise Migrations-Werkzeuge verfügbar
• Vorgehensweise
Migration auf Ebene des Programmcodes (Konvertierungs-Werkzeuge)
Migration der Fachlichkeit (Dokumentation der Anwendungsfälle)
Redesign und Erweiterung der Anwendung
• Wirtschaftlichkeit und Machbarkeit
• Kosten & Risiken Nutzen
• Kenntnisse und Erfahrungen des Entwicklungs-Teams
Modernisierung von Forms-Anwendungen
Service-orientierte
Applikation
Monolithische Applikation
Modernisierung
Fachliche
Business Process
Integrations-
Modularisierung
Management (BPM)
Plattform
• Struktur
bereinigen
• ProzessModellierung
• ProzessIntegration
• Daten
bereinigen
• Prozess-Design
• DatenIntegration
• Refactoring
• Implementierung
• Monitoring
• Schnittstellen
User Interface
• Interaktion
Forms
Web
• Enterprise 2.0
Umfassende
Entwicklungs-
Sicherheit
Plattform
• Mandantenfähigkeit
• Auditing
• Single Sign-On
• Zugriffsverwaltung
Betrieb
• Methodik für
Entwicklung,
Deployment,
Test u. Betrieb
• Verfügbarkeit
• Frameworks
• Monitoring
• ReleaseManagement
• Governance
• Governance
• SLA
• Administration
<Insert Picture Here>
Entwicklung von BenutzerSchnittstellen und Services
Entwicklung mit Oracle JDeveloper
und ADF
Hindernisse bei der Entwicklung mit J2EE
• Komplexe Technologien
• Verteilte Applikationen
• Mehrschichtige Architekturen
• Kenntnisse in vielen Bereichen erforderlich
(Java, XML, XSLT, CSS, JavaScript, Script-Sprachen, …)
• Rasche Änderungen in den Technologien und Standards
• J2EE bietet keine End-to-End Anwendungsarchitektur
• J2EE ist eine Ansammlung von Technologien
(JMS, JDBC, JSP, EJB, Servlets, JAAS, JavaMail, JNDI, JTA, JCA, …)
• Java ist keine 4GL-Sprache
Wege zur Steigerung der Produktivität
• Leistungsfähige Werkzeuge
• deklarative, visuelle und code-orientierte Entwicklung
• Generierung von Code
• Einsatz von
• Design Patterns
• Frameworks
• Service-orientierte Architekturen (SOA)
• prozess-orientiertes Vorgehen
• Entwicklung von Services und Oberflächen
• Orchestrierung von Services
Oracle JDeveloper
• Integrierte Entwicklungsumgebung
•
•
•
•
Unterstützung des vollständigen Entwicklungszyklus
Entwicklungsumgebung für Java, XML, Web Services, SQL, PL/SQL
Integrierter Application Server – Oracle WebLogic Server
IDE für Fusion- und Fusion Middleware-Projekte
• J2EE-Anwendungsentwicklung
• UML-Modellierung
• Entwicklung von Java-Clients, Applets,
JSP, JSF, Servlets, Java Beans, EJBs, ...
• Unterstützung für Open Source Software
(Struts, Ant, JUnit, ...)
• kostenfrei
Oracle Application Development
Framework (ADF)
• Höhere Produktivität und einfache Benutzung
• Grafische und deklarative Entwicklung
• Konzentration auf die Applikation und nicht
auf technische Details der Implementierung
• Umsetzung von JEE Best Practices
• Service-orientierte Entwicklung
• Entwicklung wiederverwendbarer Services
• Entwicklung von Composite Applications
• Standard-basierte Entwicklung
• Wahl der Technologie
• Wahl der Deployment-Plattform
• Konsolidierung und Weiterentwicklung bestehender Frameworks
Entwicklung mit Oracle ADF
Develop
Expose
Access
Business
Service
Model
View
Architektur – Oracle ADF
Web and Mobile
Rich Clients
Controller
View
Controller
Model
Model
(JSR-227)
Business Services
Business
Services
Oracle ADF 11g Architektur
Desktop
Browser-Based
View
ADF Swing
JSP
Office
JSF
ADF Faces / DVT
Controller
Struts
JSF/ADF Task Flow
Model
ADF Bindings (JSR 227)
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Business und Data Services
Web and Mobile
Rich Clients
View
Controller
Controller
Model
(JSR-227)
Model
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Oracle ADF - Business Services
• Verantwortlich für Persistenz
• O/R Mapping
• Abfragen/DML
• Durchführen der Validierung
• Daten-Validierung
• Geschäftslogik
• Wahl der Implementierung
EJB 3.0
TopLink
/Java
Beans
EJB
Session
Beans
ADF
Business
Components
Web
Services
…
Oracle ADF - Model
Web and Mobile
Rich Clients
View
Controller
Controller
Model
(JSR-227)
ADF Bindings (JSR 227)
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Oracle ADF - Model
• ADF Databinding (JSR-227)
• Abstraktionsschicht des Modells
• generisches Data Binding im User Interface
• unabhängig, von welchem Business Service die Daten kommen
• Business Services können einfach augetauscht werden
Business
Components
Web
Services
Model
Toplink
EJB
Java
Classes
Oracle ADF - Controller
Web and Mobile
Rich Clients
View
Controller
Struts
JSF/ADF Task Flow
Model
ADF Bindings (JSR 227)
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Oracle ADF - Controller
• Controller
• Verwendung für Web- und mobile Anwendungen
• Controller interpretiert Maus- und Tastatureingaben
• Controller steuert die Navigation
• Apache Struts
• Populäres Open Source Controller Framework
• Wird für JSP und UIX Seiten eingesetzt
• Verliert an Bedeutung als Open Source-Produkt
•
• JSF Controller
• Page Flow Control
• Teil des Standards JEE 5
• ADF Faces Controller
• Erweiterung des JSF Controllers
Oracle ADF – View (User Interface)
Desktop
Browser-Based
View
ADF Swing
JSP
Office
JSF
ADF Faces / DVT
Controller
Struts
JSF/ADF Task Flow
Model
ADF Bindings (JSR 227)
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Oracle ADF – View (User Interface)
• Entwicklung der Präsentationsschicht
• visuell (WYSIWYG)
• deklarativ
• Wahl der Implementierung
ADF
Swing
JSP
JSP /
Struts
Java Server
Faces (JSF)
Oracle ADF – Fusion Applications
Desktop
Browser-Based
View
ADF Swing
JSP
Office
JSF
ADF Faces / DVT
Controller
Struts
JSF/ADF Task Flow
Model
ADF Bindings (JSR 227)
Java
EJB
BAM
BPEL
Web
Services
ADFbc
BI
Essbase
Portlets
Business
Services
TopLink
Data
Services
Relational Data
XML Data
Legacy Data
Packaged Apps
Rich Enterprise Applications
Browser Client
AJAX
View
Active Client
Flash
Mobile Client
XHTML, WML,
ASK (SMS)
ADF Faces
ADF Faces: Rich Client-Komponenten
ADF Faces: DVT-Komponenten
• verfügbare Data Visualization-Komponenten
Gauge
Graph
Gantt chart
Pivot table
Geographic
map
Demonstration
ADF Rich Internet Application
<Insert Picture Here>
Entwicklung von BenutzerSchnittstellen und Services
Interoperabilität zwischen Forms und ADF
Wichtige Fragen
• Soll die bestehende Datenbasis weiter genutzt werden ?
• Soll die bestehende Geschäftslogik in der Datenbank weiter
genutzt werden ?
• Ist ein funktionales Nebeneinander von Forms-Anwendung (alt)
und ADF-Anwendung (neu) geplant ?
•
•
•
•
•
Rechtekonzept
gemeinsame Transaktionen
Caching von Änderungen
Kommunikation zwischen den Anwendungsteilen
…
Geplante Features Forms 11g
• Unterstützung von externen Events
•
•
Advanced Queuing (AQ)
JMS
• JavaScript API
•
Interaktion mit dem Browser
• Security
•
•
Vollst. Unterstützung für Enterprise User Security (EUS)
Unterstützung für DB Proxy
• Zertifizierung des Standard Java Plug-In von SUN
•
Support für verschiedene Clients
• Tuning Utility
• Oracle Diagnostic Logging (ODL)
• Forms-Monitoring im Oracle Enterprise Manager
Forms 11g - Interoperabilität
File System
BPEL
Forms
Client
Web Services
Mail, Wireless
JMS
Forms
Client
Datenbanken
Forms
Server
Forms
Server
.NET
Datenbank
mit AQ
Interoperabilität Forms ADF
Prototyp von Oracle Consulting
•
•
•
•
Kommunikation zwischen Forms- und ADF-Modulen
Nachrichtenaustausch (XML) über Adv. Queuing (Oracle DB)
nutzt den Stacking-Mechanismus von Forms und ADF 11g (Task Flows)
native AQ-Integration von Forms 11 wird die Implementierung vereinfachen
Oracle Forms
JMS
JAXb2.0
ADF 11g
Oracle DB
XML-Message
Advanced
Queuing
XML-Message
Native PL/SQL
Interoperabilität Forms ADF
Multiuser-Szenario:
XML-Nachrichten-Header:
FORMS
Forms1
startet ADF1
- <SessionToken>.<FlowToken>
1.1
Forms1
1.2
Forms2
startet ADF2
- Navigationsdirektive
- Security Token
2.1
Forms2
2.2
enque
-Start-Parameter:
Benutzername
deque
- SecurityToken
XML-Body
Forms2ADF-Queue
2.1
- SessionToken
Benutzername
- Messages
1.1
- KeyValuePairs
ADF2Forms-Queue
Die Reihenfolge der
Nachrichten spielt2.2
keine Rolle!
1.2
enque
deque
ADF
1.2
ADF1
1.1
- SessionToken bleibt gleich
- Neuer UID für FlowToken
2.2
ADF2
2.1
FlowStack wird weiter aufgebaut
Befähigung des Entwickler-Teams
• Entwicklung mit J2EE/ADF erfordert neue Kenntnisse und Fähigkeiten
• Java-Grundlagen
• J2EE-Grundlagen
• Entwicklung mit ADF
aber mit ADF 11g können viele Aufgaben rein deklarativ gelöst werden
• Architekten und Projektleiter haben in J2EE/ADF-Projekten einen
großen Stellenwert
• größere Varianten-Vielfalt in der Implementierung gegenüber Forms
• Architekturvorgaben zwingend notwendig
• empfohlener Technologie-Stack aus ADF für Forms-Entwickler
• ADF Business Components => Model => ADF Faces
• Kombination von Trainingskursen, Selbstudium und Coaching
<Insert Picture Here>
Entwicklung von Berichten
und Dokumenten
Berichte & Dokumente in Oracle Forms
• fast alle Forms-Applikationen rufen Oracle Reports auf
• Oracle Reports wird wie Oracle Forms weiterentwickelt
(Reports 11g) und bis mindestens 2017 als Produkt supported
• mit dem Oracle BI Publisher steht eine zukunftsfähige
Alternative zu Oracle Reports zur Verfügung
• BI Publisher-Berichte können in Forms-Applikationen integriert
werden
• BI Publisher wird das Reporting-Framework in Oracle ADF
• Migrations-Werkzeug für Oracle Reports als Teil des Produktes
verfügbar
Oracle BI Publisher
• Eigenentwicklung von Oracle seit 2003 (E*Business Suite)
• Moderne Lösung zur Entwicklung, Erzeugung und Verteilung
von Berichten und Dokumenten
• Funktionale Bereiche
•
•
•
•
Dokumente, Drucksachen (Output Management)
Geschäftsberichte (Business Intelligence)
elektronische Formularbearbeitung
elektronischer Datenaustausch
• Verschiedene Arten von Dokumenten
• Formulare, Berichte, Serienbriefe, Rechnungen, Etiketten, ...
• Verschiedene Formate
• pdf, html, Excel, Word, PPT, ...
• Verschiedene Kanäle
• Druck, Online, Email, ftp, webDAV, Portal, mobiler Zugriff
Oracle BI Publisher in …
BIP Enterprise
Oracle BI Suite EE / SE1
BIP in E-Business Suite
BIP Embedded
BIP in Peoplesoft
BIP in J.D. Edwards
BIP in Siebel
Oracle BI Publisher –
Architektur
PDF Word Excel
More…
Template Manager
PDF
HTML
RTF
CSV
Powerpoint
Excel
Flash
XML
Text
Template
SQL
XML
Apps
Module
XSL
Data
Engine
Daten
XML
Printer
Ausgabeformate
Dokument
FAX
Delivery
Server
Email
WebDAV
Web
Services
XLIFF
Übersetzung
Data
Template
Translation Handler
Übersetztungskataloge
etc…
Integration in Oracle ADF
• Integration des BI
Publisher über die
Komponenten-Palette
des Oracle JDeveloper
• BIP-Regionen können in
eine ADF Page
eingebettet werden
• Unterstützung für “Push-”
und “Pull-”Modell
Migration von Oracle Reports nach BIP
Data
Template
LOV
.xdo file
RDF XML
Conversion
Utility
RTF Template
Reports 9i
rwconverter
Oracle
Report RDF
files
52
.PLS files
Log file
<Insert Picture Here>
Datenmodellierung und
Datenbank-Design
SQL Developer – Data Modeling
• mit SQL Developer 2.0 angekündigt
• Kunden können ihren Datenbestand
modellieren & verwalten
• Migration der Datenmodelle aus dem
Oracle Designer
• Statement of Direction*
• Installation
• Plug-In als Option zum SQL Developer
• Standalone-Version
• Speicherung der Metadaten
• Dateien
• Repository
* http://www.oracle.com/technology/products/database/sql_developer/files/sqldeveloperstatementofdirection.htm
Data Modeling - Funktionalität
• Funktionalität
•
•
•
•
•
•
•
•
logische Modellierung (ER-Modellierung)
Warehouse-Modellierung (Dimensionen)
Prozess-Modellierung
Relationale Modellierung (logisches DB-Design)
Physische Modellierung (physisches DB-Design)
Import von Metadaten aus dem Oracle Designer
Generierung, Reverse Engineering und Reconcile
Support für Oracle DB, DB2 (Mainframe/UDB) und SQL
Server
Data Modeling - Technologie
• Technologie und Architektur
• Installation Standalone oder als eine Erweiterung zum
SQL Developer
• Java-basiert
• Datenbanken
• Oracle 9i, 10g und Oracle 11g
• Weitere Datenbanken
• Microsoft SQL Server
• DB2
• Betriebssysteme
• Windows
• Linux
• Mac OSX
Gegenüberstellung der Produkte
Klassische Werkzeuge
J2EE-Werkzeuge
Forms Builder
Oracle
JDeveloper
Forms Server
Oracle
Application
Development
Framework
Designer/
Headstart
Oracle
JHeadstart
Reports
Builder
Reports
Server
Word
Desktop
Builder
Online
Builder
…
Oracle BI Publisher
<Insert Picture Here>
Weiterführende Informationen
und Veranstaltungen
Weiterführende Informationen (1)
• Oracle Fusion Middleware
http://www.oracle.com/technology/products/middleware
• Oracle Forms
http://www.oracle.com/technology/products/forms
• Oracle Forms Upgrade Center
http://otn.oracle.com/formsupgrade
• Deutsche Forms-Community
http://www.oracle.com/global/de/community/forms
• J2EE für Forms-Entwickler
http://www.oracle.com/technology/formsdesignerj2ee
Weiterführende Informationen (2)
• Oracle Application Development Framework (ADF)
http://www.oracle.com/technology/products/adf
• Oracle JDeveloper
http://www.oracle.com/technology/products/jdev
• Deutsche ADF Community
http://www.oracle.com/de/community/adf
=> ADF für Forms-Entwickler
• Oracle BI Publisher
http://groups.google.com/group/adf-methodology
• SQL Developer Data Modeling
http://www.oracle.com/technology/products/database/sql_developer/files/Modeling.html
Veranstaltungen
•
DOAG - SIG Development „Wie geht es weiter mit Forms ?“
•
•
•
26.3.2009
27.3.2009
Berlin
Stuttgart
DOAG - SIG Development
Active Workshop „Oracle ADF für Forms-Entwickler“
•
•
31.3.2009
Düsseldorf
DOAG - SIG Development
„Reports-Migration: Strategien, Erfahrungsberichte zu Reporting, Data
Warehouse und Business Intelligence aus Entwicklersicht “
•
•
18.6.2009
Hamburg
Oracle Developer Day „Bessere Anwendungen in kürzerer Zeit“
•
•
•
•
21.4.2009
23.4.2009
29.4.2009
7.5.2009
Stuttgart
Frankfurt
Hamburg
Dresden
Q&A
62
Herunterladen