Step 4 of 5 Intermediate 9 min

Reading a UI5/Fiori Readiness Check

Lesson 4 — You already know this pattern from the ABAP side: a readiness check scans against rules and classifies findings by severity. Here's what a UI5/Fiori check actually looks at, the real official tool behind it, and how to read the output the same disciplined way.

S
s4ready.ai Team

Prerequisites

  • Lesson 3: Fiori Elements vs freestyle — picking the right tool

You already know this pattern if you’ve read an ABAP readiness assessment: a scan runs against a rule set and classifies every finding by severity. A UI5/Fiori readiness check does the identical thing for your front-end estate — deprecated libraries, stale OData versions, ageing manifest declarations — and it deserves the same disciplined reading, not a glance at a single score.

What actually gets checked

The real official tool behind this is the UI5 linter (@ui5/linter) — SAP’s own static-analysis tool, built to flag exactly the risk surface from Lessons 1–2: deprecated APIs and controls in your source, deprecated dependencies declared in manifest.json, and deprecated bootstrap attributes. Version 1.12 and later can even auto-fix a subset of findings directly. This is genuinely comparable to running ATC on ABAP — it’s just a Node-based tool run against JavaScript/XML source, not an ABAP transaction, so don’t expect it inside your ABAP toolchain itself.

Two fields inside manifest.json do a disproportionate amount of the work in any check:

  • sap.ui5.dependencies.minUI5Version — the minimum runtime version the app requires. Far behind current = rising maintenance risk, even with zero deprecated controls.
  • sap.app.dataSourcessettings.odataVersion — declares whether that data source is “2.0” or “4.0”. This is what tells a scan whether an app is still sitting on the legacy path from Lesson 2.

This is precisely what our own platform’s Agent A7 (UI5/Fiori Check) looks at: SAPUI5 views, controllers, and the manifest — surfacing deprecated controls, OData V2→V4 paths, and Fiori Elements opportunities in one pass.

Reading the severity, not just the score

Severity levels in a UI5/Fiori readiness checkCritical: deprecated library actively in use, breaks under the current theme, must fix before the next UI5 upgrade. High: app still on OData V2 with no migration plan, should fix before go-live. Medium: minUI5Version far behind current, technical debt worth planning. Low: cosmetic or best-practice, freestyle app that could become Fiori Elements — can wait.CRITICALDeprecated library in use,breaks under current themeHIGHStill on OData V2,no migration plan yetMEDIUMminUI5Version far behindcurrent — rising debtLOWFreestyle app that couldbecome Fiori Elements
Same discipline as the ABAP readiness assessment: the distribution across severity is what shapes the project, not the headline number.

Exactly as with an ABAP scan, a hundred Critical findings concentrated in a handful of high-traffic apps is a completely different project than a hundred Low findings spread across your whole estate — different sequencing, different urgency, same overall count.

Try it yourself

Take a hypothetical (or real) set of five findings across a few apps: mix in at least one deprecated-library hit, one OData V2 app with no plan, one stale minUI5Version, and one freestyle app that’s a good Fiori Elements candidate. Sort them by severity using the framework above, then write one sentence on how that distribution would change your remediation sequencing.

Go deeper

For the UI5 linter itself — including the autofix capability — see SAP’s UI5 linter on GitHub and the official release announcement. To run this against your own estate today, use a free readiness scan.

Key takeaways

  • The UI5 linter (@ui5/linter) is SAP’s real, official static-analysis tool for this — comparable to ATC, but it’s a Node tool against JS/XML source, not an ABAP transaction.
  • manifest.json’s minUI5Version and dataSources.odataVersion carry most of the signal a check needs.
  • Severity distribution, not the headline score, is what should shape your remediation sequencing — identical discipline to the ABAP readiness assessment.

Next: the capstone — pulling assess, decide, migrate, and verify into one real pass on one real app.