Agile + Usability: Produkte mit hoher Bedienqualität agil entwickeln (Teil 1)

User Interface Usability unter Zeit- und Kostendruck.
Geht das überhaupt?

Bei der Entwicklung moderner interaktiver Softwaresysteme wachsen Form und Funktion immer weiter zusammen. Viele Softwareanwendungen werden heute daher nicht mehr nur benutzt, sie werden erlebt. In diesem Zusammenhang hat sich die User Experience als wichtiger Qualitätsfaktor etabliert. Gleichzeitig herrscht jedoch in vielen Projekten ein enormer Zeit- und Kostendruck vor, weshalb viele Organisationen sich agilen Vorgehensweisen bei der Produkt- und Softwareentwicklung zugewendet haben.

Beginnend mit diesem Beitrag möchte anhand einer Serie von Beiträgen am Beispiel des agilen Entwicklungsframeworks Scrum erläutern, wie gebrauchstaugliche interaktive Systeme durch den Brückenschlag zwischen Agile und Usability auch unter schwierigen Rahmenbedingungen erfolgreich entwickelt werden können.

User Experience und Usability

Eine hohe User Experience beschreibt das erfolgreiche Zusammenspiel von Aussehen, Funktionalität und interaktivem Verhalten eines Softwaresystems. Auch eine hohe Usability kann einen Beitrag zur erlebten User Experience beitragen. Beide Qualitätskriterien entscheiden oftmals über den Erfolg oder den Misserfolg einer Softwareanwendung mit. Die Bedienqualität und das subjektive Nutzererlebnis tragen inzwischen zum Beispiel auch bei Maschinen, portablen Geräten oder gar Automobilen zum empfundenen Gesamteindruck bei. Sowohl die Usability als auch die User Experience einer Software spielen daher eine immer größere Rolle bei der Entwicklung von Software User Interfaces.

Herausforderungen bei der Entwicklung interaktiver Systeme

Um der Anforderungen an das User Interface gerecht zu werden, erhalten Methoden des Usability Engineering ebenso Einzug in Entwicklungsprozesse wie eine Sensibilisierung für das User Experience Design. Dies konfligiert jedoch häufig mit Zeit- und Kostendruck bei der Entwicklung neuer Produkte. Obwohl Produktentwicklungszeiten verkürzt werden und interaktive Softwaresysteme günstiger hergestellt werden müssen, sollen Fachexperten innovative Lösungen erzeugen. Angesichts dieses Spannungsfelds scheitern leider auch heute noch viele Projekte oder das Softwareprodukt wird nur mit unzureichender Bedienqualität ausgeliefert. Kritische Einflussfaktoren auf den Entwicklungserfolg sind zum Beispiel:

  • Die Anforderung trotz straffer Rahmenbedingungen gebrauchstaugliche Softwareprodukte zu entwickeln.
  • Der Anspruch eine hohe UI Qualität zu gewährleisten, die der Organisation auch eine strategisch wichtige User bzw. Customer Experience sicherstellt.
  • Der Einfluss von Akteuren aus weitestgehend separierten Disziplinen, darunter vor allem Soft-wareentwickler, Usability Experten und Business Analysten.
  • Das Fehlen geeigneter Methoden und Vorgehensmodelle, die solchen Herausforderungen angemessen Rechnung tragen.

Agile Entwicklungsmethoden

Agile Methoden versuchen diese Herausforderungen durch eine iterative und inkrementelle Entwicklung zu adressieren. Schnelle Release-Zyklen ermöglichen in agilen Methoden eine deutliche Flexibilisierung bei gleich bleibend hohen und fest definierten Qualitätsansprüchen. Unklare und unsichere Anforderungen werden in Kauf genommen und so vorangetrieben, dass das Projekt in Zeit und Budget realisiert werden kann. Wenn sich eine Organisation für die Prinzipien und Praktiken agiler Methoden tatsächlich öffnet, kann auf diese Weise in vielen Fällen eine deutlich kürzere Produktentwicklungszeit erreicht werden.

Die agile Softwareentwicklung hat das Denken und Handeln vieler Softwarehersteller und der am Prozess beteiligten Individuen teilweise geradezu revolutioniert. Das Team rückt in den Vordergrund, alte Leitungsfunktionen werden verwässert und Kompetenzen neu verteilt, Kommunikation ist plötzlich wichtiger als teuer bezahlte Modellierungsprogramme. Nicht in allen Organisationskulturen ist das ohne weiteres möglich. Doch dort wo agil Software entwickelt wird, entstehen viele Erfolgsgeschichten. Ebenso wie agile Methoden haben auch das Usability Engineering und das User Experience Design viele Vorgehensweisen auf den Kopf gestellt und für ein Umdenken bei der Entwicklung von Software gesorgt. Der Return-on-Invest von Usability und User Experience schlägt sich je nach Projekt und Produkt beispielsweise in reduzierten Support- und Schulungskosten, einer höheren Kundenzufriedenheit und einem größeren Markterfolg nieder. Durch die jeweiligen Vorteile ist es attraktiv und viel versprechend beide Disziplinen in einem integrierten „Agile Usability“- oder „Agile User Experience“ -Vorgehensmodell zu kombinieren.

Scrum + Usability

Natürlich müssen für die Hochzeit zwischen Agilist und Usability oder User Experience Spezialist gegenseitige Vorurteile und oft auch fachliche Sturheit überwunden werden (Memmel et al., 2008). Besonders wichtig dabei ist das Zusammenführen der Ziele beider Welten. Viele agile Projekte haben das Ziel in einem vorgegebenen Zeit- und Kostenrahmen die einfachste funktionierende Lösung zu entwickeln, die zur Erfüllung der Kundenanforderungen ausreicht. Für Usability Engineers „funktioniert“ eine Software aber meist erst dann, wenn sie eine hohe User Performance oder auch User Experience liefert.

Warum gerade das Vorgehensmodell Scrum (Schwaber & Beedle 2001; Pichler 2008) eine gute Grundlage für eine glückliche Ehe zwischen Agilisten und Usability bzw. User Experience Experten ist, diskutiere ich in meinem nächsten Beitrag. In der Zwischenzeit freue ich mich über Ihre Kommentare.

Welche Erfahrungen haben Sie mit der Kombination agiler Methoden und Usability bzw. User Experience Design?

Literatur

5 Gedanken zu „Agile + Usability: Produkte mit hoher Bedienqualität agil entwickeln (Teil 1)

  1. Horst Wigger

    Entscheidender Erfolgsfaktor bei der Kombination „Agilität+Usability“ ist nach meiner Erfahrung in unseren Kundenprojekten ein iteratives Vorgehen. Egal, ob man expertenbasiert herangeht oder mit Personas arbeitet: Es müssen schnell Zwischenergebnisse entwickelt werden, die dann ebenso schnell überprüft und in weiteren Schritten optimiert werden. Zwei Zyklen sind Minimum. vier Iterationen dauern oft schon zu lange (ergo zu teuer). Drei Iterationen sind aus meiner Sicht ein guter Kompromiss mit sehr guten Ergebnissen. Aber da wir hier überwiegend von Online-Projekten sprechen: Man muss im Grunde permanent optimieren, beobachten, testen, auswerten, optimieren, …

    Antworten
  2. Thorsten Wilhelm

    Kann ich alles auch „unterschreiben“ … Schnelligkeit ist sicherlich ein immer wichtiger Erfolgsfaktor in vielen Bereichen, keine Frage, ich möchte aber an dieser Stelle auch mal eine Lanze für die (neue) Entdeckung der Langsamkeit brechen. Für mich steht außer Frage, dass man im Falle von „mehr“ Zeit besser Ergebnisse in Bezug auf die Identifikation von Bedienprobleme und Optimierungsansätzen liefert. Warum? Weil man die Daten ganzheitlicher auswerten kann (wer protokolliert denn heute noch bei PLDs in Labtests mit?), Methoden kombinieren kann (z. B. Eyetracking und nachträgliche PLDs / Videokonfrontation) und auf diese Weise Dingen entdeckt und versteht, die bei „schnellen“ Auswertungen einfach unter den Tisch fallen. Klar kann man hier das 80/20 Prinzip anführen, aber meine Erfahrung zeigt, dass es bei Usabilitytests auf die letzten 20 Prozent durchaus ankommen kann.

    Daher mein Wunsch: „Entdeckt bei Labtests die Langsamkeit wieder …“

    Wie geht das bei den oben beschriebenen „Anforderungen“ der verschiedenen Anspruchsgruppen? Ganz wichtig erscheint mir, dass Usability-Tests und Methoden in die Projektpläne einfließen. Dann ist klar in KW x findet Test x statt. Das ist fix, allen Beteiligen bekannt und folglich kann man sich dann auch die Zeit nehmen und planen, die man braucht. Das Ergebnis ist besser, und wenn man entsprechend plant, dann dauert das Ganze in der Summe nicht länger, so meine Erfahrung.

    Antworten
  3. Pingback: Agile + Usability: Produkte mit hoher Bedienqualität agil entwickeln (Teil 2) | usabilityblog.de

  4. Pingback: Fragen an Moritz Keck zu agilen Usability-Methoden | usabilityblog

  5. Pingback: Agile Optmierung der User Experience – (K)eine Definitionssache? | usabilityblog

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.