SlideShare a Scribd company logo
1 of 32
Download to read offline
Optimizing an SAP Fiori Application Based on
a Real World Example
Session ID: DX301
Manuel Blechschmidt, FarmFacts GmbH, SAP Community Network
25. - 29.9.2017 SAP TechEd Las Vegas
23.07.17FarmFacts GmbH, Abteilung, Verfasser Seite 2
Please build the best digital
farming platform on earth
Challenge accepted!
Architecture
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 4
OpenUI5 Client & Openlayers
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 5
Development cycle
In the first year we did this weekly
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 6
Develop
Release
Analyze
Feedback
After one and a half year
Your application is
awesome
but it is so slow
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 7
We started performance optimization
1. Define performance goals from the customer perspective
2. Measure performance goals in different set ups
3. Tweak as long as the performance goals are not met
Rule of thumb doubling performance means 10% - 30% more effort. Sometimes you
have to be 8 times faster which means 3*10% - 30% ~ 60% more development effort
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 8
Performance definitions
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 9
Standard techniques for performance improvement UI5
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 10
– Use Chrome
– Reduce amount of HTTP requests
▪ Bundle controllers, controls and view as Component-preload.js
▪ Use batch for ODataModel
▪ Use client mode for ODataModel binding
▪ Use OpenUI5 from a CDN and hope it is already cached
– Reduce size of HTTP requests
▪ Compress HTTP requests
▪ Use HTTP2
– Parallize HTTP requests
▪ Use sap.ui.define (AMD) syntax
Advanced techniques
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 11
– Optimize rendering by disabling invalidation and updating DOM
– Using virtual lists by just rendering the elements shown in the viewpost
– Using canvas for rendering objects (openlayers)
– Use webpack to only bundle the JavaScript that is needed
– Use new Chrome Developer Tools to find the code that is really executed (coverage)
– Use new support assistent to analyze runtime behavior
– Send samples of live application to monitoring database
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 12
Connection Regular 3G Regular
3G
Regular
3G
Regular 3G Regular 3G Regular
3G
No
throtteling
Debug
Sources
X O O O O O O
No Cache X X O O O O O
No async X X X O O O O
No Compoent-
preload.js
X X X X O O O
No Server
Compression
X X X X X O O
Load Time (s) 87,5 40,5 1,8 1,5 1,1 0,7 0,64
0,1
1
10
100
0 1 2 3 4 5 6 7 8
Load Time (s)
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 13
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 14
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 15
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 16
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 17
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 18
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 19
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 20
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 21
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 22
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 23
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 24
Standard Techniques Case Study
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 25
Advanced techniques, Disable invalidation
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 26
Advanced techniques, only render visible area
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 27
Advanced techniques, OpenUI5 support assistant
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 28
Advanced techniques, OpenUI5 support assistant
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 29
Questions?
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 30
Source, image credits.
Sources
 https://openui5nightly.hana.ondemand.com/
 https://developer.chrome.com/devtools
Slide 2
men in black by radacina https://openclipart.org/detail/20605/men-in-black
Slide 9
blueprint github project https://github.com/ManuelB/blueprint
23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 31
Feedback
Please complete a session evaluation for this
session DX301!

More Related Content

Viewers also liked

Hyperion Planning: Cloud or On Premise
Hyperion Planning: Cloud or On PremiseHyperion Planning: Cloud or On Premise
Hyperion Planning: Cloud or On PremiseOAUGNJ
 
SAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC ConsolidationSAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC ConsolidationJothi Periasamy
 
The Future of Business Planning with BPC 10.1 and SAP HANA
The Future of Business Planning with BPC 10.1 and SAP  HANAThe Future of Business Planning with BPC 10.1 and SAP  HANA
The Future of Business Planning with BPC 10.1 and SAP HANADickinson + Associates
 
Using BPMN-Q to show violation of execution ordering compliance rules
Using BPMN-Q to show violation of execution ordering compliance rulesUsing BPMN-Q to show violation of execution ordering compliance rules
Using BPMN-Q to show violation of execution ordering compliance rulesManuel Blechschmidt
 
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2Cloneskills
 
SAP BPC Environment Export Import Implementation Guide
SAP BPC Environment Export Import Implementation GuideSAP BPC Environment Export Import Implementation Guide
SAP BPC Environment Export Import Implementation GuideCloneskills
 
Best Practices for Enterprise Performance Management
Best Practices for Enterprise Performance ManagementBest Practices for Enterprise Performance Management
Best Practices for Enterprise Performance ManagementPerficient, Inc.
 
SAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation GuideSAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation GuideCloneskills
 
S4 Financials Powered By HANA-Purna
S4 Financials Powered By HANA-PurnaS4 Financials Powered By HANA-Purna
S4 Financials Powered By HANA-PurnaChandar Pokala
 
SAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step GuideSAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step GuideMurugesan Annamalai
 
Oracle EPM BI Overview
Oracle EPM BI OverviewOracle EPM BI Overview
Oracle EPM BI Overviewcglylesu
 
Clone skills, inc. sap bpc on hana data management v9
Clone skills, inc. sap bpc on hana data management v9Clone skills, inc. sap bpc on hana data management v9
Clone skills, inc. sap bpc on hana data management v9Jothi Periasamy
 
Sapbpc nw 10.0 transactional data load guide
Sapbpc nw 10.0 transactional data load guideSapbpc nw 10.0 transactional data load guide
Sapbpc nw 10.0 transactional data load guideCloneskills
 

Viewers also liked (15)

Hyperion Planning: Cloud or On Premise
Hyperion Planning: Cloud or On PremiseHyperion Planning: Cloud or On Premise
Hyperion Planning: Cloud or On Premise
 
SAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC ConsolidationSAP GL Data Load for BPC Consolidation
SAP GL Data Load for BPC Consolidation
 
The Future of Business Planning with BPC 10.1 and SAP HANA
The Future of Business Planning with BPC 10.1 and SAP  HANAThe Future of Business Planning with BPC 10.1 and SAP  HANA
The Future of Business Planning with BPC 10.1 and SAP HANA
 
SAP HANA LIVE WEBINAR
SAP HANA LIVE WEBINARSAP HANA LIVE WEBINAR
SAP HANA LIVE WEBINAR
 
Using BPMN-Q to show violation of execution ordering compliance rules
Using BPMN-Q to show violation of execution ordering compliance rulesUsing BPMN-Q to show violation of execution ordering compliance rules
Using BPMN-Q to show violation of execution ordering compliance rules
 
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2
Sapbpc nw 10.0 consolidations ownership and minority interest calculations v2
 
SAP BPC Environment Export Import Implementation Guide
SAP BPC Environment Export Import Implementation GuideSAP BPC Environment Export Import Implementation Guide
SAP BPC Environment Export Import Implementation Guide
 
Best Practices for Enterprise Performance Management
Best Practices for Enterprise Performance ManagementBest Practices for Enterprise Performance Management
Best Practices for Enterprise Performance Management
 
SAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation GuideSAP BPC on HANA Environment Security Management Implementation Guide
SAP BPC on HANA Environment Security Management Implementation Guide
 
S4 Financials Powered By HANA-Purna
S4 Financials Powered By HANA-PurnaS4 Financials Powered By HANA-Purna
S4 Financials Powered By HANA-Purna
 
Sap fiori
Sap fioriSap fiori
Sap fiori
 
SAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step GuideSAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
SAP BPC NW 10.0 Equity Based Consolidation Step by Step Guide
 
Oracle EPM BI Overview
Oracle EPM BI OverviewOracle EPM BI Overview
Oracle EPM BI Overview
 
Clone skills, inc. sap bpc on hana data management v9
Clone skills, inc. sap bpc on hana data management v9Clone skills, inc. sap bpc on hana data management v9
Clone skills, inc. sap bpc on hana data management v9
 
Sapbpc nw 10.0 transactional data load guide
Sapbpc nw 10.0 transactional data load guideSapbpc nw 10.0 transactional data load guide
Sapbpc nw 10.0 transactional data load guide
 

Similar to Optimizing an SAP Fiori Application Based on a Real World Example

How to integrate PWA solutions successfully (hosting)
How to integrate PWA solutions successfully (hosting)How to integrate PWA solutions successfully (hosting)
How to integrate PWA solutions successfully (hosting)Jonas Hünig
 
Enterprise Architecture in Practice: from Datastore to APIs and Apps
Enterprise Architecture in Practice: from Datastore to APIs and AppsEnterprise Architecture in Practice: from Datastore to APIs and Apps
Enterprise Architecture in Practice: from Datastore to APIs and AppsWSO2
 
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM Solutions
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM SolutionsRed Hat JBoss BRMS Primer - JBoss Business Rules and BPM Solutions
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM SolutionsEric D. Schabell
 
Ahead of the Curve: How 23andMe Improved UX with Performance Edge
Ahead of the Curve: How 23andMe Improved UX with Performance EdgeAhead of the Curve: How 23andMe Improved UX with Performance Edge
Ahead of the Curve: How 23andMe Improved UX with Performance EdgeOptimizely
 
Salesforce Developer Workshop for GDF Suez Hackathon
Salesforce Developer Workshop for GDF Suez HackathonSalesforce Developer Workshop for GDF Suez Hackathon
Salesforce Developer Workshop for GDF Suez HackathonPeter Chittum
 
Heise Developer World 2016 - Big Data ist tot, es lebe Business Intelligenz
Heise Developer World 2016 - Big Data ist tot, es lebe Business IntelligenzHeise Developer World 2016 - Big Data ist tot, es lebe Business Intelligenz
Heise Developer World 2016 - Big Data ist tot, es lebe Business IntelligenzMarkus Schmidberger
 
Presentation on House Rent Management System
Presentation on House Rent Management SystemPresentation on House Rent Management System
Presentation on House Rent Management SystemRihab Rahman
 
Cut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature pluginsCut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature pluginsGR8Conf
 
Introducing MongoDB in a multi-site HA environment
Introducing MongoDB in a multi-site HA environmentIntroducing MongoDB in a multi-site HA environment
Introducing MongoDB in a multi-site HA environmentSebastian Geib
 
Using PHP with IBM Bluemix
Using PHP with IBM BluemixUsing PHP with IBM Bluemix
Using PHP with IBM Bluemixvvaswani
 
Your Personal Productivity
Your Personal ProductivityYour Personal Productivity
Your Personal Productivitypdpm
 
Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™IBM
 
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...Stefan Richter
 
SAP Training Manual Project Systems .pdf
SAP Training Manual Project Systems .pdfSAP Training Manual Project Systems .pdf
SAP Training Manual Project Systems .pdfDineshChanakya1
 
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...Itai Yaffe
 
Jenkins to Gitlab - Intelligent Build-Pipelines
Jenkins to Gitlab - Intelligent Build-PipelinesJenkins to Gitlab - Intelligent Build-Pipelines
Jenkins to Gitlab - Intelligent Build-PipelinesChristian Münch
 
In-Plant Power Play: Game Changing Strategies for Adding Value
In-Plant Power Play: Game Changing Strategies for Adding ValueIn-Plant Power Play: Game Changing Strategies for Adding Value
In-Plant Power Play: Game Changing Strategies for Adding ValueRochester Software Associates
 
Real-time Manufacturing Management for a Hybrid Process
Real-time Manufacturing Management for a Hybrid ProcessReal-time Manufacturing Management for a Hybrid Process
Real-time Manufacturing Management for a Hybrid Processmichaelthonea
 

Similar to Optimizing an SAP Fiori Application Based on a Real World Example (20)

How to integrate PWA solutions successfully (hosting)
How to integrate PWA solutions successfully (hosting)How to integrate PWA solutions successfully (hosting)
How to integrate PWA solutions successfully (hosting)
 
Enterprise Architecture in Practice: from Datastore to APIs and Apps
Enterprise Architecture in Practice: from Datastore to APIs and AppsEnterprise Architecture in Practice: from Datastore to APIs and Apps
Enterprise Architecture in Practice: from Datastore to APIs and Apps
 
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM Solutions
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM SolutionsRed Hat JBoss BRMS Primer - JBoss Business Rules and BPM Solutions
Red Hat JBoss BRMS Primer - JBoss Business Rules and BPM Solutions
 
Flink meetup
Flink   meetupFlink   meetup
Flink meetup
 
Ahead of the Curve: How 23andMe Improved UX with Performance Edge
Ahead of the Curve: How 23andMe Improved UX with Performance EdgeAhead of the Curve: How 23andMe Improved UX with Performance Edge
Ahead of the Curve: How 23andMe Improved UX with Performance Edge
 
Salesforce Developer Workshop for GDF Suez Hackathon
Salesforce Developer Workshop for GDF Suez HackathonSalesforce Developer Workshop for GDF Suez Hackathon
Salesforce Developer Workshop for GDF Suez Hackathon
 
Heise Developer World 2016 - Big Data ist tot, es lebe Business Intelligenz
Heise Developer World 2016 - Big Data ist tot, es lebe Business IntelligenzHeise Developer World 2016 - Big Data ist tot, es lebe Business Intelligenz
Heise Developer World 2016 - Big Data ist tot, es lebe Business Intelligenz
 
An approach to production scheduling optimization, A Case of an Oil Lubricati...
An approach to production scheduling optimization, A Case of an Oil Lubricati...An approach to production scheduling optimization, A Case of an Oil Lubricati...
An approach to production scheduling optimization, A Case of an Oil Lubricati...
 
Presentation on House Rent Management System
Presentation on House Rent Management SystemPresentation on House Rent Management System
Presentation on House Rent Management System
 
Cut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature pluginsCut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature plugins
 
Introducing MongoDB in a multi-site HA environment
Introducing MongoDB in a multi-site HA environmentIntroducing MongoDB in a multi-site HA environment
Introducing MongoDB in a multi-site HA environment
 
Using PHP with IBM Bluemix
Using PHP with IBM BluemixUsing PHP with IBM Bluemix
Using PHP with IBM Bluemix
 
Your Personal Productivity
Your Personal ProductivityYour Personal Productivity
Your Personal Productivity
 
Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™
 
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...
The 36th Chamber of Shaolin - Improve Your Microservices Kung Fu in 36 Easy S...
 
SAP Training Manual Project Systems .pdf
SAP Training Manual Project Systems .pdfSAP Training Manual Project Systems .pdf
SAP Training Manual Project Systems .pdf
 
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...
From AWS Data Pipeline to Airflow - managing data pipelines in Nielsen Market...
 
Jenkins to Gitlab - Intelligent Build-Pipelines
Jenkins to Gitlab - Intelligent Build-PipelinesJenkins to Gitlab - Intelligent Build-Pipelines
Jenkins to Gitlab - Intelligent Build-Pipelines
 
In-Plant Power Play: Game Changing Strategies for Adding Value
In-Plant Power Play: Game Changing Strategies for Adding ValueIn-Plant Power Play: Game Changing Strategies for Adding Value
In-Plant Power Play: Game Changing Strategies for Adding Value
 
Real-time Manufacturing Management for a Hybrid Process
Real-time Manufacturing Management for a Hybrid ProcessReal-time Manufacturing Management for a Hybrid Process
Real-time Manufacturing Management for a Hybrid Process
 

More from Manuel Blechschmidt

Using XMPP JSONPatch for synchronizing an OpenUI5 Model
Using XMPP JSONPatch for synchronizing an OpenUI5 ModelUsing XMPP JSONPatch for synchronizing an OpenUI5 Model
Using XMPP JSONPatch for synchronizing an OpenUI5 ModelManuel Blechschmidt
 
Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Manuel Blechschmidt
 
Pick up women bigdata - CdE Pfingstakademie 2014
Pick up women bigdata - CdE Pfingstakademie 2014Pick up women bigdata - CdE Pfingstakademie 2014
Pick up women bigdata - CdE Pfingstakademie 2014Manuel Blechschmidt
 
Obtaining Natural Language Descriptions of Process Specifications
Obtaining Natural Language Descriptions of Process SpecificationsObtaining Natural Language Descriptions of Process Specifications
Obtaining Natural Language Descriptions of Process SpecificationsManuel Blechschmidt
 
Building a multi touch input device for NASA world wind
Building a multi touch input device for NASA world windBuilding a multi touch input device for NASA world wind
Building a multi touch input device for NASA world windManuel Blechschmidt
 
An architecture for evaluating recommender systems in real world scenarios
An architecture for evaluating recommender systems in real world scenariosAn architecture for evaluating recommender systems in real world scenarios
An architecture for evaluating recommender systems in real world scenariosManuel Blechschmidt
 
Studienberatung für IT Systems Engineering JGW Papenburg 2008
Studienberatung für IT Systems Engineering JGW Papenburg 2008Studienberatung für IT Systems Engineering JGW Papenburg 2008
Studienberatung für IT Systems Engineering JGW Papenburg 2008Manuel Blechschmidt
 
Qualitätsmanagement für Web- und PHP Applikationen
Qualitätsmanagement für Web- und PHP ApplikationenQualitätsmanagement für Web- und PHP Applikationen
Qualitätsmanagement für Web- und PHP ApplikationenManuel Blechschmidt
 
Collaboratives entwickeln in Bachelorprojekten
Collaboratives entwickeln in BachelorprojektenCollaboratives entwickeln in Bachelorprojekten
Collaboratives entwickeln in BachelorprojektenManuel Blechschmidt
 
Information Technology for Development Countries
Information Technology for Development CountriesInformation Technology for Development Countries
Information Technology for Development CountriesManuel Blechschmidt
 
Zeitmanagement mit Zielen MHN Akademie 2008
Zeitmanagement mit Zielen MHN Akademie 2008Zeitmanagement mit Zielen MHN Akademie 2008
Zeitmanagement mit Zielen MHN Akademie 2008Manuel Blechschmidt
 
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008Manuel Blechschmidt
 

More from Manuel Blechschmidt (15)

Using XMPP JSONPatch for synchronizing an OpenUI5 Model
Using XMPP JSONPatch for synchronizing an OpenUI5 ModelUsing XMPP JSONPatch for synchronizing an OpenUI5 Model
Using XMPP JSONPatch for synchronizing an OpenUI5 Model
 
Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?
 
Pick up women bigdata - CdE Pfingstakademie 2014
Pick up women bigdata - CdE Pfingstakademie 2014Pick up women bigdata - CdE Pfingstakademie 2014
Pick up women bigdata - CdE Pfingstakademie 2014
 
Obtaining Natural Language Descriptions of Process Specifications
Obtaining Natural Language Descriptions of Process SpecificationsObtaining Natural Language Descriptions of Process Specifications
Obtaining Natural Language Descriptions of Process Specifications
 
Building a multi touch input device for NASA world wind
Building a multi touch input device for NASA world windBuilding a multi touch input device for NASA world wind
Building a multi touch input device for NASA world wind
 
An architecture for evaluating recommender systems in real world scenarios
An architecture for evaluating recommender systems in real world scenariosAn architecture for evaluating recommender systems in real world scenarios
An architecture for evaluating recommender systems in real world scenarios
 
Studienberatung für IT Systems Engineering JGW Papenburg 2008
Studienberatung für IT Systems Engineering JGW Papenburg 2008Studienberatung für IT Systems Engineering JGW Papenburg 2008
Studienberatung für IT Systems Engineering JGW Papenburg 2008
 
Qualitätsmanagement für Web- und PHP Applikationen
Qualitätsmanagement für Web- und PHP ApplikationenQualitätsmanagement für Web- und PHP Applikationen
Qualitätsmanagement für Web- und PHP Applikationen
 
Collaboratives entwickeln in Bachelorprojekten
Collaboratives entwickeln in BachelorprojektenCollaboratives entwickeln in Bachelorprojekten
Collaboratives entwickeln in Bachelorprojekten
 
Information Technology for Development Countries
Information Technology for Development CountriesInformation Technology for Development Countries
Information Technology for Development Countries
 
Sub conf 2010
Sub conf 2010Sub conf 2010
Sub conf 2010
 
See through Augmented Reality
See through Augmented RealitySee through Augmented Reality
See through Augmented Reality
 
Zeitmanagement mit Zielen MHN Akademie 2008
Zeitmanagement mit Zielen MHN Akademie 2008Zeitmanagement mit Zielen MHN Akademie 2008
Zeitmanagement mit Zielen MHN Akademie 2008
 
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008
Zeit- und Aufgabenmanagement im Leben Pfingstakademie 2008
 
BPEL Vortrag POIS 2007
BPEL Vortrag POIS 2007BPEL Vortrag POIS 2007
BPEL Vortrag POIS 2007
 

Recently uploaded

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Optimizing an SAP Fiori Application Based on a Real World Example

  • 1. Optimizing an SAP Fiori Application Based on a Real World Example Session ID: DX301 Manuel Blechschmidt, FarmFacts GmbH, SAP Community Network 25. - 29.9.2017 SAP TechEd Las Vegas
  • 2. 23.07.17FarmFacts GmbH, Abteilung, Verfasser Seite 2 Please build the best digital farming platform on earth
  • 5. OpenUI5 Client & Openlayers 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 5
  • 6. Development cycle In the first year we did this weekly 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 6 Develop Release Analyze Feedback
  • 7. After one and a half year Your application is awesome but it is so slow 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 7
  • 8. We started performance optimization 1. Define performance goals from the customer perspective 2. Measure performance goals in different set ups 3. Tweak as long as the performance goals are not met Rule of thumb doubling performance means 10% - 30% more effort. Sometimes you have to be 8 times faster which means 3*10% - 30% ~ 60% more development effort 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 8
  • 10. Standard techniques for performance improvement UI5 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 10 – Use Chrome – Reduce amount of HTTP requests ▪ Bundle controllers, controls and view as Component-preload.js ▪ Use batch for ODataModel ▪ Use client mode for ODataModel binding ▪ Use OpenUI5 from a CDN and hope it is already cached – Reduce size of HTTP requests ▪ Compress HTTP requests ▪ Use HTTP2 – Parallize HTTP requests ▪ Use sap.ui.define (AMD) syntax
  • 11. Advanced techniques 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 11 – Optimize rendering by disabling invalidation and updating DOM – Using virtual lists by just rendering the elements shown in the viewpost – Using canvas for rendering objects (openlayers) – Use webpack to only bundle the JavaScript that is needed – Use new Chrome Developer Tools to find the code that is really executed (coverage) – Use new support assistent to analyze runtime behavior – Send samples of live application to monitoring database
  • 12. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 12 Connection Regular 3G Regular 3G Regular 3G Regular 3G Regular 3G Regular 3G No throtteling Debug Sources X O O O O O O No Cache X X O O O O O No async X X X O O O O No Compoent- preload.js X X X X O O O No Server Compression X X X X X O O Load Time (s) 87,5 40,5 1,8 1,5 1,1 0,7 0,64 0,1 1 10 100 0 1 2 3 4 5 6 7 8 Load Time (s)
  • 13. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 13
  • 14. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 14
  • 15. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 15
  • 16. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 16
  • 17. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 17
  • 18. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 18
  • 19. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 19
  • 20. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 20
  • 21. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 21
  • 22. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 22
  • 23. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 23
  • 24. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 24
  • 25. Standard Techniques Case Study 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 25
  • 26. Advanced techniques, Disable invalidation 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 26
  • 27. Advanced techniques, only render visible area 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 27
  • 28. Advanced techniques, OpenUI5 support assistant 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 28
  • 29. Advanced techniques, OpenUI5 support assistant 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 29
  • 31. Source, image credits. Sources  https://openui5nightly.hana.ondemand.com/  https://developer.chrome.com/devtools Slide 2 men in black by radacina https://openclipart.org/detail/20605/men-in-black Slide 9 blueprint github project https://github.com/ManuelB/blueprint 23.07.17FarmFacts GmbH, Manuel Blechschmidt Seite 31
  • 32. Feedback Please complete a session evaluation for this session DX301!