
Dies ist der zweite Teil des Blogs "Strategische Herangehensweise bei der App-Entwicklung", den man hierzu vielleicht auch noch lesen möchte...
Hat man die Idee, geht es an die Umsetzung. Der Anspruch muss dabei immer sein eine App zu bauen, die andere begeistert. Aus meiner Sicht gibt es dafür vier wichtige Kriterien:
- Funktion / Nutzen
- Usability
- Design
- Performance
Ihr merkt schon: diese Kriterien decken sich auch im weitesten Sinne mit den Bewertungskriterien, die wir hier bei AndroidPIT in unseren Testberichten verwenden. Ich trenne hier allerdings „Bildschirm & Bedienung“ in Usability und in Design. Es sind zwei Punkte, die bei der Umsetzung einer App getrennt voneinander zu betrachten sind. Eine gut App mit tollem Design muss nicht zwangsläufig auch eine gute Usability haben. Und umgekehrt. Bei „Funktionen & Nutzen“ ist es sehr viel schwieriger eine echte Abgrenzung hinzubekommen.
Dass eine App gute Funktionen und einen echten Nutzen braucht, ist klar. Hier kann man zur Überprüfung des Vorhandenseins nur wenig Tipps und Tricks geben.
Performance
Performance ist ein sehr kritisches Thema bei Software. Kunden haben nur sehr wenig Verständnis wenn Software nicht schnell und flüssig läuft. Durch die starke Hardware-Fragmentierung im Android Market ist dies sicherlich nicht immer eine leichte Aufgabe. Denn will man einhundert Prozent aller Android User erreichen, müsste man für alle Geräte seine App optimieren. Dies gilt nicht nur für die Performance, sondern natürlich auch für das User Interface, das aufgrund der verschiedenen Bildschirmgrößen und –auflösungen immer wieder angepasst werden muss.
Wie gesagt: will man alle Android-Nutzer mit einer Top-Qualität erreichen, muss man auch jedes Release einer App auf allen Geräten testen. Das wiederum ist kaum wirtschaftlich. Und im Normalfall auch praktisch nicht machbar.
Mein Ansatz ist es im Vorfeld genau zu überlegen für welche Zielgruppe man seine App baut. Sind es eher Studenten? Oder sind es eher Business-Leute für die Du das Produkt bauen willst? Sind es Frauen oder eher Männer, die das Programm verwenden? Ist es eine junge oder eine ältere Zielgruppe? Mit diesen Informationen kannst Du dann erarbeiten welche Hardware Deine zukünftigen Kunden in der Mehrheit hat – und die App dann genau darauf optimieren. Auf diese Weise wird der Aufwand deutlich minimiert, ohne dass Du in Deiner Kernzielgruppe Qualitätsverluste hast.
Usability / Design
Ich will mein Augenmerk vor allem auf Usability und Design richten. Diese beiden Aspekte werden aus meiner Sicht bei Android noch immer viel zu oft stiefmütterlich behandelt. Dabei sind kritisch für den Erfolg. Eine App, dessen Nutzerführung sich nicht sofort erschließt wird es sehr viel schwerer haben als eine bei dem jedem Nutzer sofort klar ist wie man damit umzugehen hat.
Ich selber gehöre auch zu den Menschen, die keine Gebrauchsanweisung lesen. Zumindest solange nicht, solange das Gerät noch funktioniert. Wenn es dann zu spät ist, greift man(n) zum Beipackzettel, auf dem die richtige Bedienung steht. Oder gestanden hätte! Ich bin aber auch der Auffassung, dass man als „Produktbauer“ den Anspruch haben sollte auf die Gebrauchsanweisung gänzlich verzichten zu können. Hier können wir in der Tat sehr viel von Apple lernen, die genau auf dieses Konzept gesetzt haben.
Ganz grundsätzlich gibt es fünf wichtige Grundregeln die man bei der Usability beachten sollte:
- Jeder Screen sollte immer nur eine Sache auf einmal anzeigen, selbst wenn es eine Liste ist.
Menschen können sich nur auf eine Sache konzentrieren. Alles was ablenkt wird unweigerlich dazu führen, dass man es nicht wahrnimmt. Oder dass man selber verwirrt wird. Das wiederum führt bei den Usern dazu, dass diese Frustration gegenüber dem Programm aufbauen – und dann natürlich irgendwann aufhören es zu verwenden.
Ein gutes, wenn auch extremes Beispiel ist Spira Defense, ein Tower Defense Game. Es ist an sich ein wirklich gutes Game mit vielen innovativen Features. Es hat aber einen großen Fehler: es ist durch und durch unübersichtlich! Denn alle Informationen, die Ihr auf diesem Bild seht, sind für das Spielen von Spira Defense außerordentlich wichtig. Versteht man nicht wo man welche Informationen findet, wird man dieses Tower Defense Game auch nicht spielen können. Zumindest nicht richtig.
Dass das fatale Auswirkungen auf die Conversion-Rate (das Verhältnis von Spielern, die nichts bezahlen hin zu Spielern, die die Vollversion kaufen) hat, kann man alleine an den vielen Market-Kommentaren lesen. Was noch viel schlimmer ist: viele Spieler finden es laut Market-Kommentare nach kurzer Zeit langweilig. Dem wäre aber nicht so, würde man alle Features des Spiels auf einen Blick entdecken. Ich habe mich wirklich lange Zeit mit diesem Game befasst. Es hat eine wirklich durchdachte Spielintelligenz, die einem richtig langen Spielspaß garantieren könnte – würde man das Game bedienen können.
Wie gesagt: der Mensch kann sich nur auf eine Sache konzentrieren. Es geht immer „um den nächsten Schritt“, den der Nutzer bei einem Programm machen soll. Der App Entwickler muss sich tief in diesen Prozess hineindenken. Das ist in vielerlei Hinsicht ein komplex. Zum Einen, weil man sich bildlich vorstellen muss wie das Produkt am Ende aussieht. Und zum Anderen, weil eigentlich erst die Nutzerführung klar sein muss bevor die Logik entwickelt wird. Sprich: stellt man später fest, dass man hier einen Fehler gemacht hat, wird man immer sehr viel Nacharbeit haben. Und dazu sind scheinbar viele Entwickler bisher bei Android nicht bereit.

- Minimiere die Anzahl der Elemente auf dem Screen soweit auch immer möglich.
Auch hier könnte man Spira Defense als Beispiel heranziehen. Ich möchte euch aber noch einen Screenshot präsentieren. Bei meinem Test zu „Net Counter“ ist mir dieses Bild untergekommen:

Net Counter ist eine App mit der man den Traffic des Telefons messen kann. Die App an sich ist wirklich gut. Aber man merkt auch hier, dass der Entwickler sich nicht auf das Wesentliche konzentrieren konnte. Sehr oft ist es nämlich so, dass man als Entwickler zeigen will wie „geil“ die eigene App ist.
Das ist auch hier offensichtlich der Fall! Hier kann der Enduser zwischen Bytes, Kilobytes, Megabytes, Gigabytes und Terabytes wählen – weil es das Programm eben scheinbar kann. Aber ist es auch sinnvoll? Nehmen wir an, ich würde mich für „Bytes“ entscheiden. Der Traffic würde irgendwann astronomische Zahlen annehmen und ich könnte gar nichts ablesen. Umgekehrt wage ich es zu bezweifeln, dass man seinen Traffic in „Terabytes“ sehen muss. Vor allem auf einem Mobiltelefon!
Solche Dinge verwirren User nur, als ihnen zu helfen sich für das Richtige zu entscheiden. Nutzer, die sich mit diesen Messzahlen nicht so gut auskennen, werden verunsichert. Und damit auch wieder frustriert. Weniger ist mehr!
- Vergrößere dafür die UI Elemente auf eine Größe, dass diese leicht gedrückt werden können.
Es gibt Tage, da verfluche ich mein Android Phone! Vor allem dann, wenn ich versuche Texte ohne automatische Rechtschreibhilfe zu schreiben. Es gelingt mir nur sehr selten alle Buchstaben eines Wortes korrekt zu treffen. Irgendwie kann man das aber bei einer Tastatur noch verstehen. Es liegt in der Natur der Sache, dass es komplex ist die vielen Buchstaben des Alphabets platzsparend, und dennoch für den Finger gut erreichbar zu platzieren. Das Schlimme ist aber natürlich, dass wir Smartphone-Besitzer kein T9 mehr lesen können... ;-)
Es trifft aber das eigentliche Grundprobleme recht gut. Wir wollen als User eine simple und schnelle Bedienung unseres Telefons. Und das am Besten mit einer Hand. Große Flächen, die man schnell und einfach berühren und bedienen kann helfen uns dabei – und vermeiden Frustration!
- Verzichte auf spezielle Einstellungen soweit es geht. User werden fast immer die Default-Einstellungen verwenden.
Natürlich! Es ist toll, wenn man selber jede Menge Dinge in der Software einstellen kann. Vor allem dann, wenn man sich in der Materie gut auskennt und so etwas wie ein „Pro“ ist. Was aber, wenn man das nicht ist? Dann wird man durch notwendige Einstellungen überfordert.
Von daher: suche Deine Default-Einstellungen und erwarte nicht von Deinem Kunden, dass er es selber tut.
- Je mehr Details es gibt, desto eher neigt man dazu von links nach rechts zu arbeiten!
ABER: Man sollte zunächst von oben nach unten (oder auch von unten nach oben) arbeiten, dann erst von links nach rechts. Das heißt, dass man eine Struktur nicht in die Breite ziehen, sondern über Klappmenüs diese nach unten ziehen sollte. Das vereinfacht dem Nutzer das Arbeiten mit dem Interface ungemein.
Grundsätzliches Vorgehen um Usability zu erarbeiten
Hier noch ein Tipp, wie man am Besten vorgeht um sich die Usability für das eigene Produkt zu erarbeiten, oder diese zu überprüfen.
Stellt Euch eine lange Wand vor und stellt dort all Eure Nutzer auf, die das Telefon benutzen sollen. Die Nutzer, die über viel Wissen verfügen sollen sich dabei rechts aufstellen. Je weniger Wissen bei einem Nutzer vorhanden ist, wie er das Produkt bedienen soll, desto weiter links wird dieser eingereiht.
Betrachtet man nun diese Wand von links aus, weiss man nun für jeden User seinen „Current Knowledge Point“ – also den Status Quo des Wissenstandes über das User Interface.

Die Frage ist nun wie viel Wissen der Nutzer mindestens braucht, um die Software bedienen zu können. Dieser Punkt ist der „Target Knowledge Point“, also der Zielpunkt.

Das „Knowledge Gap“ ist die Strecke, die man mit einem User Interface zurücklegen muss, um (möglichst) alle Nutzer in die Lage zu versetzen das Produkt ohne Schulung oder Gebrauchsanweisung bedienen zu können. Ein User Interface Designer muss dabei nur nach links arbeiten und sein User Interface so gestalten, dass das „Knowledge Gap“ möglichst komplett geschlossen wird. Hinter dem „Target Point“ braucht ein UI-Desigern übrigens nicht mehr weiter überlegen. Diese Informationen sind für Nutzer uninteressant.
Fazit
Mir ist klar: das ist alles eine echte Herausforderung. Man sollte aber nicht mit dem Anspruch herangehen, dass Nutzer ein Produkt genauso bedienen und verwenden, wie man es selber tut. Ich bin der festen Überzeugung, dass Design und Usability zu den größten, aber auch wichtigsten Herausforderungen eines Produktes gehören. Das Auge „isst“ eben mit. Und ist selbst das perfekteste Produkt nicht, oder nur schlecht zu bedienen, kann es keinen durchschlagenden Erfolg haben! Beispiele dafür gibt es genügend. Ich bin mir sicher, dass fast jeder ein solches kennt.
Wie Steve Jobs immer zu sagen pflegt: „There must be a better way...“
In den nächsten Tagen folgt dann der dritte und letzte Teil dieser Reihe...

Tom Tasche
Bezüglich "Verzichte auf spezielle Einstellungen soweit es geht. User werden fast immer die Default-Einstellungen verwenden.":
Naja, der Vorteil meine App (SayMyName) ist hauptsächlich, dass man so ziemlich alles einstellen kann. Um "unerfahrene" User trotzdem nicht zu verwirren, finden sich alle Einstellungen in den "Erweiterten Einstellungen". Dadurch hoffe ich "Unerfahrene" davon abzuhalten das Programm falsch einzustellen.
Ich finde Einstellungen sind wichtig. Viele! Aber man sollte den User auch schützen...
Übrigens verändern meiner Erfahrung nach viel zu viele User die Einstellungen. ;) Daher bekomme ich auch unzählige Mails, weil die App angeblich nicht funktioniert...
Tom