Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Matthew_Shaw
Product and Topic Expert
Product and Topic Expert

You have plans to build a dashboard application, but which SAP technology should you go with?

You have a choice of technology ranging from:

  1. SAPUI5, which in turn is based on OpenUI5 and HTML5.
  2. SAP Fiori, which is based on the SAP Fiori UX and SAPUI5.
  3. SAP BusinessObjects BI Platform, with its associated ‘Design Studio’ Application.

All these options come with pros and cons depending upon your use case. Starting with one of these technologies, for the all right reasons, doesn’t necessarily mean that sticking with that choice in the long term is right, should you find your use case changes.

The trick is to ensure that any project, based on one technology, stays within its sweet spot and doesn’t scope creep into the other.  If you allow it to scope creep, then you may need to consider switching technologies.

This blog is intended to give a high level overview of these technologies mentioned, helping you to ensure any project either stays within its sweet spot, or allowing you to be more conscious of the others. Hopefully then, enabling you to switch technologies at a time when there would have less impact to overall cost of ownership.

Development

SAPUI5

A development environment of your choice allows complete coding freedom with JavaScript and HTML. There are hundreds of rich UI controls to re-use plus many richer controls, for example:

    • A Model-Viewer-Control (MVC) for the separate the representation of information from the user interaction.
    • Data binding controls to perform actions on data allowing for linking to a UI controls.
    • Navigating and routing controls.

There are many more available at openui5. Your IDE can be anything of your choosing. However you can also use SAP Web IDE or Eclipse with a SAPUI5 Tools add-on.

SAP Fiori

If you intend to develop a SAP Fiori app you will probably use the:

All are capable for building Fiori applications.

A comprehensive set of services are provided including things like User Experience, Analytics, Security, Internet of Things and Storage etc. All this within a Web IDE that provides features including:

    • CVOM Chart controls
    • Templates and samples and an extensive library of existing applications
    • Drag and drop WYSIWYG development environment
    • Develop on the web, but publish/export to any destination including the cloud, Fiori Launchpad on premise, enterprise portal.

If you are just changing the look and feel of an existing app then no coding is necessary, however assuming you’ll building a custom app, as the focus of this blog, then you will need to write code to manage the data, the visualisations and the overall “mechanics”.

A ‘mock server’ simulates back-end calls making it easy to test an application without the need to deploy it. A mock data editor helps you create the data in the right format.

Whilst samples and a library of applications are provided, for a custom application it is unlikely that you could extend any of these, though that is a possibility. You are likely to build a new application from scratch using a template.

BI Platform

Design Studio provides a WYSIWYG client side development environment in an Eclipse Framework. The environment comes with components you can simply drag and drop onto your canvas, such as charts, tables, maps, scorecards etc. Whilst you can build a simple dashboard without scripting, typically at least some scripting is required is enable things like loading data sources in the background; or managing layers on a map component to enable a user to interact with it. The script will be server-side Java script and CSS style sheets. The environment is designed to reduce coding and so naturally there are parts of the application you cannot touch. So it’s not as flexible as native UI5 coding from that perspective, but then it’s not meant to be.

A comprehensive set of components are provided. However if you wanted a different visualization or custom component then the SDKs provides the answer, with many open source components available via GitHub or available to purchase with support from Partners through SAP Analytics Extensions Directory.

Developing a visualisation once and re-using the same visualisation in Lumira is possible.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Developer experience

Good to advanced HTML5 code experience. Complete freedom

Basic to advance Java script code and CSS style sheet experience. Controlled development environment

Application complexity

Quite simple applications with a table and a simple chart

Simple to complex applications, multiple tables/charts and sophisticated data visualisation.

Visualisation complexity

Simple visualisations

Larger number of resources to use for data visualisation allowing complex visualisations and sophisticated workflows

Data

SAPUI5

The SAPUI5 library provides controls to consume and manage OData data streams. Most of the RESTful URL parameters are handled automatically however you need to bind data to elements.

Your data sources are thus limited to only those that expose OData consumption.

SAP Fiori

Adding to SAPUI5, SAP Fiori data provides an OData Model editor with a SAP Web IDE plug-in. Data used, to ‘instantly preview’ can either be the live data or ‘mock-data’ provided by the Web IDE framework.

Developing in the cloud for on premise data typically requires the use of a secure tunnel, with the SAP HANA Cloud Connector, between SAP HANA Cloud Platform and your premise. As mentioned earlier, the mock data and mock server removes any barriers to rapid develop-test cycles.

HANA/S4HANA exposes OData streams with Core Data Services (CDS) Views. Re-use of existing CDS views is possible. BW Queries exposes OData by enabling “Easy Queries”

BI Platform

Connect directly to BW and HANA OLAP sources or with Universes for almost all relational sources making the list of data sources truly vast.

Existing BW Queries and HANA Views with direct connectivity providing native support. For example OLAP features that come out-of-the-box include things like

    • Hierarchy support
    • Time-dependent characteristics
    • Drill-down

The relational features, though the Universe Semantic Layer, include things like

    • Abstraction of technical complexity of the database implementation to a business orientated view
    • High re-use of the Universe since it has a rich query interface allowing for varied and complex queries
    • Multiple data sources and the joining of data across them
    • Optimised SQL generation provides very comprehensive performance optimisation including things like parallel queries, dynamic in-line views, dynamic use of aggregates, etc.

Design Studio provides the ability to re-use your existing HANA/BW or BI Platform investment in Universes and all the security controls around that. This may also include filtering of data by user/group, or dynamically switching data connection depending upon the user/group.

Even if you chose not to use Design Studio for your custom application, you can still use the BI Platform to expose Universe data via a RESTful ODdata data stream. The BI Platform provides an ‘OData Query Service’ allowing you to create a query ‘on the fly’ and retrieve data. This means you can re-use your semantic layer, connect to almost any data source, and not require the skills to create OData schema and connect it to data.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Data Source

Sources exposing OData only, so BW/HANA/S4HANA. The source needs to be quite ‘simple’ in its structure.

Almost any data source, with simple to complex data structures being supported.

HANA, BW and Universe data sources are ideal.

Data Source Semantics skills requirement

It depends! The OData schema need to be defined and connected to the data source. Knowledge of how to do this is along with a good understand of the underlying data structures is required.

For BI Platform data: use the ‘Odata Query Service’ to re-use Universe semantics.

For BW: this is extremely simple, it’s just a ‘check-box’ on the Query!

For HANA/S4HANA: If any existing CDS views don’t fulfil your requirements then new CDS Views will need to be defined. Consequently new skills for creating/editing CDS Views will be required.

No new semantic layer skills are needed as the existing Universes are likely to satisfy the custom application. Any small changes needed to the Universe can be made with the Information Design Tool/

Data Security

It depends! It might need to be simple, if you manage this yourself, or it can be complex if managed in the data source. S4HANA is a strong sweet spot since CDS views provide the ability to re-use SAP authorisations. If consuming data from the BI Platform, then you will automatically re-use existing security.

You have complete flexibility. Manage it either at the data source, in the semantic layer, or re-use existing data security controls that come with the BI Platform.

Change and Life Cycle Management

SAPUI5

You need to manage this entirely by yourself.

SAP Fiori

Environment (dev, test, prod) are managed with the use of multiple HANA Cloud Platform accounts. You need one for each environment. This with the ability to import/export to/from Git and external applications provides the change manage controls for your application.

BI Platform

Version Management check-in and check-out is provided out-of-the-box allowing developers to manage their content development. Promotion Management allows you to add all the associated content in a single ‘promotion job’ providing comprehensive control over the promotion of content from one environment (dev, test, prod) to another. It also allows you to be sure that a complete package is operation in the target.  Features like rollback are provided too allowing easy recovery options. Integration with SAP CTS+ is also available should you want to ensure any SAP dependencies are managed as one package.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Managing Life Cycle

Manual effort, so a simple ‘small’ deployment

Manual but with Import/Export and controls around access rights to each environment

Comprehensive set of tools to manage a vast set of assets in a very controlled and recoverable manner.

Updating

SAPUI5 / SAP Fiori

Whether you develop a custom app from scratch or you are able to extent an existing Fiori application, then updating to the new version shouldn’t be too problematic. Some basic testing would be needed at a minimum.

Extending an existing Fiori application reduces the re-development as the extension doesn’t actually touch the original application allowing you to gain from any improves SAP provides.

BI Platform

Updating the BI Platform and Design Studio application shouldn’t be complicated either. Any existing application should always work in a more recent product version, though again, some basic testing would be needed at a minimum. Often, though not always, updating will introduce performance optimisation for just ‘republishing’ the same Design Studio Application to the BI Platform providing a ‘free’ performance boost with almost no effort.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Ease of updating

Some basic testing required.

Mixed experiences for updating BI Platform due the effort required.

License

SAPUI5

It’s completely free of license.

SAP Fiori

You can obtain a free 90 day trial and it’s also free for all SAP customers.

BI Platform

You require the SAP BI Suite license. If you have an old Dashboards (Xcelisus) license then you also have the rights to use Design Studio, though you’ll need to double check with your SAP representative. Users consuming data through the BI Platform need to be licensed.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Deploy

Deploy anywhere

Deploy with any SAP Product

Deploy when you have the BI Platform

Enterprise Features

SAPUI5 / SAP Fiori

Enterprise features are limited to the data source. For example S4HANA sources provides security on the data via Authorisations.

BI Platform

A comprehensive suite of out-of-the-box features including:

    • Auditing of user activity for compliance regulations
    • Language and translation support
    • Security and access right management covering resources, data access, application rights/features
    • Tenancy management
    • Lineage and impact analysis with the use of Information Steward, Auditing and ‘Query Builder’ queries on the CMS database.

Sweet Spots

SAPUI5

SAP Fiori

BI Platform

Deployment type

Generally quite simple deployments to fulfil a tactical requirement.

Complex, large scale, controlled with international users. This makes strategic deployments suitable for its longevity.

Integration with Fiori Launchpad

SAP Fiori

Built for the Fiori Launchpad adding tiles or adding cards to Fiori Overview Page is straightforward. This enables you to create a ‘Smart Business Cockpit’.

BI Platform

A simple app launcher tile can be added to the Fiori Launchpad to allow the user to open any BI Platform document, including a Design Studio Application. This blog is for how to add a tile to open a Lumira document, but the principal explained applies to Design Studio Applications, or any document type supported by ‘OpenDocument’.

Sweet Spots

SAP Fiori

BI Platform

Fiori Integration

Native, providing both KPI tiles and overview page support.

URL linking from a tile, but can open any asset on the BI Platform

Performance

SAPUI5 / SAP Fiori

The client browser loads metadata services that are bound to controls and this can impact performance. So you may need to avoid loading, for example, the big chart library (CVOM) until you really need to use it. Equally loading multiple OData calls will impact performance. You can bundle multiple OData calls into a single OData operation (with $batch) to keep under the recommend 2 sequential calls per dialog step.

BI Platform

Just like a custom SAP Fiori application, the Design Studio Application also needs to be designed with performance in mind, for example loading data sources in the background and parallel loading of those data sources.

There are a bunch of things and recommendations to follow, see SAP Note 1931691 - Performance hints for Design Studio applications

Generally speaking, a simple Fiori applications will load quite fast, potentially faster than an equivalent Design Studio application. However as soon as you start to add more complexity, adding charts and more interactive controls, then the Design Studio application will typically outperform its Fiori equivalent.

Sweet spots

SAPUI5

SAP Fiori

BI Platform

Performance

Suited for a very simple 1 table application with simple interactivity

Suited for simple to complex applications allowing for more complex interactivity and visualisations.