Skip to Content
Technical Articles
Author's profile photo Adam Cody

SAP Fiori Peak Performance – Introduction & Top 10 Ways to Prevent Performance Issues

Why should you read this?

Do you feel the need to gain a deeper insight into the topic of SAP Fiori performance and are confused where to start? There are countless sources of information out there and they each cover a different aspect of the overall picture; in this series we would like the give you a clear end to end understanding of performance issues that we have seen over the years. We have seen many customers who implement SAP Fiori run into easily avoidable performance issues.  Since performance is an important part of usability, poor performance damages their business users’ first impressions of SAP Fiori. This slows adoption of new innovations and the overall UX journey. Many others do implement but then run into easily avoidable performance issues and the business user is soured as to their overall impression of the new SAP UX in SAP S/4HANA.

Our aim is to provide you with a series of blogs which will initially lay out the stage with a disaster implementation and then slowly identify the specific causes through our tracing methods and then solve all the issues. You will see some of the measurements we have taken directly from an SAP S/4HANA trial system to illustrate the impacts of the different recommendations. Some of this content has been covered in other blogs but our aim is to show you how a poorly tuned system looks when compared to one with all best practices enabled. More blogs will follow later in this series where we will go into more depth on the tracing tools and techniques, along with looking at individual app performance. We are more than happy to hear your suggestions for additional blog ideas as well, please let us know if there is anything specific you would like to see in the comments!

We hope you enjoy the journey!What%20we%20hope%20your%20SAP%20Fiori%20implementation%20will%20look%20like%20and%20feel%20for%20your%20business%20users%20at%20the%20end%20of%20this%20blog%20series

What we hope your SAP Fiori implementation will look like and feel for your business users at the end of this blog series

Who are we?

Adam Cody – Premium Hub – Center of Expertise (CoE) Business Process Senior Consultant

A member of SAP CoE (Center of Expertise) Ireland I have seen all sorts of SAP Fiori implementations through the past 9 years and would like to share their lessons learned with you.  Time and time again, I see SAP Fiori projects start out full of hope and optimism and then ultimately struggle with performance issues that could have been easily avoided.

Typical%20implementation%20state%20after%20an%20SAP%20Fiori%20project%20is%20attempted%20and%20failed%20%u2013%20classic%20car%20%28SAP%20GUI%29%20with%20new%20paint

Typical implementation state after an SAP Fiori project is attempted and failed – classic car (SAP GUI) with new paint

The purpose of this series of blogs is to help you not only avoid this outcome, but to also thrive with your SAP Fiori implementation. 

Sean Walsh – Premium Hub – Center of Expertise (CoE) Business Process Principal Consultant

As part of SAP CoE working with SAP Fiori UX topics for the past 9+ years, I have been able to work with many SAP customers from the biggest to the smallest in all corners of the globe. Where I have seen many customers often get their implementation of SAP Fiori with SAP S/4HANA wrong, I have also supported and safeguarded SAP customers who have some of the largest implementations of SAP Fiori to date.

IMPORTANT: These recommendations apply to SAP S/4HANA 2021 – but are recommended for lower releases as well.  The examples shown are for SAP S/4HANA 2021.

What are we going to be covering?

Over the years we have observed a list of common performance issues encountered by our customers ranging from issues with their setup and configuration to larger project issues where they had failed to correctly outline the limitations of SAP Fiori UX to their business users resulting in performance issues and widespread disappointment.

In this series of blogs, we would like to bring you through the details of how we can setup for success and prevent and diagnose performance issues with SAP Fiori. For starters we have listed the top 10 ways we have observed that can be used to prevent performance issues with SAP Fiori:

  1. SAP Fiori Launchpad Design
  2. SAP Enterprise Search Setup
  3. SAP Embedded Analytics Setup
  4. SAP Fiori Launchpad Configuration
  5. Classic UI Technologies
  6. SAP Gateway housekeeping and Cache Management
  7. Client Options & Understanding Latency
  8. Custom Code
  9. Sizing and hardware
  10. Patching & known notes, General Best Practices

In this blog we will go through each of the above topics, not with the intention of providing you with the ways in which we can solve the issues but more to raise an understanding of what can occur if you ignore or underestimate these aspects of your SAP Fiori performance. The intention of subsequent blogs in the series is to look at each of the aspects in a great amount of detail and understand what the tracing tools are to identify the issue and then what we would recommend in terms of solving the issues.

1: SAP Fiori Launchpad Design

SAP Fiori Launchpad design is oftentimes the most underestimated aspect of many of our customer implementations. Unfortunately we see time and again that our customers overload their business users with masses of tiles and features and as also described in more detail in a prior blog (Design Thinking and SAP Fiori Launchpad Homepage Design) written on this topic, The default design is somewhat like what you see here:

Overwhelming%20and%20likely%20poorly%20performing%20default%20design

Overwhelming and likely poorly performing default design

The above would be the first impression that a business user gets for your SAP S/4HANA implementation and obviously first impressions do matter, so stop to ask yourself does this look like a good design? Coming from the old world of technologies, does the above look good as a first impression of the new system? Does this look like it will perform well? Does it look like the users can easily find and identify the applications that they need to carry out the day-to-day tasks? Ultimately this (in our opinion) looks like some form of regression even compared to what the users are used to having from legacy technologies such as SAP GUI, and we have come across examples of customers who get this out of the box and then say that SAP Fiori looks worse than SAP GUI – we would tend to agree if you were to leave things like this. Remember that your implementation is not a competition for who can activate the most SAP Fiori applications the fastest!

Let’s make this somewhat scientific and measure the performance of this type of UI vs something more well designed and reasonable. The scenario shown below is an example user who has quite a substantial number of roles assigned to them:

Example%20user%20with%20a%20substantial%20number%20of%20roles%20assigned%20to%20them

Example user with a substantial number of roles assigned to them

This is their login performance (from a UI performance trace in the Google Chrome browser):

Login%20performance%20of%20poorly%20designed%20workspace

Login performance of poorly designed workspace

and this is what it looked like from the system perspective (transaction: STATS_FE)

STATS_FE%20result%20of%20poorly%20designed%20user%20workplace

STATS_FE result of poorly designed user workplace

A whopping 48 seconds waiting time! For comparison, here is one of our more “normal” users in terms of role assignment:

More%20reasonable%20user%20workspace%20design

More reasonable user workspace design

And this is their login performance:

Performance%20of%20better%20user%20workplace%20design

Performance of better user workplace design

At 4 seconds (or a nearly 90% performance improvement in other words), you can see that this is a dramatic improvement, and unfortunately, we repeatedly see the former 48 second scenario at our customers time and again.

Those of you coming from the SAP GUI world are used to the idea that the UI/UX just comes ready to go out of the box and does not require anything substantial in terms of configuration. With SAP Fiori, you can of course take the same approach, Afterall, our SAP RIG colleagues do offer you the opportunity to Activate SAP Fiori in 1 day or less, but we see leaving the UX part of the implementation as it is after this or just simply assigning users to business roles without detailed thought as a missed opportunity. SAP Fiori offers users a new way of working with SAP technologies, but part of this benefit requires some upfront work to make this new user experience really shine.

The most important aspect to understand upfront is that SAP Fiori is a mindset shift from a process-based approach to a role-based mindset. This tends to scare a lot of our customers since change can be hard and value may not be obvious but look at the example below to see what could be achieved in your project if you take the necessary time to properly consider how it all comes together for the business user.

A%20Well-Designed%20SAP%20Fiori%20Launchpad%20Homepage

A Well-Designed SAP Fiori Launchpad Homepage

Keeping lean design in mind for business user role assignment will help tremendously as well. One of the core concepts of SAP Fiori is to ensure that a business user only sees what they need to see to execute a given task. This is also true of how their homepage is laid out as well. This has major performance implications for SAP Fiori, and it is quite easy to understand the theory of why this is case; essentially the more roles an individual user has assigned to them, the worse the performance issues will become.

Leveraging the design thinking methodology as part of your SAP Fiori role design, you can define personas (not to be confused with SAP Screen Personas) for your business users which will help you to understand your users and be empathetic towards their needs. We also recommend tailoring your implementation approach around the SAP Activate methodology of the UX Value Goals. The value goals will help you identify tangible focus areas for your UX implementation and simultaneously focus your attention on the concept of business roles, since you will need to select appropriate value goals in tandem with your chosen business roles.

UX%20Value%20goals%20help%20drive%20tangible%20outcomes%20for%20UX%20adoption

UX Value goals help drive tangible outcomes for UX adoption

Regarding SAP Fiori Launchpad design, one excellent resource that we found buried within the SAP Activate for UX documentation was the following set of principles which will aid your SAP Fiori Launchpad layouts and represent some excellent best practices to keep in mind to avoid issues. (We will deep dive more on this in a later blog)

A%20set%20of%20principles%20which%20will%20aid%20the%20performance%20and%20usability%20of%20your%20SAP%20Fiori%20Launchpad

A set of principles which will aid the performance and usability of your SAP Fiori Launchpad

Spaces & Pages are a relatively new SAP Fiori workspace design concept available since SAP S/4HANA version 2020 and also help with performance of the SAP Fiori Launchpad, especially when compared to the older groups based design, this is due to the fact that an business user will only be able to view a particular page within a space compared to the older approach as visualized in the below diagrams

Traditional%20SAP%20Fiori%20Launchpad%20Design%20Concept

Traditional SAP Fiori Launchpad Design Concept

Our recommendation is that if your system supports Spaces & Pages, you should look to adopting them as soon as possible. Please check out How to migrate from groups to spaces and pages if you need help moving from the older SAP Fiori Launchpad concept of groups to the new spaces & pages design. Please also note that groups as a concept is deprecated, so to avoid future headaches, you should look to adopting spaces & pages as soon as possible.

Visual representation of Spaces and Pages

 

2: SAP Enterprise Search Setup

Many other factors will have to be considered to achieve a well-designed SAP Fiori Launchpad homepage and one often missed is the design of the SAP Enterprise Search, especially regarding lowering the volume of the available Search Connectors for an individual role. This is something we will go into more detail on in the later blogs in this series.

SAP Enterprise Search is a killer feature in the SAP Fiori Launchpad in the sense that it is an awesome tool for users and, if used incorrectly it can also “kill” your implementation. The major aspect we see missed here time and time again is correct role design for SAP Enterprise Search. Unfortunately, it was not intended as a Google Search, and we should not expect a user to be able to query all data which resides on your system. Proper role design is key here for security and performance reasons.

How%20the%20result%20set%20of%20SAP%20Enterprise%20Search%20looks

How the result set of SAP Enterprise Search looks

Once on a go-live we saw a customer had left their SAP Enterprise such as default with all the search connectors available for all users. The project manager would not believe this was an issue until I approached them and asked them to attempt to search for bank information via the SAP Enterprise search in the SAP Fiori Launchpad (information which they should not have had access to), sure enough the result came back to their horror. This represented a search connector and a piece of confidential data that the project manager should not have had access to on the live system.

Similarly having all search connectors provided to your business users can result very high SAP HANA CPU time and performance impacts. I was able to test this with two other colleagues on a very large system by simply entering the same search criteria over and over and we saw at the HANA CPU went up to about 75% over the course of about 2 minutes just from the SAP Enterprise search.

If you want to learn more about how to best configure SAP Enterprise Search you can refer to the following material:

3: SAP Embedded Analytics Setup

SAP Embedded Analytics is another often forgotten or heavily underestimated aspect of SAP Fiori implementations, most customers we have spoken to are not aware of this feature set and by the time the awareness does exist it is too late to implement due to the hardware implications and user training that would be required. Other times we see customers use this operational reporting toolset in unintended ways and create major performance issues for themselves.

Where they have failed to correctly align the expectations of their business users with the purpose of the SAP Embedded Analytics toolset, where just because we can do something using SAP Fiori does not necessarily mean that we should. All tools have limitations. One example that comes to mind is from a large customer in the telecommunications space who allowed their business users to have the impressions Overview pages could be used for all types of reporting including looking a 10-year data set. The result for them was massive performance issues in terms of SAP HANA memory and CPU when using SAP Fiori Overview pages, in the region of 1TB of SAP HANA RAM per user. Could the SAP Fiori apps do this type of reporting in a technical sense? yes but was it the correct tool to use for this type of reporting? …No!

A%20View%20of%20typical%20SAP%20S/4HANA%20Embedded%20Analytics%20Apps

A View of typical SAP S/4HANA Embedded Analytics Apps

IMPORTANT: Something recent to bring to your attention is that the most SAP Design Studio apps are no longer supported and will be removed from the SAP S/4HANA 2022 system. It is now recommended that you would use the SAP ABAP Web Dynpro Grid as the reporting tool for drill down reports these offer more features than the design studio versions.

Please read more information in SAP note: 3081996Deprecation of SAP Design Studio Apps in SAP S/4HANA 2021

4: SAP Fiori Launchpad Configuration 

SAP Fiori Launchpad Configuration is often missed in its importance for optimal SAP Fiori performance. There are several changes which you can make regarding this aspect which will massively improve performance for your business users.

Let’s take an experimental approach and test the performance impact of a few of these parameters. we will show you on our test system (SAP S/4HANA 2021) with default configuration how the performance is with the parameter enabled and disabled with all other settings left identical, please note that these are cached scenarios. As another disclaimer, the below is not indicative of the expected performance of an SAP S/4HANA system, the only purpose is to show what impact in terms of performance (if any) these parameters may or may not have. Please also note that this was based on general observations only and may not be easily repeatable in your environment, nor does it set out a baseline for SAP S/4HANA performance.

In addition, the intention of this introductory blog is not to offer comment or recommendation, it is simply to show you what impact various settings may have on your system. We will delve into optimal configuration at a later point in the series.

Please note that the parameters were based upon what was available in the SAP Fiori Launchpad Configuration Parameters guide for SAP S/4HANA 2021 FPS01

With the disclaimers aside, let’s review the results!

Property: HOMEPAGE_GROUPSELECTIONBAR_MODE

Description: In the launchpad home page, apps are clustered in groups. These groups are listed in the group selection bar at the top of the home page. This bar can function either as an anchor bar or a tab bar. With this parameter, you specify the default mode of the group selection bar.

Value: tabs

Value: scroll

Property: SPACES

Description: If you want to enable spaces and pages for your users, set this parameter to true. False means that the home page is shown.

Value: true

Value: false

Property: SPACES_MYHOME

Description: Enable the My Home space for all your users. (note: no apps displayed in my home for this test)

Value: true

Value: false

 

Property: HOMEPAGE_BACKGROUNDSHAPES

Description: This parameter specifies whether background shapes are displayed in themes. For a better performance, the parameter should be set to false to hide background shapes.

Value: true

Value: false

Bonus: Performance comparison of different SAP Fiori Launchpad themes

Quartz:

Belize:

Quartz (High Contrast Black):

Belize (High Contrast Black):

5: Classic UI Technologies

As you may be aware, the current state of SAP Fiori is not that SAP has not replaced all available transactions with SAP Fiori applications, your SAP Fiori launchpad will co-exist with quite a lot of so-called “classic” screens, it is important that the performance for these is as optimal as possible since the users will already be “taking a step back” in terms of UX when using these classic interfaces.

Something often missed during implementations (especially those customers who are replacing the native GUI with the SAP Fiori Launchpad) is that SAP GUI for HTML comes with some limitations which SAP is already aware of and has clearly documented for each release of SAP S/4HANA, for examples:

  • 2163772IE Issue: Massive performance issues in IE11
  • 1927011 Restrictions of Unified Rendering

Memory leaks exists in all versions of Internet Explorer which can not be avoided by the framework. The recommendation is to use a modern browser like Chrome especially in terminal server scenarios (e.g. WTS)

Please read more in SAP note: 314568SAP GUI for HTML functionality / Limitations / Sp. Behaviour and for your specific release (example for SAP S/4HANA 2021): SAP S/4HANA 2021 – 31430317.85: SAP GUI for HTML functionality / Limitations / Sp. Behaviour etc.

You should also be aware of Unified Rendering, Unified Rendering is a SAP owned HTML rendering and JavaScript library for many SAP UI technologies such as Web Dynpro ABAP, Web Dynpro Java, SAP GUI for HTML, BSP and HTMLB, these can be understood in exhaustive detail in the following SAP note: 1927011Restrictions of Unified Rendering

For your benefit, we have taken some traces with the SAP GUI for HTML in various states to show you the impact of some of the performance impacts of the various configuration parameters of the SAP Fiori Launchpad:

Property: NAVIGATION_GUI_INPLACE

Description: Influences whether SAP GUI for HTML transactions open in a new browser window or open in the existing one

Scenario tested: Bank Accounts Display: Initial Screen F9K3

Value: false

Value: true

Property: NAVIGATION_WDA_INPLACE

Description: Influences whether SAP Web Dynpro screens open in a new browser window or open in the existing one

Scenario: Financial Status – Book Value (F2136)

Value: false

Value: true

6: SAP Gateway housekeeping and Cache Management

As SAP Fiori is a purely web-based design language, cache management on the business user’s browser and the underlying SAP Gateway play a large role in preventing performance issues. Topics like the cache buster must be enabled and running optimally to ensure optimal performance, in addition there are several associated clean-up & housekeeping jobs. These housekeeping tasks should not be neglected as to ensure the smooth operation and optimal performance.

The first key topic that must be understood is caching within the SAP Fiori Frontend Server, hopefully we will be able to dispel some common misunderstandings concerning the multiple caches that are found in the SAP FES. To provide optimal performance to your business users it is important that you understand these clients and server-side caches and their synchronization with the database. Important caches to be aware of, OData Metadata caches, ICM cache of the SAP ABAP application server, UI2 Caches and of course the business user’s browser cache.

Cache buster techniques cause web browsers to load content from the server rather than from the browser cache when new resources are available on the server. Cache busting is available for UI2 based resources and OData by scheduling the reports /UI5/APP_INDEX_CALCULATE & /UI5/UPD_ODATA_METADATA_CACHE

Please read more about the APP_INDEX_CALCULATE job in SAP note: 2449635How to calculate SAPUI5 application index and SAP note 2319491How to clean up the cache after applying changes that affect SAP Fiori apps

The scheduling frequency of these jobs can also impact performance where the default is set to run every 15 minutes in the system for /UI5/APP_INDEX_CALCULATE however if there are a lot of changes within the system or no changes at all we have seen customers creating system performance issues by using the “full calculation” option where the job never finished before another execution.

More than just the caches there are other indirect mechanisms within the SAP Fiori front-end server and SAP Gateway that can impact performance indirectly, such as important housekeeping tasks like /IWFND/R_SM_CLEANUP ensures that data collected by the SAP Gateway is purged at regular intervals to avoid unnecessary wasting of disk space.

Please read more about R_SM_CLEANUP in SAP note: 2499354Report /IWFND/R_SM_CLEANUP and 2385250Rapid growth of Gateway tables /IWFND/L_MET_DAT and /IWFND/SU_STATS

We have seen cases with customers where they neglected housekeeping and their system logging tables became so large that the clean-up jobs could not complete before the next job was scheduled to start. The disk space was being wasted due a build-up of with logs and statistics and CPU wasted trying to aggregate them.

Or in other cases where we have seen overzealous SAP Gateway admins clearing their UI2 cache on a weekly basis and questioning why their performance was not improving and in many cases was getting worse for their business users. Despite their best intentions in trying to maintain their SAP Fiori Front-end server they were doing more harm than good.

These are just some of the topics we would like to explore with you in the following blogs showing direct and indirect performance impacts.

7: Client Options & Understanding Latency

It is important as part of your implementation project to understand how the client options have shifted from a (more or less) native SAP GUI for Windows installation for all users to those same users leveraging a web browser as their main client tool. However, there are still some cases where a native client will offer advantages, such as if you are planning to use transactions such as CJ20N you may still need to explore alternative options such as the SAP Business Client (offering a best of both worlds approach with SAP Fiori and SAP GUI) or revert users back to SAP GUI for Windows. For further information on the SAP Business Client, please refer to The SAP Fiori Launchpad in SAP Business Client | SAP Blogs and Why and When to use SAP Business Client | SAP Blogs

In terms of latency, as SAP Fiori is a web-based tool, it does have increased bandwidth requirements when compared to pure SAP GUI, and considering latency as a factor in your implementation will go a ways to alleviate otherwise unavoidable network performance issues.

IMPORTANT: One of the most interesting and perhaps obvious aspects of performance which is often overlooked is the type of physical device which a particular business user has. We recently had the opportunity to upgrade our laptops to one of the latest devices on the market with the following specs:

We noticed an instant performance increase across the board compared to older devices from 2018. We then tested this in our SAP S/4HANA 2021 system with Chrome throttling the CPU and noticed that even with a 4x slowdown (which might equate to a half a decade old laptop) the performance impact was enlightening.

Un-cached login to SAP Fiori Launchpad with no throttling:

CPU throttling at 6x:

Having run these tests, we can somewhat confidently say that if you truly want the best possible performance, you will need to invest in relatively modern devices for your business users where possible. This may sound obvious, but we often see sub-optimal device and browser configurations for business users of SAP Fiori, since SAP GUI was very light in terms of its system requirements. You can get some clarity on the specifics of these requirements in SAP note: 2240690Front-end Network Bandwidth Sizing for SAP Fiori Apps and SAP S/4HANA. As for the browser choice, this will heavily depend on your release level in terms of what is/isn’t supported and what type of addon dependencies you have, but as a general rule of thumb, the more modern, the better.

Bonus: lets test performance for each of our different browsers for login with the same user

Google Chrome 104.0.5112.102 (Official Build) (64-bit)

Firefox 104.0 (64-bit)

Microsoft Edge 104.0.1293.63 (Official build) (64-bit)

8: Custom Code

Your custom code is only as good as your developers and it will be the responsibility of them to ensure that performance best practices are adhered to, as no amount of system tuning is going to make up for fundamentally poorly performing code in custom applications. For freestyle development applications the minimum to check would be the SAPUI5 SDK Performance: Speed Up Your App.

Metadata Caching

Fast loading times for applications on the SAP Fiori Launchpad is ensured by the OData metadata cache this is cached on the web browser using cache tokens. This can be tracked in the developer tools of your web browser in the network tab to check if the token has been appended to the request URL of the request or in the backend system via transaction code: /n/iwfnd/med_activate as shown

We can see below the impact of having your metadata cache disabled in terms of performance (load time was 14.6 seconds):

And below is shown the difference with it enabled (load time: 12.74 seconds)

Asynchronous Module Definition

Asynchronous Module Definition (AMD) is commonly missing from older SAPUI5 applications. Essentially it allows you to load modules and dependencies asynchronously. Dependencies can be clearly defined for the controller of the component. The AMD syntax can be used for any controller

OData Model

The OData model affects performance of your applications. Please consider switching to the OData V4 model for performance benefits especially when compared to the V2 model. Please review the OData V4 model documentation for further information.

The SAPUI5 Support Assistant

You can use the ui5 support assistant to review the application for known issues. This tool has a set of Rules which identify common performance issues and give you helpful context on how to solve them. The tool is accessed via keyboard shortcut ctrl-alt-shift-p on Windows.

Network Requests

You can check slow network requests in your browser’s developer tools. Check your network requests and also the response times for any finished ones. If you find that the cause of this network performance is due to slow network infrastructure than you may have to consider your front-end network bandwidth sizing as we will talk about in detail in a later section of this blog.

If you want more details, please review the following blog: UI5ers Buzz #47: Performance Checklist for UI5 Apps | SAP Blogs

9: Sizing and hardware

Sizing is a key aspect relating to SAP Fiori and is one that is often missed by customers. Having a properly sized system will prevent issues at go live. There are several factors to consider with SAP Fiori sizing such as:

  • The number of concurrent users on the system
  • The front-end network bandwidth requirements
  • SAP Web Dispatcher sizing
  • SAP Cloud Connector sizing

One of the main tools that we use for sizing is the SAP Quicksizer tool.

Sizing drivers

Number of concurrently active users (i.e., over a peak time, the highest user concurrency. For the most part it is important to note that SAP Fiori Apps are stateless applications as such logged-in users are not necessarily active in the system)

We approximate the users by either:

  • Describing their activity in terms of steps per time
  • Application area (there are a number of predefined use cases in Quick Sizer)
  • The focus of sizing is on the CPU and application server RAM, HANA RAM is hardly affected. (With the exception of course being Analytical SAP Fiori apps.)
  • The overall HANA DB RAM sizing is based on throughput in terms of table data.

Sizing SAP Fiori Analytical Apps

When it comes to sizing SAP Fiori Analytical apps it is important to understand that a user-based sizing is not sufficient as we would use for the SAP Fiori Frontend Server. A throughput sizing approach must be used as even a single user can query very large date sets when using SAP Fiori Elements based applications such as an overview page. Take the example below each analytical application can execute multiple queries in parallel. In an overview page we can have up to 20 cards each card executing 2 queries. As a result, a single user in theory could execute 40 queries in parallel on their SAP HANA database. In cases I have seen a customer with very large data sets where business users running SAP Fiori applications were able to consume 1 TB of SAP HANA RAM for a single execution. It does not take long and that many users to make the number go higher.

To determine the sizing input in terms of user numbers and weighting of transactions. We must understand how the business user is going to use the applications and interact with the screen. If they are an information user, they may not use the SAP Fiori Launchpad often and would be seen as a casual user. Business users would be typically key users that could be reviewing different reports or executing their typical business process steps where they would have a mix and could execute some heavy queries but typically not that often. An Expert user would be an Analytical specialist who is creating and changing reports and will use many heavy queries. Where the small number of users in this example 20 would require more resources than all the other users combined.

Front-end bandwidth requirements

Often overlooked by many customers when they plan to implement SAP Fiori is bandwidth. SAP Fiori does require more bandwidth than SAP GUI and if the business user is in an area with poor connectivity or is too far away from the server performance will be impacted.

In order to determine your bandwidth requirements, we need to determine the number of concurrent users, how often they exchange data with the system (think time) and the average amount of KB per interaction step. To do this, you can use transactions ST03/STAD and others. The KB per interaction step is average, but can be much higher, especially when performing analytical load.

Refer to SAP Notes:

  • 1612245Frontend Hardware Requirements for Browser-Based SAP UI
  • 2240690Front-end Network Bandwidth Sizing for SAP Fiori Apps and SAP S/4HANA
  • 1888428Sizing for SAP GUI for HTML

As a precondition for SAP Fiori sizing, you need to understand the starting point of the exercise and the planned use cases.

  • Make a list of all required applications and technical components
  • Is it a greenfield sizing without any other systems in production? Are one or two systems already in production?
  • Is it a delta sizing? Are one or more systems already in production?
  • Are the future transactional apps covered in a dedicated Quick Sizer questionnaire?
  • Are additional transactional apps planned?
  • Are analytical apps planned?

10: Patching & known notes, General Best Practices

There are several known and not so obvious SAP notes and best practices available and released to customers to be aware of to help you avoid common performance issues. One to be aware of is the performance restrictions for specific releases of SAP S/4HANA. Example: 3090070 – SAP S/4HANA 2021 FPS0: Performance Restrictions. This note shows higher than expected response times in CPU time or application server CPU time for one (or more) user interaction step for a particular scenario. These issues are planned to be solved in a higher release of SAP S/4HANA. An example of what you can expect from this note is shown below:

Another good one to be aware of is SAP note 2881803FAQ: S/4HANA Fiori Best Practices – Collective Note which shows details and resolutions for various issues including performance across different applications. Linked from this note and especially relevant to the topic of this blog series is SAP note: 2916959Fiori Performance Troubleshooting this note provides us with guidance around general SAP Fiori performance issues such as:

  • General system aspects
  • Network
  • Distance from business user to Frontend Server
  • Browser of the respective device used
  • SAPUI5 resource
  • SAP GUI for HTML & SAP Web Dynpro performance
  • Limitations of SAP GUI for HTML
  • SAP Fiori Layer
  • SAP Fiori Launchpad start-up performance
  • SAP Fiori Launchpad Search performance
  • Single SAP Fiori App Performance

We also recommended that you take a look at SAP note: 2500800Cumulative patches for Unified Rendering that allows you to ensure that the basis HTML framework consumed by Web Dynpro ABAP, Web Dynpro JAVA and SAP GUI for HTML is optimally tuned.

Another excellent resource is SAP Note: 2217489Maintenance and Update Strategy for SAP Fiori Front-End Server which shows you where your system is in terms of standard support for the SAP Fiori front-end

  • 3033053FLP Performance issue at first logon: Inefficient hash table access
  • 1801618 – Performance tuning guidelines for SAP NetWeaver Gateway

Other great sources relevant to this topic provided by the SAP RIG team:

What’s coming next in the blog series

Now that we have looked at what not to do, the next blog in the series will cover the end-to-end Tracing Tools & Approach, so that you can identify the approaches we took to measure the system and indicate if a performance issue exists at all. There are many layers involved in SAP Fiori performance and it is important to know where your performance issue lies before you begin to try and tune the system. Your business users will always imagine the performance issue lies with SAP Fiori but to them SAP Fiori simply means “anything launched via the SAP Launchpad” which can include SAP GUI for HTML, SAP Web Dynpro or SAP Fiori so it’s important to be able to differentiate between these technologies or you will run the risk of using an inappropriate tool or methodology to trace the scenario in question.

SAP Max-Attention Services

If you want our help personally with your system, there are a wide variety of premium engagement services available holistically covering the topic of UX and SAP Fiori performance. If you already have an SAP Max Attention Contract, please talk to your TQM to go about booking our help. You are also free to raise specific questions below and we will do our best to respond!

Becoming a SAP Fiori for SAP S/4HANA guru

You’ll find much more on the community topic page for SAP Fiori for SAP S/4HANA

Other helpful links in the SAP Community:

Brought to you by the SAP S/4HANA Customer Success and RIG.

 

 

Assigned Tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Ravish Garg
      Ravish Garg

      Hi Adam

      This was really insightful and comprehensive. Looking forward to the next blog in the series.

      Author's profile photo Setu Saxena
      Setu Saxena

      Excellent write up, very informative 🙂

      Author's profile photo Garikoitz Basabe Olabarri
      Garikoitz Basabe Olabarri

      Thanks a lot Adam, great blog!!!!!!!!

      Author's profile photo Ritesh Dube
      Ritesh Dube

      Great blog @Adam Cody , Thanks for sharing your knowledge with group.

      Regards

      RD

      Author's profile photo Gene Madikrama
      Gene Madikrama

      Hi Adam,

      Great blog! I assume this also applies to the Launchpad service of the BTP?

       

      Regards,

      GM

      Author's profile photo Adam Cody
      Adam Cody
      Blog Post Author

      Hi Gene,

      The parts concerning Launchpad Design and client options will also benefit users on the Launchpad Service in SAP BTP, most of the rest is not directly related to the SAP BTP Launchpad Service, nor have we measured performance when using SAP BTP as the business user front-end, but since SAP BTP is integrating content from on-premise backend's, having the providers designed in as optimal a way as possible certainly will do no harm.

      Thanks,

      Adam

      Author's profile photo Gene Madikrama
      Gene Madikrama

      Thank you.

      We will use the advice included in this blog