SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
MULTI-CHANNEL APPLICATION 
DEVELOPMENT BEST PRACTICES 
Andreas Koop 
Geschäftsführung 
& Consulting 
DOAG Development, 04.06.2014, Düsseldorf
& Consulting ÜBER MICH 
Andreas Koop 
Geschäftsführung 
Beratung, Training Oracle Technologie 
ADF Certified Implementation Specialist 
Community 
DOAG, ADF EMG, ADF German Community, Google Plus, 
Twitter @multikoop @enpit 
Blog 
News - http://www.enpit.de/blog 
Technical (english) - http://multikoop.blogspot.com 
Technical (german) - http://enpit.blogspot.com 
2 
www.scope-alliance.de
AGENDA 
Multi-Channel Strategie 
Architekturbetrachtung 
Beispiele mit ADF & ADF Mobile 
Desktop, Tablet, Mobile 
Fazit & Ausblick 
DOAG Development, 04.06.2014, Düsseldorf 
3
FRÜHER WAR ALLES 
EINFACHER 
DOAG Development, 04.06.2014, Düsseldorf 
4 
Presentation Layer 
Business Rules / Logic / Process 
Layer 
Data Access Layer 
IT Stuff 
Users 
Best Practice 
3-tier Architecture
EINE WEBANWENDUNG 
REICHT NICHT MEHR AUS 
DOAG Development, 04.06.2014, Düsseldorf 
Users 
?Next 
Improved UX 
High Expectations 
Engagement 
5
MULTI CHANNEL 
ERWARTUNGEN 
DOAG Development, 04.06.2014, Düsseldorf 
6 
in the office on the go 
take photo 
on the couch 
Beispiel!
WIE SIEHT DIE IT 
ARCHITEKTUR AUS? 
Users IT Stuff 
DOAG Development, 04.06.2014, Düsseldorf 
7 
?
#CHANNEL UND 
#TECHNOLOGIEN WACHSEN 
Browser Cross-Browser 
DOAG Development, 04.06.2014, Düsseldorf 
8 
Time 
Channel 
Technology 
! 
Mobile/Tablet 
Web 
HTML/CSS 
HTML/CSS 
JavaScript 
AJAX 
HTML5/CSS3 
JavaScript 
AJAX 
WebSocket 
! 
Responsive 
Design 
Mobile /Tablet 
Native/Hybrid 
HTML5/CSS3 
JavaScript 
AJAX 
WebSocket 
! 
Responsive 
Design 
! 
ObjectiveC 
Java 
C# 
Glass Watch ? 
… 
…
..UND DAMIT ENTWICKLUNGS- 
/ WARTUNGSKOSTEN ! 
DOAG Development, 04.06.2014, Düsseldorf 
9 
Per-Channel 
Development 
#Channels 
Kosten / 
Aufwand 
Browser Cross-Browser 
! 
Mobile/Tablet 
Web 
… 
… 
Mobile /Tablet 
Native/Hybrid Glass Watch ? 
Multi-Channel 
Development
HERAUSFORDERUNGEN 
‣ Zu viele Plattformen, zu wenig Zeit 
‣ Gleiche Qualität auf allen Geräten 
‣ Integration mit dem Backend 
DOAG Development, 04.06.2014, Düsseldorf 
10
MULTI-CHANNEL ANSATZ 
DOAG Development, 04.06.2014, Düsseldorf 
11 
Build Once 
Run „Anyware“
AGENDA 
Multi-Channel Strategie 
Architekturbetrachtung 
Beispiel mit ADF & ADF Mobile 
Desktop, Tablet, Mobile 
Fazit & Ausblick 
DOAG Development, 04.06.2014, Düsseldorf 
12
MULTI-CHANNEL 
ARCHITECTURE? 
DOAG Development, 04.06.2014, Düsseldorf 
Service Layer 
Data Access Layer 
13 
Presentation 
Layer 
Business Rules / Logic / Process Layer 
Responsive / 
Adaptive 
Design 
Native / 
Hybrid 
Apps 
Client-App 
HTML5/CSS3 
HTML5/CSS3 REST / SOAP
DOAG Development, 04.06.2014, Düsseldorf 
SOA / OSB 
… 
MULTI-CHANNEL 
ARCHITECTURE MIT ADF 
14 
ViewController 
Taskflows / JSF 
SOA/ 
WebServices 
EJB/ 
„POJOs“ 
REST-Service 
Layer 
ADF BC 
!! 
ViewObjects 
EntityObjects 
Responsive / 
Adaptive 
Design 
Native / 
Hybrid / ADF Mobile 
Apps 
Client-App 
ADF Model (Binding) 
SOAP-Service 
ADF SDO 
ApplicationModule
RESPONSIVE DESIGN 
BEST PRACTICES 
‣ 1. Initial Scaling: ViewPort 
‣ 2. Layout serverseitig anpassen 
‣ Dynamic Page Templates 
‣ UI-Komponentenbaum manipulieren 
‣ 3. Media Queries (leider noch nicht im Skin-File) 
See also: http://www.ateam-oracle.com/going-mobile-with-adf-running-adf-faces-on-mobile-phones-and-tablets/ 
and http://de.slideshare.net/stevendavelaar/running-adf-faces-on-tablets-and-mobile-phones 
DOAG Development, 04.06.2014, Düsseldorf 
15
ADF MOBILE BROWSER 
‣ Apache MyFaces Trinidad, a set of JSF components 
optimized to render on mobile phone and delivers 
mobile-optimized user experiences through CSS 
‣ No ADF 
Taskflows 
DOAG Development, 04.06.2014, Düsseldorf 
16 
Presentation 
Layer 
NOT STRATEGIC 
ANYMORE!
ADF BC SDO SOAP 
SERVICES OUT OF THE BOX 
! 
! 
! 
! 
‣ Nachteil für Mobile: High Volume Traffic 
DOAG Development, 04.06.2014, Düsseldorf 
17 
ADF Mobile 
! SOAP-Service 
ADF SDO 
ADF BC 
ApplicationModule HTTP(S)/SOAP WS DataControl 
Service Layer
NO SUPPORT FOR ADF 
BC SDO REST SERVICES YET 
! 
! 
! 
! 
‣ Ab ADF 12.1.3+ sicherlich die einfachste Option, um 
bestehende Business Logik als Service für Mobile 
anzubieten! 
DOAG Development, 04.06.2014, Düsseldorf 
18 
REST-Service 
ADF SDO 
ADF Mobile 
! 
WS DataControl 
ADF BC 
ApplicationModule HTTP(S)/REST 
Geplant für 
ADF 12.1.3+ 
Service Layer
EJB -> REST SERVICE 
! 
! 
! 
‣ Bei bestehendem EJB Model OK 
‣ Nachteil: Keine Wiederverw. des ADF BC Models 
(Fusion Stack) 
DOAG Development, 04.06.2014, Düsseldorf 
19 
EJB REST Resource 
@EJB Service 
ADF Mobile 
! 
HTTP(S)/REST WS DataControl 
Service Layer 
REST 
Option 1
EJB -> REST SERVICE 
HOWTO 
‣ Entity-Klassen annotieren 
‣ REST-Resource annotieren, ggf. Wrapper-Klasse 
! 
! 
! 
‣ Fertig! 
See also: http://www.oracle.com/technetwork/issue-archive/2014/14-mar/o24adf-2147201.html 
DOAG Development, 04.06.2014, Düsseldorf 
20 
Service Layer 
REST 
Option 1 
REST for 
EveryOne
ADF BC APPMODULE 
-> REST SERVICE 
! 
! 
DOAG Development, 04.06.2014, Düsseldorf 
21 
ADF BC REST Resource 
-getRootAM 
ADF Mobile 
! 
HTTP(S)/REST WS DataControl 
Service Layer 
REST 
Option 2
ADF BC APPMODULE 
-> REST SERVICE 
‣ Vorteil 
‣ ADF BC Logic zu 100% wiederverwendbar 
‣ Nachteil 
‣ Hoher manueller Aufwand für REST Service- 
Erstellung 
DOAG Development, 04.06.2014, Düsseldorf 
22 
Service Layer 
REST 
Option 2
ADF BC SDO 
EJB -> REST ! 
! 
‣ 1. Inject EJB 
‣ 2. Use ServiceBean 
DOAG Development, 04.06.2014, Düsseldorf 
REST Resource 
@EJB Service 
23 
ADF Mobile 
ADF BCADF SDO ! 
ApplicationModule HTTP(S)/REST WS DataControl 
Wrapper 
-Klasse anlegen 
Service Layer 
REST 
Option 3
ADF BC SDO 
EJB -> REST 
‣ Vorteil 
‣ ADF BC Logic zu 100% wiederverwendbar 
‣ Geringer manueller Aufwand für REST Service- 
DOAG Development, 04.06.2014, Düsseldorf 
24 
Erstellung 
‣ Nachteil 
‣ ? ;) 
Service Layer 
REST 
Option 3
WAS GIBT ES SONST NOCH? 
‣ Ggf. macht es Sinn eine ADF Service-Fassade 
AM 
DOAG Development, 04.06.2014, Düsseldorf 
25 
einzuführen, z.B. 
ADF BC 
! 
! 
! 
! 
! 
AM 
VO 
VO 
EOEO 
Service 
Facade 
! 
! 
! 
! 
AM 
AM 
VOVO 
ADF BC 
SDO 
REST 
-getAM 
ADF BC 
SDO REST 
REST 
@EJB 
ADF BC 
SDO 
SOAP 
REST 
REST 
REST 
Geplant für 
ADF 12.1.3+ 
extend 
or 
customize 
- No EOs here! 
- Custom Tuning possible 
See also: https://www.youtube.com/watch?v=6QAkq3bI97M 
(Building WS from an existing ADF application - ADF Insider) 
REST 
Zusammenfassung 
use 
OPTIONAL
AGENDA 
Multi-Channel Strategie 
Architekturbetrachtung 
Beispiel mit ADF & ADF Mobile 
Desktop, Tablet, Mobile 
Fazit & Ausblick 
DOAG Development, 04.06.2014, Düsseldorf 
26
RESPONSIVE ADF 
APPLICATION 
DOAG Development, 04.06.2014, Düsseldorf 
27 
DEMO NOW
ADF MOBILE APP 
‣ Phone / Tablet 
DOAG Development, 04.06.2014, Düsseldorf 
‣ Bessere Unterstützung für 
SOAP Services 
‣ => WS DataControl 
28
ADF MOBILE APP 
‣ Phone / Tablet 
DOAG Development, 04.06.2014, Düsseldorf 
‣ REST-JSON Service 
29 
Einbindung nur 
programmatisch
ADF MOBILE - REMOTE URL 
INTEGRATION 
‣ Einbettung von Webseiten / Apps 
über eine URL 
‣ Einsatz / Empfehlung bei 
‣ News / Status-Seiten 
‣ Bestehende ADF Mobile 
Browser Apps 
DOAG Development, 04.06.2014, Düsseldorf 
30
ADAPTIVE ADF MOBILE APP 
‣ Tablet / Phone 
Feature Constraints 
DOAG Development, 04.06.2014, Düsseldorf 
31
AUSWAHLEMPFEHLUNG 
STAND HEUTE 
‣ 1) Responsive ADF Web (das Mindestmaß) 
ADF Mobile Browser nicht mehr zu empfehlen 
‣ 2) SOAP Services auf ADF BC generieren 
‣ 3) Phone-Variante in einer ADF Mobile App 
implementieren (Content Constraints vorsehen) 
WS DataControl bei eigenen Services / ggf. REST bei Service-Fremdanbietern 
‣ 4) Tablet-Variante auf Basis von 3) ausbauen 
DOAG Development, 04.06.2014, Düsseldorf 
32
AGENDA 
Multi-Channel Strategie 
Architekturbetrachtung 
Beispiel mit ADF & ADF Mobile 
Desktop, Tablet, Mobile 
Fazit & Ausblick 
DOAG Development, 04.06.2014, Düsseldorf 
33
FAZIT 
‣ Multi-Channel ist nicht wegzudenken! Responsive 
Design für WebApps ist Standard. 
‣ Auf das API-/ServiceFassade-Design 
kommt es an (REST/SOAP, Cloud, …) 
‣ REST Unterstützung in ADF noch nicht 
optimal 
‣ Testen / QA bleibt eine Herausforderung 
TestFlight usw… 
DOAG Development, 04.06.2014, Düsseldorf 
34
AUSBLICK 
! 
‣ ADF 12.1.3+ wird die Entwicklungsproduktivität 
verbessern 
ADF BC REST Services, Tablet First Template, CSS3 MediaQueries 
‣ Akzeptanz von Mobile/Tablet Hybrid Apps steigt 
‣ Verbesserung der User Experience / Performance 
‣ Fast alle Gerätefeatures werden unterstützt 
DOAG Development, 04.06.2014, Düsseldorf 
35
VIELEN DANK FÜR IHRE 
AUFMERKSAMKEIT 
HABEN SIE NOCH FRAGEN?
ENTERPRISE PRAGMATIC IT 
Consulting Training Development 
Oracle Business 
Oracle 
Oracle ADF 
Oracle 
Intelligence 
WebCenter 
ADF Mobile 
WebLogic 
Oracle Fusion Middleware 
37
PARTNERSCHAFTEN 
38
Multichannel Application Development Best Practices

Más contenido relacionado

Similar a Multichannel Application Development Best Practices

Cloud-native Apps - Architektur, Implementierung, Demo
Cloud-native Apps - Architektur, Implementierung, DemoCloud-native Apps - Architektur, Implementierung, Demo
Cloud-native Apps - Architektur, Implementierung, DemoAndreas Koop
 
Cloud-native Apps – Architektur, Implementierung, Demo
Cloud-native Apps – Architektur, Implementierung, DemoCloud-native Apps – Architektur, Implementierung, Demo
Cloud-native Apps – Architektur, Implementierung, Demoenpit GmbH & Co. KG
 
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestalten
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestaltenBTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestalten
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestaltenBTEXX GmbH
 
REST in Peace - Mit ORDS, Node.JS, ADF, Java oder OSB?
REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?
REST in Peace - Mit ORDS, Node.JS, ADF, Java oder OSB?enpit GmbH & Co. KG
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Niels de Bruijn
 
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von Apps
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von AppsMobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von Apps
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von AppsGeorg Eck
 
Rapid Application Development mit Openobject
Rapid Application Development mit OpenobjectRapid Application Development mit Openobject
Rapid Application Development mit Openobjectopenbig
 
Integration of BI Publisher in ADF applications
Integration of BI Publisher in ADF applicationsIntegration of BI Publisher in ADF applications
Integration of BI Publisher in ADF applicationsAndreas Koop
 
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)IGN Vorstand
 
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)Georg Eck
 
Mobile Anwendungen mit Apache Cordova
Mobile Anwendungen mit Apache CordovaMobile Anwendungen mit Apache Cordova
Mobile Anwendungen mit Apache CordovaYvette Teiken
 
Deutsche Wolke Präsentation 100114
Deutsche Wolke Präsentation 100114Deutsche Wolke Präsentation 100114
Deutsche Wolke Präsentation 100114Georg Klauser
 
Dateien per Drag & Drop in APEX Applikationen ablegen.
Dateien per Drag & Drop in APEX Applikationen ablegen.Dateien per Drag & Drop in APEX Applikationen ablegen.
Dateien per Drag & Drop in APEX Applikationen ablegen.MT AG
 
Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Digicomp Academy AG
 
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS Framework
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS FrameworkBeschleunigen Sie Ihre Web-Entwicklung mit AngularJS Framework
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS FrameworkDieter Ziegler
 
Restful Frontend-Architecture
Restful Frontend-ArchitectureRestful Frontend-Architecture
Restful Frontend-ArchitectureSandro Sonntag
 

Similar a Multichannel Application Development Best Practices (20)

DOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best PracticeDOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best Practice
 
Cloud-native Apps - Architektur, Implementierung, Demo
Cloud-native Apps - Architektur, Implementierung, DemoCloud-native Apps - Architektur, Implementierung, Demo
Cloud-native Apps - Architektur, Implementierung, Demo
 
Cloud-native Apps – Architektur, Implementierung, Demo
Cloud-native Apps – Architektur, Implementierung, DemoCloud-native Apps – Architektur, Implementierung, Demo
Cloud-native Apps – Architektur, Implementierung, Demo
 
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestalten
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestaltenBTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestalten
BTEXX Fachartikel: Zukunftssichere Anwendungen mit SAP gestalten
 
REST in Peace - Mit ORDS, Node.JS, ADF, Java oder OSB?
REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?REST in Peace  - Mit ORDS, Node.JS, ADF, Java oder OSB?
REST in Peace - Mit ORDS, Node.JS, ADF, Java oder OSB?
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 
Hsps2014
Hsps2014Hsps2014
Hsps2014
 
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von Apps
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von AppsMobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von Apps
Mobile Dokumentation auf Tablet-PCs und Smartphones mithilfe von Apps
 
Rapid Application Development mit Openobject
Rapid Application Development mit OpenobjectRapid Application Development mit Openobject
Rapid Application Development mit Openobject
 
Integration of BI Publisher in ADF applications
Integration of BI Publisher in ADF applicationsIntegration of BI Publisher in ADF applications
Integration of BI Publisher in ADF applications
 
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)
GI2010 symposium-ws2.3-intro lehrach (kurzeinführung-gdi-strategien)
 
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
 
Mobile Anwendungen mit Apache Cordova
Mobile Anwendungen mit Apache CordovaMobile Anwendungen mit Apache Cordova
Mobile Anwendungen mit Apache Cordova
 
Deutsche Wolke Präsentation 100114
Deutsche Wolke Präsentation 100114Deutsche Wolke Präsentation 100114
Deutsche Wolke Präsentation 100114
 
Dateien per Drag & Drop in APEX Applikationen ablegen.
Dateien per Drag & Drop in APEX Applikationen ablegen.Dateien per Drag & Drop in APEX Applikationen ablegen.
Dateien per Drag & Drop in APEX Applikationen ablegen.
 
Kevin Hofer
Kevin HoferKevin Hofer
Kevin Hofer
 
Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4
 
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS Framework
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS FrameworkBeschleunigen Sie Ihre Web-Entwicklung mit AngularJS Framework
Beschleunigen Sie Ihre Web-Entwicklung mit AngularJS Framework
 
APEX 5.0, und sonst?
APEX 5.0, und sonst?APEX 5.0, und sonst?
APEX 5.0, und sonst?
 
Restful Frontend-Architecture
Restful Frontend-ArchitectureRestful Frontend-Architecture
Restful Frontend-Architecture
 

Más de Andreas Koop

Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem VormarschVon Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem VormarschAndreas Koop
 
Mit Legosteinen Maschinelles Lernen lernen
Mit Legosteinen Maschinelles Lernen lernenMit Legosteinen Maschinelles Lernen lernen
Mit Legosteinen Maschinelles Lernen lernenAndreas Koop
 
Development in der Cloud-Ära
Development in der Cloud-ÄraDevelopment in der Cloud-Ära
Development in der Cloud-ÄraAndreas Koop
 
WebLogic im Docker Container
WebLogic im Docker ContainerWebLogic im Docker Container
WebLogic im Docker ContainerAndreas Koop
 
ADF Spotlight: ADF 12c Deck component overview and progammer examples
ADF Spotlight: ADF 12c Deck component overview and progammer examplesADF Spotlight: ADF 12c Deck component overview and progammer examples
ADF Spotlight: ADF 12c Deck component overview and progammer examplesAndreas Koop
 
WebCenter Portal - Integrate Custom Taskflows
WebCenter Portal - Integrate Custom TaskflowsWebCenter Portal - Integrate Custom Taskflows
WebCenter Portal - Integrate Custom TaskflowsAndreas Koop
 
Java Web Apps and Services on Oracle Java Cloud Service
Java Web Apps and Services on Oracle Java Cloud ServiceJava Web Apps and Services on Oracle Java Cloud Service
Java Web Apps and Services on Oracle Java Cloud ServiceAndreas Koop
 
Oracle WebLogic for DevOps
Oracle WebLogic for DevOpsOracle WebLogic for DevOps
Oracle WebLogic for DevOpsAndreas Koop
 
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)Andreas Koop
 
WepApps mit Play! - Nichts leichter als das
WepApps mit Play! - Nichts leichter als dasWepApps mit Play! - Nichts leichter als das
WepApps mit Play! - Nichts leichter als dasAndreas Koop
 
ADF User Interface Design Best Pratices
ADF User Interface Design Best PraticesADF User Interface Design Best Pratices
ADF User Interface Design Best PraticesAndreas Koop
 
Administration for Oracle ADF Applications
Administration for Oracle ADF ApplicationsAdministration for Oracle ADF Applications
Administration for Oracle ADF ApplicationsAndreas Koop
 
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic Server
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic ServerDOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic Server
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic ServerAndreas Koop
 

Más de Andreas Koop (14)

Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem VormarschVon Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
Von Big Data zu Künstlicher Intelligenz - Maschinelles Lernen auf dem Vormarsch
 
Mit Legosteinen Maschinelles Lernen lernen
Mit Legosteinen Maschinelles Lernen lernenMit Legosteinen Maschinelles Lernen lernen
Mit Legosteinen Maschinelles Lernen lernen
 
Development in der Cloud-Ära
Development in der Cloud-ÄraDevelopment in der Cloud-Ära
Development in der Cloud-Ära
 
REST mit ADF
REST mit ADFREST mit ADF
REST mit ADF
 
WebLogic im Docker Container
WebLogic im Docker ContainerWebLogic im Docker Container
WebLogic im Docker Container
 
ADF Spotlight: ADF 12c Deck component overview and progammer examples
ADF Spotlight: ADF 12c Deck component overview and progammer examplesADF Spotlight: ADF 12c Deck component overview and progammer examples
ADF Spotlight: ADF 12c Deck component overview and progammer examples
 
WebCenter Portal - Integrate Custom Taskflows
WebCenter Portal - Integrate Custom TaskflowsWebCenter Portal - Integrate Custom Taskflows
WebCenter Portal - Integrate Custom Taskflows
 
Java Web Apps and Services on Oracle Java Cloud Service
Java Web Apps and Services on Oracle Java Cloud ServiceJava Web Apps and Services on Oracle Java Cloud Service
Java Web Apps and Services on Oracle Java Cloud Service
 
Oracle WebLogic for DevOps
Oracle WebLogic for DevOpsOracle WebLogic for DevOps
Oracle WebLogic for DevOps
 
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
Deployment Best Practices on WebLogic Server (DOAG IMC Summit 2013)
 
WepApps mit Play! - Nichts leichter als das
WepApps mit Play! - Nichts leichter als dasWepApps mit Play! - Nichts leichter als das
WepApps mit Play! - Nichts leichter als das
 
ADF User Interface Design Best Pratices
ADF User Interface Design Best PraticesADF User Interface Design Best Pratices
ADF User Interface Design Best Pratices
 
Administration for Oracle ADF Applications
Administration for Oracle ADF ApplicationsAdministration for Oracle ADF Applications
Administration for Oracle ADF Applications
 
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic Server
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic ServerDOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic Server
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic Server
 

Multichannel Application Development Best Practices

  • 1. MULTI-CHANNEL APPLICATION DEVELOPMENT BEST PRACTICES Andreas Koop Geschäftsführung & Consulting DOAG Development, 04.06.2014, Düsseldorf
  • 2. & Consulting ÜBER MICH Andreas Koop Geschäftsführung Beratung, Training Oracle Technologie ADF Certified Implementation Specialist Community DOAG, ADF EMG, ADF German Community, Google Plus, Twitter @multikoop @enpit Blog News - http://www.enpit.de/blog Technical (english) - http://multikoop.blogspot.com Technical (german) - http://enpit.blogspot.com 2 www.scope-alliance.de
  • 3. AGENDA Multi-Channel Strategie Architekturbetrachtung Beispiele mit ADF & ADF Mobile Desktop, Tablet, Mobile Fazit & Ausblick DOAG Development, 04.06.2014, Düsseldorf 3
  • 4. FRÜHER WAR ALLES EINFACHER DOAG Development, 04.06.2014, Düsseldorf 4 Presentation Layer Business Rules / Logic / Process Layer Data Access Layer IT Stuff Users Best Practice 3-tier Architecture
  • 5. EINE WEBANWENDUNG REICHT NICHT MEHR AUS DOAG Development, 04.06.2014, Düsseldorf Users ?Next Improved UX High Expectations Engagement 5
  • 6. MULTI CHANNEL ERWARTUNGEN DOAG Development, 04.06.2014, Düsseldorf 6 in the office on the go take photo on the couch Beispiel!
  • 7. WIE SIEHT DIE IT ARCHITEKTUR AUS? Users IT Stuff DOAG Development, 04.06.2014, Düsseldorf 7 ?
  • 8. #CHANNEL UND #TECHNOLOGIEN WACHSEN Browser Cross-Browser DOAG Development, 04.06.2014, Düsseldorf 8 Time Channel Technology ! Mobile/Tablet Web HTML/CSS HTML/CSS JavaScript AJAX HTML5/CSS3 JavaScript AJAX WebSocket ! Responsive Design Mobile /Tablet Native/Hybrid HTML5/CSS3 JavaScript AJAX WebSocket ! Responsive Design ! ObjectiveC Java C# Glass Watch ? … …
  • 9. ..UND DAMIT ENTWICKLUNGS- / WARTUNGSKOSTEN ! DOAG Development, 04.06.2014, Düsseldorf 9 Per-Channel Development #Channels Kosten / Aufwand Browser Cross-Browser ! Mobile/Tablet Web … … Mobile /Tablet Native/Hybrid Glass Watch ? Multi-Channel Development
  • 10. HERAUSFORDERUNGEN ‣ Zu viele Plattformen, zu wenig Zeit ‣ Gleiche Qualität auf allen Geräten ‣ Integration mit dem Backend DOAG Development, 04.06.2014, Düsseldorf 10
  • 11. MULTI-CHANNEL ANSATZ DOAG Development, 04.06.2014, Düsseldorf 11 Build Once Run „Anyware“
  • 12. AGENDA Multi-Channel Strategie Architekturbetrachtung Beispiel mit ADF & ADF Mobile Desktop, Tablet, Mobile Fazit & Ausblick DOAG Development, 04.06.2014, Düsseldorf 12
  • 13. MULTI-CHANNEL ARCHITECTURE? DOAG Development, 04.06.2014, Düsseldorf Service Layer Data Access Layer 13 Presentation Layer Business Rules / Logic / Process Layer Responsive / Adaptive Design Native / Hybrid Apps Client-App HTML5/CSS3 HTML5/CSS3 REST / SOAP
  • 14. DOAG Development, 04.06.2014, Düsseldorf SOA / OSB … MULTI-CHANNEL ARCHITECTURE MIT ADF 14 ViewController Taskflows / JSF SOA/ WebServices EJB/ „POJOs“ REST-Service Layer ADF BC !! ViewObjects EntityObjects Responsive / Adaptive Design Native / Hybrid / ADF Mobile Apps Client-App ADF Model (Binding) SOAP-Service ADF SDO ApplicationModule
  • 15. RESPONSIVE DESIGN BEST PRACTICES ‣ 1. Initial Scaling: ViewPort ‣ 2. Layout serverseitig anpassen ‣ Dynamic Page Templates ‣ UI-Komponentenbaum manipulieren ‣ 3. Media Queries (leider noch nicht im Skin-File) See also: http://www.ateam-oracle.com/going-mobile-with-adf-running-adf-faces-on-mobile-phones-and-tablets/ and http://de.slideshare.net/stevendavelaar/running-adf-faces-on-tablets-and-mobile-phones DOAG Development, 04.06.2014, Düsseldorf 15
  • 16. ADF MOBILE BROWSER ‣ Apache MyFaces Trinidad, a set of JSF components optimized to render on mobile phone and delivers mobile-optimized user experiences through CSS ‣ No ADF Taskflows DOAG Development, 04.06.2014, Düsseldorf 16 Presentation Layer NOT STRATEGIC ANYMORE!
  • 17. ADF BC SDO SOAP SERVICES OUT OF THE BOX ! ! ! ! ‣ Nachteil für Mobile: High Volume Traffic DOAG Development, 04.06.2014, Düsseldorf 17 ADF Mobile ! SOAP-Service ADF SDO ADF BC ApplicationModule HTTP(S)/SOAP WS DataControl Service Layer
  • 18. NO SUPPORT FOR ADF BC SDO REST SERVICES YET ! ! ! ! ‣ Ab ADF 12.1.3+ sicherlich die einfachste Option, um bestehende Business Logik als Service für Mobile anzubieten! DOAG Development, 04.06.2014, Düsseldorf 18 REST-Service ADF SDO ADF Mobile ! WS DataControl ADF BC ApplicationModule HTTP(S)/REST Geplant für ADF 12.1.3+ Service Layer
  • 19. EJB -> REST SERVICE ! ! ! ‣ Bei bestehendem EJB Model OK ‣ Nachteil: Keine Wiederverw. des ADF BC Models (Fusion Stack) DOAG Development, 04.06.2014, Düsseldorf 19 EJB REST Resource @EJB Service ADF Mobile ! HTTP(S)/REST WS DataControl Service Layer REST Option 1
  • 20. EJB -> REST SERVICE HOWTO ‣ Entity-Klassen annotieren ‣ REST-Resource annotieren, ggf. Wrapper-Klasse ! ! ! ‣ Fertig! See also: http://www.oracle.com/technetwork/issue-archive/2014/14-mar/o24adf-2147201.html DOAG Development, 04.06.2014, Düsseldorf 20 Service Layer REST Option 1 REST for EveryOne
  • 21. ADF BC APPMODULE -> REST SERVICE ! ! DOAG Development, 04.06.2014, Düsseldorf 21 ADF BC REST Resource -getRootAM ADF Mobile ! HTTP(S)/REST WS DataControl Service Layer REST Option 2
  • 22. ADF BC APPMODULE -> REST SERVICE ‣ Vorteil ‣ ADF BC Logic zu 100% wiederverwendbar ‣ Nachteil ‣ Hoher manueller Aufwand für REST Service- Erstellung DOAG Development, 04.06.2014, Düsseldorf 22 Service Layer REST Option 2
  • 23. ADF BC SDO EJB -> REST ! ! ‣ 1. Inject EJB ‣ 2. Use ServiceBean DOAG Development, 04.06.2014, Düsseldorf REST Resource @EJB Service 23 ADF Mobile ADF BCADF SDO ! ApplicationModule HTTP(S)/REST WS DataControl Wrapper -Klasse anlegen Service Layer REST Option 3
  • 24. ADF BC SDO EJB -> REST ‣ Vorteil ‣ ADF BC Logic zu 100% wiederverwendbar ‣ Geringer manueller Aufwand für REST Service- DOAG Development, 04.06.2014, Düsseldorf 24 Erstellung ‣ Nachteil ‣ ? ;) Service Layer REST Option 3
  • 25. WAS GIBT ES SONST NOCH? ‣ Ggf. macht es Sinn eine ADF Service-Fassade AM DOAG Development, 04.06.2014, Düsseldorf 25 einzuführen, z.B. ADF BC ! ! ! ! ! AM VO VO EOEO Service Facade ! ! ! ! AM AM VOVO ADF BC SDO REST -getAM ADF BC SDO REST REST @EJB ADF BC SDO SOAP REST REST REST Geplant für ADF 12.1.3+ extend or customize - No EOs here! - Custom Tuning possible See also: https://www.youtube.com/watch?v=6QAkq3bI97M (Building WS from an existing ADF application - ADF Insider) REST Zusammenfassung use OPTIONAL
  • 26. AGENDA Multi-Channel Strategie Architekturbetrachtung Beispiel mit ADF & ADF Mobile Desktop, Tablet, Mobile Fazit & Ausblick DOAG Development, 04.06.2014, Düsseldorf 26
  • 27. RESPONSIVE ADF APPLICATION DOAG Development, 04.06.2014, Düsseldorf 27 DEMO NOW
  • 28. ADF MOBILE APP ‣ Phone / Tablet DOAG Development, 04.06.2014, Düsseldorf ‣ Bessere Unterstützung für SOAP Services ‣ => WS DataControl 28
  • 29. ADF MOBILE APP ‣ Phone / Tablet DOAG Development, 04.06.2014, Düsseldorf ‣ REST-JSON Service 29 Einbindung nur programmatisch
  • 30. ADF MOBILE - REMOTE URL INTEGRATION ‣ Einbettung von Webseiten / Apps über eine URL ‣ Einsatz / Empfehlung bei ‣ News / Status-Seiten ‣ Bestehende ADF Mobile Browser Apps DOAG Development, 04.06.2014, Düsseldorf 30
  • 31. ADAPTIVE ADF MOBILE APP ‣ Tablet / Phone Feature Constraints DOAG Development, 04.06.2014, Düsseldorf 31
  • 32. AUSWAHLEMPFEHLUNG STAND HEUTE ‣ 1) Responsive ADF Web (das Mindestmaß) ADF Mobile Browser nicht mehr zu empfehlen ‣ 2) SOAP Services auf ADF BC generieren ‣ 3) Phone-Variante in einer ADF Mobile App implementieren (Content Constraints vorsehen) WS DataControl bei eigenen Services / ggf. REST bei Service-Fremdanbietern ‣ 4) Tablet-Variante auf Basis von 3) ausbauen DOAG Development, 04.06.2014, Düsseldorf 32
  • 33. AGENDA Multi-Channel Strategie Architekturbetrachtung Beispiel mit ADF & ADF Mobile Desktop, Tablet, Mobile Fazit & Ausblick DOAG Development, 04.06.2014, Düsseldorf 33
  • 34. FAZIT ‣ Multi-Channel ist nicht wegzudenken! Responsive Design für WebApps ist Standard. ‣ Auf das API-/ServiceFassade-Design kommt es an (REST/SOAP, Cloud, …) ‣ REST Unterstützung in ADF noch nicht optimal ‣ Testen / QA bleibt eine Herausforderung TestFlight usw… DOAG Development, 04.06.2014, Düsseldorf 34
  • 35. AUSBLICK ! ‣ ADF 12.1.3+ wird die Entwicklungsproduktivität verbessern ADF BC REST Services, Tablet First Template, CSS3 MediaQueries ‣ Akzeptanz von Mobile/Tablet Hybrid Apps steigt ‣ Verbesserung der User Experience / Performance ‣ Fast alle Gerätefeatures werden unterstützt DOAG Development, 04.06.2014, Düsseldorf 35
  • 36. VIELEN DANK FÜR IHRE AUFMERKSAMKEIT HABEN SIE NOCH FRAGEN?
  • 37. ENTERPRISE PRAGMATIC IT Consulting Training Development Oracle Business Oracle Oracle ADF Oracle Intelligence WebCenter ADF Mobile WebLogic Oracle Fusion Middleware 37