SAPUI5 - The Future direction of SAP UI Development?
Heard of SAP's "User Interface Development Toolkit for HTML5"? No? Thought not. How about "SAPUI5"? Ah, that's more like it.
SAP's User Interface Development Toolkit for HTML5 - aka SAPUI5 - is a very recent offering from SAP that, despite being an absolute mouthful when you use its official product name, is something that I suspect we will be hearing a lot more about in the next 12 months.
The SAP UI experience
When you think of the SAP user interface experience, what comes to mind? The venerable SAPGUI? The edgy NetWeaver Business Client? Some browser-based but ultimately and unmistakeably SAP flavoured HTML experience? For many of us, it's "all of the above". When you consider all of these approaches, and the technologies that power them, there's a single theme that emerges: the theme of "Inside-Out". Classic dynpros, WebDynpro for Java, WebDynpro for ABAP, Business Server Pages and (gasp) home-brew solutions based on a custom set of templates are all technologies where the user experience is designed, built and pushed out from the inside of an SAP system, and exposed to the outside in the last-mile of user connectivity. That's served us well, but there's a sea-change ahead.
From inside-out to outside-in
That's from the SAPUI5 homepage on SAP's Developer Centre. I'll translate, and add an observation that may go otherwise unnoticed: SAPUI5 is a framework and a series of libraries that front-end developers can use to build compelling, non-clunky (but still SAP-focused) genuine HTML5-based applications. It's a framework that embraces (well, includes, actually) the ever popular jQuery, and has more UI controls than you can shake a stick at. It has a core UI layout called the "Shell" which is an implementation of what we might traditionally call a dynpro frame, a sort of meta-component which is as good-looking as it is flexible and adaptable.
So what might go unnoticed? The fact that this is SAP's first major UI venture which adopts - by design - an "Outside-In" approach.
What does that mean, and why is it significant?
Outside-In? What does that mean? It means that rather than have your UI construction weighed down and otherwise restricted by unnecessary, irrelevant and somewhat proprietary tech in the SAP system, you can approach your new applications with a fresh, unfettered and ultimately independent flexibility. Build your applications in the context of today's UI runtimes (i.e. build in HTML5 for the browser), and support your applications with data and functionality in your backend SAP systems as and when required. Build from the outside, and connect into SAP when appropriate.
What else does that mean? It means for SAP the ability to reach out to the otherwise non-SAP developers out there, the myriad mobile & desktop app-shop developer teams that are experts in constructing solid and user-focused applications. If SAP are to get anywhere near attaining the goal of reaching one billion users, then this is an approach that becomes absolutely necessary.
Finally, the significance is exponentially enhanced by the fact that out of the box, SAPUI5 supports data bindings for raw XML, JSON ... and OData. And we all know what that means, right? As the maturing lingua franca of SAP's API landscape, SAP NetWeaver Gateway's support of OData as the data-centric consumption protocol becomes a powerful ally of a UI framework built with the right focus from the get-go. The blog post
"SAPUI5 says 'Hello OData' to NetWeaver Gateway" on the SAP Community Network shows how easy consumption of Gateway-exposed OData can be from SAPUI5.
So what's the catch?
The next release is scheduled to be bundled as part of SAP's Platform-as-a-Service (PaaS) offering codenamed "Neo". There will be a standalone product, but the focus is on Neo first. They are still working on a mobile version, and there's no date for that yet.
So if you're looking at SAPUI5 for your future user interface requirements, you're on the right track, but are going to be an early adopter.
SAPUI5 is here already, and among the early adopters in the wider SAP geek community, it is receiving significant (and deserved) attention. What's more, the product team behind it is approaching the framework's growth in exactly the right way - by actively engaging the developers. It's early days, but I totally applaud SAP's direction and efforts thus far. If you're interested in rapid deployment of prototype, ad-hoc and full blown productive apps powered by your timeless SAP infrastructure, keep an eye on SAPUI5.