HTML5 vs. SAPUI5 - pikon.com · PDF fileINFRASTRUKTUR 94 E-3 FEBRUAR 2016 Oberflächen E s hat lange gedauert, bis auch SAP moderne UI-Technologien auf den Weg gebracht hat. Schwierig

Embed Size (px)

Citation preview

  • INFRASTRUKTUR

    94 E-3 FEBRUAR 2016

    Oberflchen

    E s hat lange gedauert, bis auch SAP moderne UI-Technologien auf den Weg gebracht hat. Schwierig ist vor allem die Anpassungsfhigkeit an in-dividuelle Anforderungen und die wenig intuitive Bedienbarkeit. Im Rahmen einer Evaluierungsphase fr HTML5-UI-Techno-logien entstand die Idee, einen Artikel ber Oberflchentechnologien zu schreiben. Vor allem ber solche, die im SAP-Umfeld typischerweise eingesetzt werden.

    Das WebDynpro Framework ist mittler-weile bewhrt und bietet auch interessan-te Mglichkeiten fr Eigenentwicklungen. So kann man vordefinierte Templates fr Benutzeroberflchen und eine komfor-table Entwicklungsumgebung mit einem WYSIWYG-Editor nutzen.

    Wie bei allen geschlossenen Frame-works ist SAP als Hersteller der Rahmen-geber und gibt somit die Grenzen strikt vor. Somit wird die gesamte Steuerung der Kommunikation mit dem Backend-System auf dem Server definiert. Es gibt keine Mglichkeit fr ein individuelles Coding auf der Client-Seite, wie es zum Beispiel bei der Einbindung bestimmter multime-dialer Inhalte (z. B. Video) notwendig wre.Andererseits bieten diese Grenzen auch Vorteile, gerade bei Themen, wie Release-planung, Support sowie der Datensicher-heit und Stabilitt. Aufgrund der beschrie-benen Begrenzungen geht SAP neue Wege und stellt ein noch relativ neues UI-Frame-work zur Verfgung: SAPUI5!

    Bisher ist SAPUI5 hauptschlich durch die Fiori-Apps bekannt, aber es handelt sich hierbei um ein offeneres Konzept mit mehr Eingriffsmglichkeiten im Vergleich zu WebDynpro.

    SAPUI5

    SAPUI5 ist ebenfalls ein Framework und bietet eine Sammlung von Design- und Steuerungselementen auf Basis von HTML5. Weiter stellt SAP mit SAPUI5 ein Konzept zum Data Binding zur Verfgung, wie es bereits in hnlicher Form aus WebDynpro bekannt ist. Damit wird der Datenaustausch zwischen Oberflche und Backendsystemen (mit SAPUI5 lassen sich auch Non-SAP-Sys-teme anbinden) gewhrleistet. Hierzu hlt das SAPUI5-Framework eine Form des Mo-del View Controller (MVC) bereit, wodurch geregelt wird, wie die Daten von der Ober-flche in die Businesslogik bzw. von der Businesslogik in die Oberflche gelangen.Mithilfe dieses Prinzips knnen schnell und einfach Oberflchen produziert werden, um erste Vorhaben umzusetzen und Eindrcke der Lsung zu vermitteln. Das Framework setzt sich dabei aber nicht nur aus SAP-ei-genen Bibliotheken zusammen, sondern bedient sich weiterer Open Source Libraries wie jQuery, Bootstrap, Cordova/Phonegap.

    Aktuell gibt es zwei Ausprgungen (auch Kombinationsvarianten genannt): eine fr mobile Anwendungszwecke und eine fr den Desktop-Bereich.

    Ein Unterschied zwischen den beiden Va-rianten liegt darin, dass die Mobile-Variante aus Performancegrnden eine kleinere und auf mobile Anwendungen hin optimierte Bibliothek umfasst. Durch die leistungsstar-ken mobilen Endgerte, die immer besser werdende Netzabdeckung und die hheren mobilen Datenraten wird der Unterschied zwischen diesen Variationen vernachls-sigbar. Lediglich die Anpassung an unter-schiedliche Bildschirmgren mithilfe von Responsive Design ist wirklich relevant.

    Frameworks

    Bei SAPUI5 handelt es sich, wie gesagt, um ein Framework. Zur Einordnung wollen wir deshalb kurz auf die Vor- und Nachteile sol-cher Frameworks eingehen.

    Bei einer Eigenentwicklung steht man immer vor der Frage, ob man bereits exis-tierende Frameworks verwendet oder ob alles selbst entwickelt wird. Dazu hrt man als Entwickler oft die Aussage: Verwende doch lieber ein vorhandenes Framework und erfinde nicht immer das Rad neu. Es gibt aus unserer Sicht zwei Indikatoren, die Aufschluss fr die Nutzung eines Frame-works geben knnen: erstens der Einsatz-zeitraum der Lsung, zweitens die Flexibi-litt im Hinblick auf die Anpassbarkeit an neue Anforderungen.

    Will man schnell etwas Vorzeigbares erzeugen, knnen Frameworks mit Sicher-heit das Mittel der Wahl sein. Will man die

    Mehr als eine technische Fragestellung

    HTML5 vs. SAPUI5Nach wie vor beherrschen alt wirkende, blau dominierte Oberflchen die Standard-SAP-Welt. Sie ori-entieren sich weniger am individuellen Nutzen als vielmehr an der Abbildung von allgemeingltigen Prozessen. Aber: SAP Dynpro stirbt der Trend geht zu WebDynpro und SAPUI5/HTML5.

    Von Dirk Hirschmann und Elias Mistler, Pikon

    S

    enta

    vio,

    Shu

    tter

    stoc

    k.co

    m

  • INFRASTRUKTUR

    95E-3 FEBRUAR 2016

    Oberflchen

    Lsung auch langfristiger einsetzen oder so-gar dauerhaft fr nderungen offenhalten, sind beim Einsatz von Frameworks weitere Manahmen ntig, um deren Nachteile zu mildern. Grundstzlich sollte man Fra-meworks oder verwendete Komponenten immer so einbinden, dass sie nicht ele-mentarer Bestandteil der Lsung sind, um funktionale Abhngigkeiten zu vermeiden. Dies kann durch eine Softwarearchitektur erreicht werden, die von Fremdkomponen-ten bestmglich abstrahiert, damit diese austauschbar bleiben. Zum Beispiel sollte es in der Ablauflogik keine Rolle spielen, welche Eingabemglichkeiten die GUI zur Verfgung stellt. Dies alles fhrt bei uns zu dem Entschluss, dass wir uns gerne anschauen, wie ein Framework arbeitet, um dann ggf. einzelne Konzepte daraus zu bernehmen. Natrlich ist dieses Vorgehen auf den ersten Blick aufwndig, doch fr Er-weiterungsanforderungen sind dann auch die entsprechenden Mglichkeiten bekannt und die Anpassungen knnen wesentlich kontrollierter und damit sicherer erfolgen.

    Frameworks setzen, wie der Name schon sagt, einen Rahmen, um Lsungen zu erstel-len. Diese Einschrnkungen knnen dabei helfen, schnelle Ergebnisse zu produzieren, da ein Framework uns viele Entscheidun-gen (bewusst oder unbewusst) abnimmt. Aber wer entscheidet sich im Endeffekt fr oder gegen ein Framework? Projektleiter? Entwickler? Die optimale Lsung wre: bei-de miteinander. Hier bestehen allerdings oft sehr unterschiedliche Meinungen und Interessenlagen:

    Risikominimierung gegen Flexibilitt, kurzfristige Ergebnisse gegen langfristige Optionsvielfalt.

    Nur wenn allen dies in gengender Tiefe bewusst ist, kann auch hier ein bewusster und richtiger Entschluss getroffen werden.

    HTML5

    Im Gegensatz zu den Frameworks (Web-Dynpro, SAPUI5) ist HTML5 lediglich eine Auszeichnungssprache und stellt die ak-tuelle Version (gem der W3C-Spezi-fikation) von HTML (Hypertext Markup Language) dar. HTML dient an sich zur Beschreibung und zum Verknpfen/Ver-binden von Web inhalten (wie z. B. Texten, Bildern, Videos) in elektronischer Doku-mentenform. Hierzu zhlen Webseiten und andere webbasierten Lsungen mit grafischer Oberflche, die mithilfe von Webbrowsern oder sonstigen Browser-En-gines dargestellt werden. Bei der Entwick-lung einer HTML-Lsung wird in der Regel auf CSS (Cascading Style Sheets) fr die Ausgestaltung von HTML-Dokumenten zurckgegriffen. Dies war auch schon in frheren HTML-Versionen der Fall und wird mit der aktuellen HTML-Version wei-terverfolgt. HTML und CSS allein reichen aber noch nicht aus, um den Leistungsum-fang von dynamischen und komplexeren HTML5-Lsungen abzubilden. Dazu wird die weitere Komponente JS (JavaScript) bentigt. JavaScript ist eine Skriptsprache, mit der Dynamik in HTML-Dokumenten realisiert wird. Da sich die mageblichen

    Ziele einer Lsung aus den fachlichen An-forderungen ergeben, bietet sich HTML5 gerade bei Oberflchen mit einem hohen Ma an Flexibilitt und individueller Ge-staltung an.

    Anwendungsszenarien

    Pikon-typische Anwendungsszenarien sehen einen Datenaustausch mit einem Back end-System (z. B. SAP ERP) vor. In SAP kann hierzu eine HTML5-Lsung mit-hilfe einer Business Server Page (BSP) oder auch in Kombination mit einer WebDyn-pro-Anwendung umgesetzt werden. Solch eine Anwendung luft nicht ausschlielich auf dem SAP-Server ab, sondern in erster Linie auf einem mobilen Client, und es muss ein Weg fr die Kommunikation mit SAP gefunden werden. Den klassischen Weg im Webumfeld stellt dafr das Inter-net Communication Framework (ICF) im SAP NetWeaver dar. Hierbei kann ein Client z.B. mithilfe eines ICF-Service Daten zum SAP-Server senden und der SAP-Server entsprechende Daten zurckliefern. Die-sen Weg erspart uns SAPUI5 mit dem SAP NetWeaver Gateway und oData Services.

    Fazit

    Zusammenfassend kann man sagen, dass eine reine HTML5-Entwicklung mit einer Mischung aus selbst erstellten und be-wusst genutzten Fremdkomponenten fr uns das Mittel der Wahl ist, auch wenn hier zur Umsetzung einiges an Wissen, Diszi-plin und Aufwand ntig ist. Aber gerade wenn ein ganzes Entwicklerteam an einer Sache arbeitet, ist es sinnvoll, an der Struk-turierung sowie Verstndlichkeit einer L-sung zu arbeiten, und der Aufwand wird mit jedem nderungswunsch, der spter folgt und umgesetzt wird, lohnender.

    Wer also mit den Einschrnkungen ei-nes Frameworks nicht leben kann, dem steht mit HTML5 auch im SAP-Umfeld ein durchaus gangbarer Weg zur Verfgung.

    Insgesamt lsst sich die Abwgung, ob und welches Framework eingesetzt wer-den soll, immer nur vor dem Hintergrund der konkreten Anforderung vor allem an die Individua-litt und die Anpassungs-fhigkeit der Sof tware entscheiden.

    Bitte beachten Sie auch denCommunity-Info-Eintrag ab Seite 99

    Dirk Hirschmann ist Senior-Entwick-ler bei Pikon fr Business Integra-tion. Seine Aufgaben umfassen die Projektleitung sowie Entwicklungs-ttigkeiten bei der Individualent-wicklung mit Abap OO, WebDynpro und HTML5.

    Elias Mistler zhlt zu den jungen Ta-lenten von Pikon. Als Berater im Be-reich Business Intelligence bewegt er sich schwerpunktmig in den Themenbereichen Analytical Front-end Design, Business Objects sowie Abap- und HTML5-Entwicklung.