UI Prototyping

Ana Monika Ticaloiu – 12.12.2004

Bei der Entwicklung neuer Produktkonzepte und Erweiterung alter Produkte werden häufig Fehler gemacht und falsche Entscheidung getroffen, die verheerende Folgen haben können. Um zu verhindern, dass solche Fehlentscheidungen eine Unmenge an Zeit und Geld verschwenden, wird häufig UI Prototyping verwendet. Der folgende Aufsatz soll Aufschluss über verschiedene Prototyping-Konzepte und -Werkzeuge geben.

Im Laufe der Produktentwicklung kann UI Prototyping zu verschiedenen Zeitpunkten eingesetzt werden. Je fortgeschrittener die Produktentwicklung ist, desto ähnlicher wird der Prototyp dem Endsystem in Design und Funktionalität. Am Anfang kann mit Hilfe von Demonstrationsprototypen überprüft werden, ob ein entwickeltes Konzept realisierbar und sinnvoll ist. Sie implementieren hierfür nur geringe Funktionalität. Sie helfen dabei Vorteile und Nachteile zu ermitteln und zu visualisieren, dadurch können neue Ideen generiert und Anreize für eine neue Sichtweise gegeben werden. Später kann durch funktionale Prototypen die Teilaspekte des Systems implementiert sowie Design und Interaktion eines Produktes evaluiert werden. Es werden hierfür Mock-Ups, mit und ohne Funktionalität entwickelt, die auf Aussehen und Bedienbarkeit getestet werden. Daraus können Hinweise gewonnen werden, welche Interaktionsmöglichkeiten, wie Tastatur, Lautärkeregler und Maus, benötigt werden und wie die graphische Oberfläche auszusehen hat. Auch kann ermittelt werden, welche Funktionalitäten notwendig, welche erwünscht und welche überflüssig sind. Anhand von Labormustern („Breadboards“) werden die technischen Aspekte, wie Systemarchitektur und Funktionalität untersucht, um herauszufinden welche Technologien für die Implementierung eingesetzt werden sollen. Pilotsysteme (evolutionäre Prototypen) stellen System-Vorversionen dar und können zum Zielsystem weiterentwickelt werden.

Um erfolgreiches UI Prototyping zu gewährleisten sollten einige Grundsätze befolgt werden; Es sollte nie unnötige Funktionalität implementiert werden, zum einen, um die Kosten so minimal wie möglich zu halten und zum anderen, damit zu jedem Zeitpunkt klar ist, welches Ziel mit dem jeweiligen Prototypen verfolgt wird, also welches Problem es zu lösen gilt. Bei der Zielsetzung eines Prototypen, können verschiedene Aspekte herangezogen werden. Wichtig ist vor allem, dass man sich immer die Wünsche und Anforderungen der Nutzer vor Augen hält. Darüber hinaus muss immer der Nutzen des Prototyps im Vergleich zu den durch ihn verursachten Kosten gesetzt werden. Die Lebensdauer eines Prototyps sollte klar definiert werden. Zu empfehlen sind hier bestimmte Meilensteine, wie Teammeetings oder Präsentationen. Sobald die mit dem Prototyp verfolgten Ziele erreicht wurden, sollte er beiseite gelegt und nicht weiterentwickelt werden. Jeder Prototyp sollte nur einen Teil des Systems darstellen und daher auch nicht alle Funktionalitäten verwirklichen. Für Prototypen mit mehr Funktionalität ist es auch wichtig festzulegen, ob die Funktionalität eher in die Breite, und somit viele Features implementiert werden, oder eher in die Tiefe, und somit wenige Features mit viel Funktionalität implementiert werden, geht.

Für die Präsentation und Entwicklung der verschiedenen Prototyp-Typen gibt es eine Vielzahl an Werkzeugen. Man kann hierbei unterscheiden zwischen Werkzeuge für papierbasierte Prototypen und Werkzeuge für computerbasierte Prototypen. Unter papierbasierten Prototypen versteht man Papier-Mock-Ups, die das Aussehen des Systems simulieren sollen, oder eine Diashow, die das Navigieren im System und das Design der graphischen Oberfläche darstellen soll. Papier-Mock-Ups sind Prototypen die komplett auf Papier entwickelt werden. Hierbei wird auch versucht, Check-Boxes, Drop-Down-Menus und Registerkarten durch Post-its und verschiedenfarbigem Papier zu realisieren. Die Diashow stellt eine Folge von Bildern des Interfaces dar und soll einen vorbestimmten Weg durch das System aufzeigen. Werkzeuge hierfür sind, Photoshop, CorelDraw, PowerPoint, HTML, Papier, Stifte und Schere.

Papierprototyping zeichnet sich dadurch aus, dass es wenig zeit- und kostenintensiv ist. Darüber hinaus ermöglicht es Bedienbarkeitsprobleme in einem sehr frühen Stadium zu entdecken. Papierprototypen werden vor allem dann eingesetzt, wenn es für das Design des Systems verschiedene Ideen gibt. In diesem Fall können die Prototypen mit den verschiedenen Designs von Nutzern sehr leicht getestet werden. Ein anderer Grund für den Einsatz von Papierprototypen ist gegeben, wenn man sich über wichtige Punkte noch im Unklaren ist. Diese können mit Hilfe eines Prototypen beseitigt werden. Auch könne Papierprototypen dann eingesetzt werden, wenn eine vollkommen neue Terminologie in die UI eingebunden werden soll. Diese kann so auf Usability getestet werden, bevor viel Arbeit darin investiert wird. Obwohl Papierprototyping sehr einfach und intuitiv erscheint, sind auch hier einige Regeln sinnvoll. Bevor man anfängt das zukünftige Design der UI bildlich darzustellen, sollte man sich eine Liste, mit den für den Benutzer am wichtigsten und gebräuchlichsten Anforderungen, anfertigen. Diesem Punkt folgt die bildliche Darstellung und zum Schluss sollte das System von Nutzern getestet werden.

Computerbasierte Prototypen sind weiterentwickelter als papierbasierte Prototypen und sollen das User Interface sowohl in Design als auch in Funktionalität simulieren. Sie sollten sehr schnell und kostengünstig zu entwickeln sein. Es lassen sich iconbasierte, kartenbasierte und zeitlinienbasierte Tools unterscheiden. Zu den iconbasierten Systemen werden Macromedias Authorware und Aim Techs IconAuthor gezählt. Das Konzept solcher Programme besteht darin, Interaktion zwischen verschiedenen Objekten durch Icons darzustellen. Diese Icons, die die einzelnen Elemente des Displays symbolisieren, können aus einer Auswahlpalette mit vordefinierten Icons, in ein Flussdiagramm gezogen werden. Dabei können für jeden Icon einzeln Parameter festgelegt werden. Diese Art von Werkzeugen ermöglicht eine sehr rasche Entwicklung des Prototypen, leider ist die Funktionalität aber durch die Programmierlogik der vordefinierten Icons eingeschränkt.

Die zweite Art von Werkzeugen sind die kartenbasierten Tools. Das am weitesten verbreiteste Programm in dieser Kategorie ist Hypercard von Apple und SuperCard von Allegiant. Bei solchen Programmen werden einzelne Zustände des Displays durch eine Karte dargestellt, auf der sich Buttons und Grafiken befinden. Der Sprung zu einer anderen Karte, soll eine Veränderung des Bildschirmes simulieren. Daher gleicht die Navigation durch das Systeme einer Slideshow. Es kann auch eine bessere Interaktion durch Implementierung einer Scriptsprache erreicht werden. Kartenbasierte Werkzeuge sind vergleichbar mit Html-Editoren, die ein statisches Konzept besitzen. Auch hier werden Dokumente über Links miteinander verknüpft.

Die dritte Art von Tools sind zeitbasiert, wie z.B. Flash und Director von Macromedia. Das Konzept hier ist, dass die einzelnen Bilder das Display zu einem bestimmten Zeitpunkt darstellen. Obwohl beide Programme für Animationen mit linearer Zeitabfolge gedacht waren, stellen sie robuste Skriptsprachen zur Verfügung, die auch eine Interaktion erlauben, die nicht linear der Zeitfolge ist. Welcher der zwei Werkzeuge die richtige Wahl ist, ist abhängig von den Beschränkungen des zu entwickelnden Systems, von den Anforderungen an die Bandbreite und von der Forderung nach Erweiterungsmöglichkeit.

Insgesamt ist noch zu sagen, dass nicht jede Form von UI Prototyping für jede Produktentwicklung sinnvoll ist.

Literaturhinweise

http://msdn.microsoft.com/library/default.asp?url=/library/en-s/dnhfact/html/hfactor9_6.asp

http://www.paperprototyping.com/what.html

http://www.cs.sunysb.edu/~tony/364/tools/tools.html

http://www.usabilitynet.org/tools/prototyping.htm

http://today.java.net/pub/a/today/2003/12/23/sixSigns.html

http://www.mmk.ei.tum.de/lehre/ebof.html

http://www.uiweb.com/issues/issue12.htm