Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Deploying SAP Fiori at Scale

Sascha Wenninger
September 25, 2019

Deploying SAP Fiori at Scale

A greenfield implementation of SAP S/4HANA for one of SAP’s long-time customers demanded a modern, user-experience-centric (UX) approach based on SAP Fiori UX. Yet deploying around 1,300 apps to users in more than 50 countries proved quite a challenge. Join this session for a full-stack view of our solution to this challenge, covering hosting infrastructure, network optimisation, personalisation of SAP Fiori Launchpad, custom app development, and related topics.

Presented at SAP TechEd 2019 in Las Vegas.

Sascha Wenninger

September 25, 2019

More Decks by Sascha Wenninger

Other Decks in Technology


  1. Public Deploying Fiori at Scale UX212 Sascha Wenninger Tech Lead,

    4S Program Orica http://slides.sufw.me/ux212
  2. Public

  3. Public A Global Supply Chain 3

  4. Public A Global Workforce 4 11,500 people 57 countries

  5. Public 8 End-to-End Business Processes Business plan to reporting Market

    intelligence to order to cash Issue to resolution Source to purchase to pay Plan to inventory Project inception asset acquire to retire to project closure Recruit to hire to terminate Master data management Business budgeting, forecasting, month end, half year and full year reporting. Opportunities, bid management, sales contracts & orders, shipments, billing & accounts receivables. Complaints management. I.e., returns, credit notes. Sourcing, purchase contracts and orders, goods receipt, accounts payable. Sales and operations planning, distribution requirement planning, material requirement planning, discrete/continuous manufacturing, goods receipt in stock. Project approvals process, asset acquisition & maintenance, integration to fixed-assets, asset obsolesce & project closure. Recruitment, on boarding, succession planning, performance review, payroll, mobility, off boarding and organisational structure. Create / change / delete master data (i.e. customers, vendors, SKU’s) and enterprise structure, (i.e., company codes, plants, storage locations). 1. 2. 3. 4. 5. 6. 7. 8.
  6. Public Architecture

  7. Public 7

  8. Public Business Vision One System Consistent processes globally Quality Master

    Data Controlled IT system risks Predictability Visibility One way of working
  9. Public Technology Vision Anywhere, Any Device Productivity

  10. Public

  11. Public

  12. Public

  13. Public Architecture

  14. Public Azure Our Architecture S/4HANA 1809 Business Suite (PY) Business

    Suite (GTS, EM) HANA 2.0 HANA 2.0 Front-End Server Web Dispatcher
  15. Public Azure …if we were doing it again… S/4HANA 1809

    Business Suite (PY) Business Suite (GTS, EM) HANA 2.0 HANA 2.0 Front-End Server Web Dispatcher
  16. Public Landscape Design Highly customer-specific! • Greenfield or Brownfield? •

    How many systems? How many S/4HANA? • SaaS footprint? • Scalability? Take the time to plan this! Also see SAP Fiori Deployment Options and System Landscape Recommendations
  17. Public Location

  18. Public Choosing a Location Availability of SaaS apps IaaS feature

    availability Legal & Privacy Network connectivity Costs
  19. Public Network Bandwidth Source: https://global-internet-map-2018.telegeography.com

  20. Public IaaS Cost Source: https://azureprice.net/Region

  21. Public HTTP/2

  22. Public What is it? New version of HTTP, feat: •

    Binary transfer • Multiplexing • Header Compression • Encryption
  23. Public Multiplexing With HTTP/1.1, browsers open 4-8 TCP connections per

    origin For each connection: • TCP Handshake (2 Round-Trips) • TLS Handshake (2+ Round Trips) • TCP Slow Start HTTP/2 Multiplexing avoids this! 1 TCP Connection for everything
  24. Public Basic Setup Requires kernel >= 7.49 WebDispatcher and ICM

    support this SSL mandatory! 2 Steps: 1. icm/HTTP/support_http2=true 2. Restart ICM More info: Nick Yang’s blog post SAP Web Dispatcher ABAP System Java System ICM HANA DB HANA DB HTTP/2 HTTP/1.1 ICM
  25. Public Advanced Setup Requires kernel >= 7.49 WebDispatcher and ICM

    support this SSL mandatory! 3 Steps: 1. icm/HTTP/support_http2=true 2. wdisp/support_http2_to_backend=true 3. Restart ICM More info: Nick Yang’s blog post SAP Web Dispatcher ABAP System Java System ICM HANA DB HANA DB HTTP/2 HTTP/2 ICM
  26. Public Performance Gains 0 1 2 3 4 5 0

    2 4 6 8 10 12 14 16 18 20 22 24 Frequency Load Time (n=10) Fiori Launchpad: Load time -20% 18s 14s
  27. Public SAPUI5 CDN

  28. Public +

  29. Public Akamai Edge locations Source: Akamai

  30. Public

  31. Public SAPUI5 CDN Read more: Blog post by Jorge Baltazar,

    or Note 2526542 Map credit: $200inaire ~20ms
  32. Public Will it Help? Often A Good Idea, but depends

    on network topology • Where are your users? Is Akamai really “closer”? • Do you have Riverbed WAN Acceleration? • Is your internet link congested? • Is your proxy slow? • Individual results will vary
  33. Public Our Experience with Fiori Launchpad HTTP Requests 2.6 MB

    550 kB HTTP Requests 39 37 SAP Front-End Server SAPUI5 CDN
  34. Public 0 1 2 3 4 5 0 2 4

    6 8 10 12 14 16 18 20 22 24 Frequency Load Time (n=10) Fiori Launchpad: Load time Performance Gains -20% 18s 14s -20% 11s
  35. Public Riverbed WAN Optimisation

  36. Public How it Works Azure Office

  37. Public One Week’s Traffic

  38. Public One Week’s Traffic

  39. Public One Week’s Traffic Reduces “base load” on the network!

  40. Public Access from Anywhere

  41. Public 0 50 100 150 200 5 10 15 20

    25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 More Workers on Site Access from Anywhere 3,500+ Workers at Customer Sites 400+ Customer Sites “Access SAP from any Computer”
  42. Public

  43. Public Azure Application Proxy Azure App Proxy Connector https://docs.microsoft.com/en-us/azure/active-directory/manage-apps/application-proxy

  44. Public Azure Application Proxy • Managed by Azure • Single

    Sign-On with MFA • Pre-authentication • WAF features • Scalable • Secure • Cheap
  45. Public Software Currency

  46. Public Software Currency Keep up to date! Update your Front-End

    Server! –Performance improvements (e.g. FES 5.0) –Features (e.g. in-place GUI for HTML) Beware of version dependencies: Note 2618605 –usually some updates needed in all systems Beware of custom themes and dependencies with UI5 library
  47. Public Software Currency Stateful Application Container for SAP GUI Improves

    performance for launching GUI for HTML and Web Dynpro Refer to Jocelyn Dart’s blog post on how to set this up Launchpad Generation Upgrading to FES 5.0 reduced load time by ~30%! 11s -25% 8s
  48. Public Google Analytics

  49. Public Visibility Read more: Blog post by Nathan Ingram

  50. Public Our Scope

  51. Public 1,287 Fiori Tiles 432 UI5 apps 54custom

  52. Public Prepare for the Effort

  53. Public Activating standard apps SAP-delivered Roles often don’t align to

    company processes Installation via Rapid Content Activation is not perfect… (though much improved since 1610/1709) Troubleshooting takes effort! Discover Activate Troubleshoot Evaluate 3.5 Apps/person/day 160+ SAP Incidents
  54. Public Team Structure 4 Basis consultants Close collaboration with Security

    Once activated, it’s all about Security! Technology Development Basis Fiori Security
  55. Public

  56. Public

  57. Public

  58. Public Design Thinking

  59. Public But… “Big Bang” Go-Live ~545 Jobs (personas) 57 countries

  60. Public Business Process Management

  61. Public Top-Down Decomposition E2E Model Process Model Process Step Value

    Chain Diagrams
  62. Public E2E Model Process Model Process Step Value Chain Diagrams

    Top-Down Decomposition Generated by SolMan from lower-level models
  63. Public E2E Model Process Model Process Step Value Chain Diagrams

    Top-Down Decomposition
  64. Public Value Chain Diagrams Top-Down Decomposition E2E Model Process Model

    Process Step
  65. Public Each Process Step has Executables Links to Fiori App

    ID, Semantic Object
  66. Public E2E Model Process Model Process Step Value Chain Diagrams

    8 x 28 x 153 x 567 x 6,728 x BPM Library
  67. Public Job-Role Mapping Person Job Swimlane Role Fiori App

  68. Public FLP & Security Process Models + Org Structure Authorisations

    + Fiori Launchpad content = Person Job Role
  69. Public Target Design (This is dummy data from the dev

  70. Public Target Design Tabs represent “Level 2 Processes” Sorted alphabetically

  71. Public Target Design (This is dummy data from the dev

    system!) KPI Tiles always at the beginning
  72. Public Target Design Transactional Apps sorted alphabetically

  73. Public Target Design Display-only Apps as Links to save space

  74. Public Target Design Target Mapping ~545 jobs Fiori Group ~28

    groups Fiori Catalog ~28 catalogs • Catalog contains all tiles available for the user to choose from, accessible from App Finder • One Catalog for each Level 2 process defined in BPM • Fiori Group contains Tiles displayed on first logon. • Rules-based organisation (KPI tiles first, alphabetically sorted, Display-only apps as Links) • Target mapping controls which Tiles will be shown/hidden based on Swimlane Roles, which are grouped to form Job Roles.
  75. Public

  76. Public

  77. Public Iterate and refine: Find logical groups Separate into new

  78. Public Use the App Finder Reduces clutter on the Launchpad

    Lets people discover less-frequently-used apps Encourage users to personalize!
  79. Public Sample Launchpad Default Fiori Launchpad for Senior Manager, Logistics

  80. Public Stay Standard We chose Belize Light + Orica logo

    Consistent with SuccessFactors, Cloud for Customer Minimises upgrade effort Fiori 3 will bring further UI alignment. Eventually…
  81. Public Engage SAP MaxAttention Innovation Control Centre Regional Implementation Group

    (RIG) Customer Engagement Initiatives SAP Community Network …
  82. Public

  83. Public Effort & Time! Deploying Fiori needs both. Needed from

    Design to UAT and hypercare. A dedicated team is best. Skills: Basis, Security, Empathy, Patience
  84. Public Pain Point: Sorting • Must be done manually in

    Launchpad Designer! • Slow for large Groups (>1 minute to move a tile!) • There is no Excel upload/download or bulk maintenance Next time, we’ll build some custom code!
  85. Public Pain Point: Smart Business Tiles • Cannot be controlled

    using Target Mapping • Always shown even no authorization to data! • Must use personalization to hide Next time, we’d probably put these into a separate Fiori Group Refer SAP Note 2644149
  86. Public Fiori Launchpad Content Manager

  87. Public Fiori Launchpad Content Manager Released in July 2019 Requires

    SP upgrade of SAP_UI 7.52 or later Learn more at TechEd: UX361 – SAP Fiori Rapid Activation and Content Configuration (2h Hands-on) LT114 – Implement SAP Fiori Efficiently Out of the Box for SAP S/4HANA UX201 – Paving the Way to SAP Fiori with Basic Considerations and Implementation UX203 – All You Need to Know About SAP Fiori Launchpad
  88. Public Pain Point: SolMan Process Modelling SolMan’s Executable Library is

    keyed by Semantic Object + Action. Apps cannot be added to the library automatically! Several Fiori apps have identical key values! Difficult to determine correct App for Job or Role…
  89. Public Pain Point: User Experience of Old Apps Not all

    Fiori apps are beautiful Some require user to remember codes and IDs between apps. Many don’t implement navigation Newer apps generally much better: filtering, type-ahead, app-to-app navigation, etc. Still many inconsistencies (e.g. User Defaults in Me Area)
  90. Public Pain Point: Personalization User friendly but challenging to maintain.

    Some changes can corrupt personalization data for some users. To fix, reset personalization. Complicates consistent look & feel across people with same Job.
  91. Public Lessons Learnt Prepare & Plan Create a Factory Combine

    Security & Fiori teams Build your own tools Keep systems up to date Engage SAP It’s not easy!
  92. Public Technology Lead, 4S Program sascha.wenninger@orica.com +65 8799 1446 @sufw

  93. Public Some Links • SCN Fiori Wiki – great central

    place for all things Fiori – Fiori on S/4HANA – specific for S/4HANA – Fiori Elements – more and more relevant as Fiori Elements matures • SAP Fiori Deployment Options and System Landscape Recommendations • Nick Yang’s blog post on enabling http/2 • Configuring SAPUI5 CDN, by Jorge Baltazar • Calling GUI and Web Dynpro apps without opening new tab, by Jocelyn Dart • SAP Fiori Launchpad Content Manager Keep monitoring Customer Influence!