How to: Erfolgreiche Entwicklung digitaler Anwendungen

(Foto: Shutterstock)
„Intuitiv“, „ansprechend“ oder „ästhetisch“ sind Begriffe, die von Kreativen wie Nutzern gerne verwendet werden, um das Visuelle und Haptische von digitalen Anwendungen wie Websites, Onlineshops, Apps oder Conversational Interfaces zu beschreiben. Fragt man hingegen Entwickler, wie ein gut gemachtes digitales Erlebnis zu sein hat, lauten die bevorzugten Charakteristika „unauffällig“, „nahtlos“ oder „unsichtbar“. Kurzum: Technologie kommt am besten zur Geltung, wenn sie gar nicht wahrgenommen wird. Diese Differenzen hinsichtlich der Denke und des Empfindens zwischen dem eher klassischen, kreativen Verständnis eines User-Experience-Designers und einem Entwickler gilt es, zu überwinden. Und zwar so, dass der Nutzer am Ende ein optisch ansprechendes digitales Erlebnis erfährt, das im Hintergrund von reibungsloser und intuitiver Technologie gestützt wird.
1. Best Practice ist nicht immer Best Practice
Insbesondere Websites und Onlineshops sollten für den Nutzer über Google schnell auffindbar sein. Jedoch ist es ratsam, Maßnahmen, die Google für eine optimale Ranking-Platzierung vorschreibt – beispielsweise sogenannte Inline-Styles und Scripting für Above-the-Fold-Seitenteile –, nur selektiv einzusetzen. Denn auf der einen Seite führt die optimierte Codierung einer Website zu schnelleren Ladezeiten, auf der anderen Seite lassen sich dadurch die Seiteninhalte schlechter warten und aktualisieren, weil die gemeingültig angestrebte Trennung von Code und Inhalt nicht eingehalten wird. Mit der Folge, dass Änderungen an wichtigen Seitenelementen, beispielsweise eine animierte Bühne, für den Redakteur nahezu unmöglich zu pflegen sind.
2. Wow-Effekte im UX-Design? Ja, aber nur, wenn sie konsistent sind
Aus technologischer Sicht ist in der Frontend-Entwicklung fast alles möglich – von pfiffigen Effekten über aufwändige Animationen bis hin zu „organischen“ Bewegungen in der Benutzeroberfläche. Doch die Erfahrung zeigt: Der Nutzer soll und will schnell zu den gesuchten Inhalten und den dafür benötigten Funktionen geführt werden – ohne dabei der Benutzeroberfläche zu viel Aufmerksamkeit zu schenken oder über vermeintliche Spielereien zu stolpern. Klingt selbstverständlich? Der Schlüssel zum Erfolg heißt Konsistenz. Nur durch den Einsatz von Software, die Programmiersprachen-Quellcodes (zum Beispiel aus CSS) in eine optisch ansprechende Form übersetzt, sowie mithilfe globaler Animations-Algorithmen gelingt es Entwicklern, systemweit eine vertraute, angenehme Umgebung für den Nutzer zu schaffen. Und zwar so, dass der Site-Besucher sich zurechtfindet und auch wohlfühlt. Um das zu gewährleisten, sollten sogar die zeitlichen Abläufe von CSS-Animationen in Millisekunden zentral definiert werden, anstatt sie als Einzelfall zu behandeln.
3. Fokus auf das Endgerät
Gute, moderne Webentwicklung muss eine Vielzahl an Endgeräten berücksichtigen. Dabei dürfen Entwickler längst nicht mehr davon ausgehen, dass sich das bevorzugte Endgerät über Bildschirm und Tastatur steuern lässt. Bereits vor Beauftragung durch den Kunden sollten sich Designer und Programmierer mit der Frage beschäftigen, wie beispielsweise die Ein- und Ausgabe per Sprach-Schnittstelle, Haptik oder Gestik funktioniert. Auch wenn die Daten- und Content-Auslieferung völlig systemunabhängig erfolgen kann, muss die visuelle, haptische oder auditorische Programmierung optimal auf das jeweilige Endgerät abgestimmt sein.
4. Design for failure: Von Problemen profitieren
Auch wenn es absurd klingt: In der Entwicklung von digitalen Erlebnissen müssen Fehleroptionen und -toleranzen berücksichtigt, vorhergesagt, einkalkuliert und vom Kunden finanziell mitgetragen werden. Ist der Auftraggeber bereit, für eine Software zu bezahlen, die – natürlich nur auf den ersten Blick – nicht richtig funktioniert, ziehen letztlich sowohl der Konsument als auch der Kunde großen Nutzen daraus. Ein Beispiel: Häufige Fehlanwendungen seitens der Nutzer können so abgefangen werden, dass sie den Nutzer automatisch, effizient und möglichst unmerklich unterstützen. Dafür eignen sich Methoden wie Autokorrektur für Fehleingaben oder automatische URL-Zuordnung und -Weiterleitung für falsche oder veraltete Adressen. Mithilfe einer langfristigen Datenaufbewahrung korrekt eingegebener Daten lassen sich außerdem manuelle Korrekturen leichter vornehmen.
5. Unsichtbare Vorgänge hinter der Benutzeroberfläche
Hardwarefehler lassen sich bis zu einem gewissen Punkt mithilfe von Fallback-Szenarien vor dem Nutzer „verbergen“: Mechanismen wie die Zwischenspeicherung von Daten (Caching), die Verteilung umfangreicher Berechnungen oder große Mengen von Anfragen auf mehrere parallel arbeitende Systeme (Lastverteilung) sowie mehrfach gespeicherte Informations- und Datenquellen (Redundanz) kommen zum Einsatz, damit Nutzer sogar katastrophale Hardwareausfälle nicht zwangsläufig bemerken.
Softwareprobleme gilt es, durch den konsequenten Umgang mit Fehlern, sogenanntem Error-Handling, in den verschiedenen Programmiersprachen (unter anderem PHP und Javascript) abzufangen. So erscheinen eventuelle Warnungen nicht auf der Benutzeroberfläche oder stören beziehungsweise verhindern die Darstellung der Websites. Darüber hinaus gilt es, auch in der Frontend-Entwicklung Alternativen mit zu programmieren, sodass es auch für veraltete Betriebssysteme und Endgeräte Nutzungsmöglichkeiten gibt. Um Softwareprobleme für den Nutzer so unauffällig wie möglich zu gestalten, sollten Entwickler bereits bei der Projektvergabe ausführlich mit dem Kunden besprechen, inwiefern beispielsweise wichtige Themen wie Barrierefreiheit oder Darksites pragmatisch auf die zu erwartenden Benutzergruppen zugeschnitten werden können.
Fakt ist: Lädt eine Webpage zu langsam, verhält sich nicht erwartungsgemäß oder ist gar nicht erst auffindbar, liegt oft ein Versagen der Technik vor. Der Anspruch jedes Entwicklers muss deshalb viel weitreichender sein, als nur grobe Fehler zu vermeiden. Es gilt, Hand in Hand mit der Kreation ein Erlebnis zu erschaffen, das den Nutzer bei jeder Handlung unmerklich unterstützt, Fehler aller Art elegant abfängt und die unfassbare Komplexität einer modernen, digitalen Anwendung effektiv verbirgt.