Neulich habe ich mich ein wenig in die Techniken zur Entwicklung von Apps für das iPad der Firma Apple eingelesen. Dabei habe ich mich insbesondere auf den Entwurf des User Interfaces konzentriert, und auf die Methoden, die hierbei zum Einsatz kommen.
Die bei der App-Entwicklung eingesetzten Methoden eignen sich hervorragend, um generell Software zu spezifizieren und zu entwickeln. Daher gehe ich hier auf einige ausgewählte Aspekte meiner kleinen Nachforschung ein.
Wer ein Smartphone besitzt, oder ein iPad, der weiß, daß die Bedienung dieser Geräte ganz anders abläuft, als die Bedienung eines PCs. Während man beim PC die Tastatur benutzt, um Eingaben zu machen, oder Programme über Menues steuert, bedient man die obigen Geräte mit dem Finger/der Hand, und macht Eingaben über eine virtuelle Tastatur (so sie unbedingt notwendig sind).
Auch sind die Bildschirme, die zum Einsatz kommen – zumindest bei Smartphones – sehr viel kleiner, als auf dem PC üblich, und die Benutzeroberfläche sehr viel grafischer orientiert.
Die besonderen Eigenschaften der Hardware sorgen für geänderte Nutzungsszenarien, und sie erfordern andere Paradigmen beim Entwurf der Applikation. Generell sind solche Apps sehr viel spezieller und einfacher aufgebaut, als die üblichen Softwareprogramme. Auch ist die grafische Orientierung sehr viel stärker ausgeprägt, und sind die Usability Anforderungen, die die Software bedienen muss, wesentlich ausgeprägter.
Ein weiterer Unterschied ergibt sich aus der Technologie. Apps laufen in einer gegebenen Laufzeitumgebung auf dem mobilen Gerät ab, und sie können aus einer zentralen Bibliothek heruntergeladen und installiert werden. Daher müssen Apps in sehr viel stärkerem Umfang gegebenen Standards entsprechen, als dies bei konventioneller Software der Fall ist.
Um eine App zu entwickeln, benötigt man daher einen Einblick in die Anforderungen, die sich aus der Laufzeitumgebung ergeben. Und man benötigt für die App-Entwicklung Hilfestellungen, um zu einer möglichst einfachen, leicht zu bedienenden Oberfläche zu gelangen.
Generell gibt die Firma Apple umfangreiche Guidelines und Programmierguides heraus. Ein Beispiel ist die → iOS Developer Library. Darin enthalten ist die Human Interface Guideline, die man unbedingt lesen sollte, bevor man überhaupt mit der Entwicklung im iPad Umfeld anfängt.
In dem Buch → Beginning iPad Development for iPhone Developers: Mastering the iPad SDK (Books for Professionals by Professionals) von Jack Nutting, Dave Woolridge and David , Apress © 2010, habe ich einige weiterführende Quellen zu verschiedenen Teilbereichen gefunden, wie zum Beispiel dem Paper Prototyping, den Digital Mockups, User Interface Icons, oder Design Considerations and Inspirations. Auf einige dieser Referenzen gehe ich nun ein.
Mit Mockups bezeichnet man Entwürfe einer Software, die erstellt werden, um die Bedienung zu prüfen. Mockups beinhalten normalerweise keine Ablauflogik, d.h. sind dementsprechend nicht funktionsfähig.
Solche Mockups kann man manuell erstellen, ganz einfach auf Papier. Oder man benutzt eine Software, die dann oft auch eine einfache Ablauflogik unterstützt. In dem obigen Buch findet man u.a. folgende Toolempfehlungen für die Erstellungvon papierbasierten iPad-Mockups:
Das Buch empfielt u.a. folgende Softwaretools zur Erstellung von Screenmockups:
Wenn Sie sich auf den Herstellerseiten einmal umsehen, werden Sie schnell erkennen, wie Ihnen Mockups im Entwurfsprozess helfen können, und, wie Sie diese umsetzen. Generell sind sie gut in der Entwurfsphase geeignet, und sie sind besonders sinnvoll einzusetzen, wenn man frühes Kundenfeedback einsammeln möchte.
Den folgenden Artikel aus dem Smashing Magazine kann ich Ihnen empfehlen, wenn für Sie auch kostenfreie → Wire-Frame-Kits, wie man Software zur Erstellung von Mockups auch nennt, in Betracht kommen. In dem Artikel erhalten Sie auch einen Eindruck von papierbasierten Systemen.
Ebenfalls aus dem Smashing Magazine stammt der folgende Artikel zum → Entwurf von Apps für das iPad. Dort können Sie sich einen ersten Eindruck über die Designpattern für das iPad verschaffen, oder den Einsatz der einzelnen Screenelemente kennenlernen. Beispiele hierfür sind Kontextmenues, oder die Verwendung von Methaphern aus der realen Welt (Über eine Wischgeste zum Beispiel auf die nächste Seite gelangen).
Weiter oben gibt es einige Hinweise aus dem Produktmanagement zu lesen, insbesondere zum Thema „Personas“:
Defining a target audience is only half of the equation. Now you have to put your audience into action! What do they do in their daily life? How will their daily life intersect with your product? Get into their minds. Try this, and I guarantee it will lead you down some expected and unexpected paths.
Dieses Zitat macht deutlich, daß der Entwurf einer iPad Application natürlich auch Kundenfeedback erfordert, und ein Design, da sich an der Aufgabenstellung des Nutzers orientiert.
In den folgenden Artikeln finden Sie weiterführende Informationen zum heutigen Thema:
Das Original dieses Artikels ist auf →Der Produktmanager erschienen (©Andreas Rudolph). Regelmäßige Artikel gibt es über die (→Mailingliste), oder indem Sie →mir auf Twitter folgen. In der Online Version finden Sie hier die versprochenen weiterführenden Links: