SlideShare une entreprise Scribd logo
1  sur  22
© cbs Corporate Business Solutions
Lessons Learned from
SAP UI5 Implementations
Denny Schreber Katrin Grohme
© cbs Corporate Business Solutions March 15, 2016
Agenda
• Introduction
• Starting the UI5 project
• Pitfalls during UI5 development
• UI5 Framework extensions
• Outlook & Wrap-up
© cbs Corporate Business Solutions 3March 15, 2016
Overview
Introduction
• After various projects in different size and complexity we want to
present and discuss our challenges we had while designing and
developing with UI5
› Approach how we tackle projects
› Designing your screens with standard controls vs. custom controls
› Facing integration challenges with different backend systems
› Difficulties in the development phase
• Give an outlook into areas where we hope that UI5 advances in
upcoming releases
© cbs Corporate Business Solutions 4March 15, 2016
UI5 projects
Introduction
• Worked with UI5 as UI technology since 2013
› First UI5-based app went live with v1.12
› Lots of improvements since then
• Projects based on SAPUI5 libraries
› One openUI5 project because of licensing
• We try to be full stack developer instead of distinguishing between
Frontend / Backend Developer
• From either ABAP or Java-based software development background
Source: SAP
© cbs Corporate Business Solutions March 15, 2016
Agenda
• Introduction
• Starting the UI5 project
• Pitfalls during UI5 development
• UI5 Framework extensions
• Outlook & Wrap-up
© cbs Corporate Business Solutions 6March 15, 2016
Achieve a Great UX leveraging UI5
Starting the UI5 project
• Users describe great apps as:
› Simple, easy to use, consistent, supportive, …
• Various approaches exist
› SAP gives lots of advice how to achieve a great user experience
› Fiori Design Principles: Available under http://experience.sap.com/fiori-design/
• Early user involvement is key
› Try to gain early feedback from key user and – if possible – larger user groups
• Designer needs to be aligned
with developers
Source: SAP
© cbs Corporate Business Solutions 7March 15, 2016
UI First Approach
Starting the UI5 project
• Start building UI prototypes prior to API or back-end logic
• Target user groups get identified early in the project
• Results of UI prototyping can be the basis for the Fiori app
• Detailed functional specification and first technical specification are
results of this phase
• Why UI First in SAP landscapes?
› Projects require fit-to-purpose solutions
as opposed to, e.g., standard software
› Functionality already exists (at least partially)
in SAP systems
› The end user is what matters most in
Fiori projects
Source: SAP
UI First
© cbs Corporate Business Solutions 8March 15, 2016
Starting Point: Mobile Approvals
Starting the UI5 project
• UI5 offers the possibility to be used on
mobile devices
› responsive design
› Optimized for touch-based input devices
• Approvals are often seen as a
necessary pain by approvers
• Mobile access adds possibility to do
approvals while on the move
• Limit the number of required steps to
achieve approval
Source: SAP
© cbs Corporate Business Solutions March 15, 2016
Agenda
• Introduction
• Starting the UI5 project
• Pitfalls during UI5 development
• UI5 Framework extensions
• Outlook & Wrap-up
© cbs Corporate Business Solutions 10March 15, 2016
Project Reality
Pitfalls during UI5 development
• Decision for enhancement model not always straightforward
› Extending Fiori app with new project that replaces parts of the original app
• Upgrades do not always work seamlessly
› Copy original project as basis for new development
• Increased effort when upgrading standard apps
• Decision for control library
› Mobile controls – GoTo library
› Desktop controls – provide good alternatives for complex data entry
handling
© cbs Corporate Business Solutions 11March 15, 2016
Connecting the backend
Pitfalls during UI5 development
• In UI5 development lots of time is spent formulating OData expressions
• SAP Gateway for ABAP-based systems
› Stable in most of the cases and easy-to-develop
› When you’re stuck: Don’t look into the OData specifications but SAP Note 1574568
• SAPUI5 screens on BPM using the screen generator functionality (Java)
› Odata services are generated
› Generated screens still require effort to pimp them up
• HANA XS Engine
• Development only in Eclipse (Luna), WebIDE not possible
• Synchronization errors from within Eclipse and HANA XS engine
• OData Provisioning Channel on HCI
› Not released yet
© cbs Corporate Business Solutions 12March 15, 2016
HANA XS Engine
Pitfalls during UI5 development
© cbs Corporate Business Solutions 13March 15, 2016
JavaScript peculiarities
Pitfalls during UI5 development
• Functional programming in dynamically typed JavaScript
› Playing around with a pure functional programming language helps
• Handling callback hell
› Makes debugging hard, be careful to organize your code
› jQuery proxy function  Learned at UI5con that promises are better!
• Transferring state
• Better readability of source code
› Aligning results of several AJAX calls vs. $Batch
• Recursions with time-based exit criteria
• Handling of large code sections
› JavaScript makes finding errors hard
› jQuery module declarations to separate code blocks
© cbs Corporate Business Solutions 14March 15, 2016
Further Pitfalls
Pitfalls during UI5 development
• Firefox with Developer Tools and VIZ chart library are no friends -> use Chrome
• To make the look’n’feel consistent browser version still play a role and might add effort
• Mouse-Over Pop-ups are not working on mobile devices
› Spent lots of effort to extend the standard controls with touch events
• Not double-checked in latest versions
© cbs Corporate Business Solutions March 15, 2016
Agenda
• Introduction
• Starting the UI5 project
• Pitfalls during UI5 development
• UI5 Framework extensions
• Outlook & Wrap-up
© cbs Corporate Business Solutions 16March 15, 2016
Custom Controls & Third Party libraries
UI5 Framework extensions
• Requirements might exceed framework capabilities
› More than hiding and adding fields
› Custom controls sometimes required
• Extending existing controls
• Create Custom Controls
• Integration of 3rd Party libraries
› Not always consistent with SAPUI5 look’n’feel
› Sometimes lots of work to get this working
© cbs Corporate Business Solutions 17March 15, 2016
Examples
UI5 Framework extensions
Internet
Explorer
Firefox
Chrome
© cbs Corporate Business Solutions 18March 15, 2016
Examples (cont.)
UI5 Framework extensions
• Custom Controls “in the wild”
• GitHub
› https://gist.github.com/dennisseah
• openUI5?
Signature Pad Control
(https://gist.github.com/dennisseah/c4d0ee8100d07ecd8015)
© cbs Corporate Business Solutions March 15, 2016
Agenda
• Introduction
• Starting the UI5 project
• Pitfalls during UI5 development
• UI5 Framework extensions
• Outlook & Wrap-up
© cbs Corporate Business Solutions 20March 15, 2016
Outlook
Outlook & Wrap-up
• Developing with UI5 is fun
• Lots of improvements already delivered with the latest versions
But some areas still can be improved / simplified (our wish list):
• Reduce Complexity (Routing, Apps patterns, development time)
• Improvements in the area of handling state in the apps
• Offline capabilities of Web Apps
• More controls… pushing the web browser to its limits
© cbs Corporate Business Solutions 21March 15, 2016
Wrap-up
Outlook & Wrap-up
• From our project experience end user really like what they get with UI5-based apps
• SAPUI5 is not the new “silver-bullet” of UI technologies
• SAPUI5 requires different approaches compared to server-based UI technologies
• Projects are about business problems getting solved, but don’t forget the people that
should be able to solve the problem effectively
• Web best practices from web companies such as Google should be applied in your
projects
© cbs Corporate Business Solutions
cbs Corporate Business Solutions
Unternehmensberatung GmbH
The Materna Group Management Consultancy
Headquarters Heidelberg
Im Breitspiel 19 · 69126 Heidelberg · Germany
P +49 6221 3304 0 · F +49 6221 3304 200
contact@cbs-consulting.de
www.cbs-consulting.com
Contact
March 15, 2016
Denny Schreber
Senior Solution Architect
denny.schreber@cbs-consulting.de
Katrin Grohme
Senior Solution Developer
katrin.grohme@cbs-consulting.de

Contenu connexe

En vedette

Neha_Thapa_Resume
Neha_Thapa_ResumeNeha_Thapa_Resume
Neha_Thapa_Resume
Neha Thapa
 

En vedette (11)

CV of Rachit
CV of RachitCV of Rachit
CV of Rachit
 
Analytics & Fiori with the Analysis Path Framework
Analytics & Fiori with the Analysis Path FrameworkAnalytics & Fiori with the Analysis Path Framework
Analytics & Fiori with the Analysis Path Framework
 
UI5con - The OpenUI5 Spirit
UI5con - The OpenUI5 SpiritUI5con - The OpenUI5 Spirit
UI5con - The OpenUI5 Spirit
 
Neha_Thapa_Resume
Neha_Thapa_ResumeNeha_Thapa_Resume
Neha_Thapa_Resume
 
SAP_UI5_oData_ABAP_Murugesan_Perumal
SAP_UI5_oData_ABAP_Murugesan_PerumalSAP_UI5_oData_ABAP_Murugesan_Perumal
SAP_UI5_oData_ABAP_Murugesan_Perumal
 
SAP TechEd 2016 when_to_use_fiori_or_sap_screen_personas
SAP TechEd 2016 when_to_use_fiori_or_sap_screen_personasSAP TechEd 2016 when_to_use_fiori_or_sap_screen_personas
SAP TechEd 2016 when_to_use_fiori_or_sap_screen_personas
 
Codigo contencioso administrativo
Codigo contencioso administrativoCodigo contencioso administrativo
Codigo contencioso administrativo
 
2016年10月13日「ONA16」参加報告会
2016年10月13日「ONA16」参加報告会2016年10月13日「ONA16」参加報告会
2016年10月13日「ONA16」参加報告会
 
Venezuela
VenezuelaVenezuela
Venezuela
 
Trabajo Personal
Trabajo PersonalTrabajo Personal
Trabajo Personal
 
Informática e educação
Informática e educação Informática e educação
Informática e educação
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

UI5con Lessons Learned from SAP UI5 Implementations

  • 1. © cbs Corporate Business Solutions Lessons Learned from SAP UI5 Implementations Denny Schreber Katrin Grohme
  • 2. © cbs Corporate Business Solutions March 15, 2016 Agenda • Introduction • Starting the UI5 project • Pitfalls during UI5 development • UI5 Framework extensions • Outlook & Wrap-up
  • 3. © cbs Corporate Business Solutions 3March 15, 2016 Overview Introduction • After various projects in different size and complexity we want to present and discuss our challenges we had while designing and developing with UI5 › Approach how we tackle projects › Designing your screens with standard controls vs. custom controls › Facing integration challenges with different backend systems › Difficulties in the development phase • Give an outlook into areas where we hope that UI5 advances in upcoming releases
  • 4. © cbs Corporate Business Solutions 4March 15, 2016 UI5 projects Introduction • Worked with UI5 as UI technology since 2013 › First UI5-based app went live with v1.12 › Lots of improvements since then • Projects based on SAPUI5 libraries › One openUI5 project because of licensing • We try to be full stack developer instead of distinguishing between Frontend / Backend Developer • From either ABAP or Java-based software development background Source: SAP
  • 5. © cbs Corporate Business Solutions March 15, 2016 Agenda • Introduction • Starting the UI5 project • Pitfalls during UI5 development • UI5 Framework extensions • Outlook & Wrap-up
  • 6. © cbs Corporate Business Solutions 6March 15, 2016 Achieve a Great UX leveraging UI5 Starting the UI5 project • Users describe great apps as: › Simple, easy to use, consistent, supportive, … • Various approaches exist › SAP gives lots of advice how to achieve a great user experience › Fiori Design Principles: Available under http://experience.sap.com/fiori-design/ • Early user involvement is key › Try to gain early feedback from key user and – if possible – larger user groups • Designer needs to be aligned with developers Source: SAP
  • 7. © cbs Corporate Business Solutions 7March 15, 2016 UI First Approach Starting the UI5 project • Start building UI prototypes prior to API or back-end logic • Target user groups get identified early in the project • Results of UI prototyping can be the basis for the Fiori app • Detailed functional specification and first technical specification are results of this phase • Why UI First in SAP landscapes? › Projects require fit-to-purpose solutions as opposed to, e.g., standard software › Functionality already exists (at least partially) in SAP systems › The end user is what matters most in Fiori projects Source: SAP UI First
  • 8. © cbs Corporate Business Solutions 8March 15, 2016 Starting Point: Mobile Approvals Starting the UI5 project • UI5 offers the possibility to be used on mobile devices › responsive design › Optimized for touch-based input devices • Approvals are often seen as a necessary pain by approvers • Mobile access adds possibility to do approvals while on the move • Limit the number of required steps to achieve approval Source: SAP
  • 9. © cbs Corporate Business Solutions March 15, 2016 Agenda • Introduction • Starting the UI5 project • Pitfalls during UI5 development • UI5 Framework extensions • Outlook & Wrap-up
  • 10. © cbs Corporate Business Solutions 10March 15, 2016 Project Reality Pitfalls during UI5 development • Decision for enhancement model not always straightforward › Extending Fiori app with new project that replaces parts of the original app • Upgrades do not always work seamlessly › Copy original project as basis for new development • Increased effort when upgrading standard apps • Decision for control library › Mobile controls – GoTo library › Desktop controls – provide good alternatives for complex data entry handling
  • 11. © cbs Corporate Business Solutions 11March 15, 2016 Connecting the backend Pitfalls during UI5 development • In UI5 development lots of time is spent formulating OData expressions • SAP Gateway for ABAP-based systems › Stable in most of the cases and easy-to-develop › When you’re stuck: Don’t look into the OData specifications but SAP Note 1574568 • SAPUI5 screens on BPM using the screen generator functionality (Java) › Odata services are generated › Generated screens still require effort to pimp them up • HANA XS Engine • Development only in Eclipse (Luna), WebIDE not possible • Synchronization errors from within Eclipse and HANA XS engine • OData Provisioning Channel on HCI › Not released yet
  • 12. © cbs Corporate Business Solutions 12March 15, 2016 HANA XS Engine Pitfalls during UI5 development
  • 13. © cbs Corporate Business Solutions 13March 15, 2016 JavaScript peculiarities Pitfalls during UI5 development • Functional programming in dynamically typed JavaScript › Playing around with a pure functional programming language helps • Handling callback hell › Makes debugging hard, be careful to organize your code › jQuery proxy function  Learned at UI5con that promises are better! • Transferring state • Better readability of source code › Aligning results of several AJAX calls vs. $Batch • Recursions with time-based exit criteria • Handling of large code sections › JavaScript makes finding errors hard › jQuery module declarations to separate code blocks
  • 14. © cbs Corporate Business Solutions 14March 15, 2016 Further Pitfalls Pitfalls during UI5 development • Firefox with Developer Tools and VIZ chart library are no friends -> use Chrome • To make the look’n’feel consistent browser version still play a role and might add effort • Mouse-Over Pop-ups are not working on mobile devices › Spent lots of effort to extend the standard controls with touch events • Not double-checked in latest versions
  • 15. © cbs Corporate Business Solutions March 15, 2016 Agenda • Introduction • Starting the UI5 project • Pitfalls during UI5 development • UI5 Framework extensions • Outlook & Wrap-up
  • 16. © cbs Corporate Business Solutions 16March 15, 2016 Custom Controls & Third Party libraries UI5 Framework extensions • Requirements might exceed framework capabilities › More than hiding and adding fields › Custom controls sometimes required • Extending existing controls • Create Custom Controls • Integration of 3rd Party libraries › Not always consistent with SAPUI5 look’n’feel › Sometimes lots of work to get this working
  • 17. © cbs Corporate Business Solutions 17March 15, 2016 Examples UI5 Framework extensions Internet Explorer Firefox Chrome
  • 18. © cbs Corporate Business Solutions 18March 15, 2016 Examples (cont.) UI5 Framework extensions • Custom Controls “in the wild” • GitHub › https://gist.github.com/dennisseah • openUI5? Signature Pad Control (https://gist.github.com/dennisseah/c4d0ee8100d07ecd8015)
  • 19. © cbs Corporate Business Solutions March 15, 2016 Agenda • Introduction • Starting the UI5 project • Pitfalls during UI5 development • UI5 Framework extensions • Outlook & Wrap-up
  • 20. © cbs Corporate Business Solutions 20March 15, 2016 Outlook Outlook & Wrap-up • Developing with UI5 is fun • Lots of improvements already delivered with the latest versions But some areas still can be improved / simplified (our wish list): • Reduce Complexity (Routing, Apps patterns, development time) • Improvements in the area of handling state in the apps • Offline capabilities of Web Apps • More controls… pushing the web browser to its limits
  • 21. © cbs Corporate Business Solutions 21March 15, 2016 Wrap-up Outlook & Wrap-up • From our project experience end user really like what they get with UI5-based apps • SAPUI5 is not the new “silver-bullet” of UI technologies • SAPUI5 requires different approaches compared to server-based UI technologies • Projects are about business problems getting solved, but don’t forget the people that should be able to solve the problem effectively • Web best practices from web companies such as Google should be applied in your projects
  • 22. © cbs Corporate Business Solutions cbs Corporate Business Solutions Unternehmensberatung GmbH The Materna Group Management Consultancy Headquarters Heidelberg Im Breitspiel 19 · 69126 Heidelberg · Germany P +49 6221 3304 0 · F +49 6221 3304 200 contact@cbs-consulting.de www.cbs-consulting.com Contact March 15, 2016 Denny Schreber Senior Solution Architect denny.schreber@cbs-consulting.de Katrin Grohme Senior Solution Developer katrin.grohme@cbs-consulting.de