Latest news

04.04.2012

Interaction Designer "plus"

Combining design skills with consulting? Check out the job offer here: more

User Centered Scrum

(in German only) Agile Projektmanagement-Methoden kommen immer häufiger zum Zug. Ein gut geführter Scrum-Prozess, der auf klaren, verständlich geschriebenen und vollständigen User Stories basiert, ist sehr effizient und liefert rasch sichtbare Ergebnisse. Wird die Benutzersicht auch noch konsequent in die (GUI-) Entwicklung miteinbezogen, entstehen nicht nur einfach bedienbare und verständliche Benutzungsoberflächen, es spart auch Zeit, Geld und viel Nerven. Die Ziele und Anforderungen sind klarer definiert, die Projektsicherheit wird deutlich gesteigert.

Agile Methoden im Einsatz

Klassische Projektmanagement-Systeme werden immer häufiger mit flexiblen und mit kurzen Zeitabschnitten operierenden Vorgehensweisen kombiniert oder durch solche ersetzt. Bei service-orientierten Entwicklungsprojekten hat sich Scrum schon recht gut etabliert. Scrum ist auch, wenn die Verantwortungen klar geregelt und die Spielregeln konsequent durchgesetzt werden, ein sehr nützliches Projektmanagement-System. Die Erfahrungen, die bisher mit agilen Methoden gesammelt werden konnten, sind aber aufgrund der eher langen Projektlaufzeiten und ihrem sporadischen Einsatz noch nicht sehr vielfältig. Je nachdem, wie der agile Entwicklungsprozess vorbereitet und organisiert ist, hat das einen starken Einfluss auf die Nützlichkeit, Benutzungsfreundlichkeit und den Funktionsumfang des Ergebnisses und somit auch auf den Erfolg des gesamten Projekts.

User Centered Design ist agil

User Centered Design (UCD) bezeichnet die Entwicklung von Konzepten und deren Umsetzung, wobei die Benutzersicht stets im „Zentrum“ steht. Im User Centered Design Prozess (siehe Abbildung 1) werden Anforderungen, Design-Konzepte, Informationsarchitektur und Prototypen schrittweise (iterativ) erarbeitet. Von der Idee bis zum Prototyp wird laufend die Qualität, Nützlichkeit und Zugänglichkeit der Funktionen und grafischen Benutzeroberflächen aus Sicht der Benutzer getestet und optimiert. Das Produkt dieses Vorgehens ist beispielsweise ein Design-Mock-up, ein Benutzer-Anforderungsdokument, ein funktionaler Prototyp (Papier oder HTML,…) oder eine Informationsarchitektur. Diese Outputs sind Teil der Spezifikationen und dienen als Anschauungsmaterial und Vorgabe für die Entwickler. Im UCD entwickelte Konzepte sind die solideste Grundlage, auf welcher die Software-Entwicklung basieren kann, denn sie vereinen die Anforderungen der zukünftigen Kunden und Benutzer mit denen des Business, der Entwicklungsabteilung und des Designs. So entsteht der „gute Kompromiss“ zwischen Benutzerbedürfnis, Geschäftsziel und technischer Machbarkeit.

 

UCD und Scrum
Abb.1: Der Weg von der Idee bis zum fertigen Produkt durchläuft die Konzeptphase, in welcher das User Centered Design die unterschiedlichen Anforderungsebenen und technischen sowie betrieblichen Rahmenbedingungen berücksichtigt werden. Idealerweise wird zuerst ein vollständiges Konzept entwickelt, bevor das GUI (die grafische Benutzungsoberfläche) programmiert wird. Die Entwicklung im Scrum läuft umso effizienter, je klarer die Ziele definiert und beschrieben sind.


Was hat UCD mit Scrum zu tun?

Erfolgreiche Scrum-Projekte verfügen über einen Scrum-Master, der den Prozess konsequent moderiert und die notwendigen Entscheide fördert. Der Product Owner seinerseits verpackt die Anforderungen des Managements und der Kunden und Benutzer in verständliche und eindeutig formulierte User Stories, die von den Entwicklern mit den unterschiedlichsten Backgrounds richtig verstanden werden. Die Entwickler schätzen Aufwand und Machbarkeit Sprint für Sprint realistisch ein, was dank der klaren Zielvorgabe für das Endprodukt vereinfacht wird.

Wer im Scrum-Verfahren entwickelt, muss sich bewusst sein, dass die Qualität und der Funktionsumfang des Endergebnisses durch die zur Verfügung stehende Zeit und das eingeplante Budget limitiert sind. Weiter ist auch darauf zu achten, in der Konzeptphase alle möglichen Störfaktoren, die in der Entwicklungsphase Einfluss nehmen könnten, abzufangen. Je klarer also die Ziele (Funktionsumfang für Release 1, Qualitätsniveau) zu Beginn der Entwicklungsphase formuliert sind, desto besser stehen die Chancen, dass Funktion und Qualität des Ergebnisses den Erwartungen auch entsprechen.

Diese Ziele werden in der User Centered Design-Konzeptphase erarbeitet: Die Anforderungen des Produktmanagements und sämtlicher (potentieller) Stakeholder werden aktiv einbezogen, die technischen und betrieblichen Rahmenbedingungen (Plattformen, Frameworks, Entwickler-Skills, CI/CD etc.) werden berücksichtigt und schliesslich werden die Benutzeranforderungen als Prototyp oder in User Stories erlebbar gemacht.

UCD im Scrum: Praktische Umsetzung

Steht einmal ein Konzept, sind die Ziele für das Endergebnis (oder den Release 1) definiert und mit den Stakeholdern abgeglichen, geht es an die Umsetzung. Der Scrum-Prozess ist darauf zugeschnitten, komplexe Projekte mit viel Flexibilität und Handlungsspielraum für die Akteure anzugehen. Der Fokus liegt auf dem Development. Gerade in der GUI-/Frontend-Entwicklung stehen oft Fragen rund um Benutzeranforderungen, Usability oder Umsetzung funktionaler Elemente im Vordergrund und müssen pragmatisch gelöst werden.

Die gute Usability des Endergebnisses wird sichergestellt, indem der Scrum-Prozess mit User Centered Design-Elementen angereichert wird. Abbildung 2 zeigt, wie Usability im Scrum-Entwicklungsprozess eingebettet wird.

 

Usability im Scrum-Prozess
Abb. 2: Die Benutzersicht (Usability-Input) wird punktuell während den Sprints eingebracht. In vorgelagerten Usability Sprints (Usability Forward Burner Phasen) werden die User Stories mit Benutzervertretern getestet und konkrete Vorlagen für die Entwickler erarbeitet. Dem Usability-Experten kommt in den Review-Meetings die Rolle des Übersetzers zwischen Benutzer, Product Owner und Entwickler zu.


Der Usability-Forward-Burner

Die User Stories müssen vollständig und eindeutig beschreiben, wie der Service umgesetzt werden soll. Im Usability-Forward-Burner (ein dem Entwicklungssprint vorangestellter Usability-Sprint) werden die User Stories mit Benutzern abgeglichen: Als Basis dazu dienen einfache Skizzen, Mock-ups oder Klick-Dummies (HTML-Prototypen). Dem Entwicklerteam werden schliesslich nicht nur User Stories, sondern auch schon Vorlagen für die GUI-Elemente zur Verfügung gestellt, womit viele potentielle Fragen zu Bedienung, Gestaltung, Platzierung, Gruppierung und Verständlichkeit von Vornherein ausgeräumt werden.

Usability-Coaching im Sprint

In den Sprints werden Tabellen, Filter, Eingabemasken, Workflows usw. produziert. Die Usability dieser Elemente wird punktuell und sehr kurzfristig überprüft. Verbesserungsvorschläge werden direkt ins Entwicklungsteam zurück eingespeist. Auf diese Weise wird die Benutzungsqualität bereits vor dem Review-Meeting optimiert, die Qualität des Services ist höher und das Backlog wird entlastet.

Experten-Feedback im Review-Meeting

Erfahrungsgemäss ergeben sich in Review-Meetings neue Herausforderungen aufgrund der unterschiedlichen Blickwinkel von Entwickler und Product Owner. Dem Usability-Experten kommt die wichtige Übersetzer-/Vermittler-Rolle zu, wenn es darum geht, rasch machbare Lösungen zu finden und konkrete Massnahmen zu definieren. Es lohnt sich übrigens ausserordentlich, im Anschluss an die Demonstration der neu entwickelten Services ad hoc die Usability zu hinterfragen und daraus Massnahmen für den nächsten Sprint oder den nächsten Usability-Forward-Burner abzuleiten.

User Centered Design-Methoden lassen sich sehr gut in den Scrum-Entwicklungsprozess integrieren. In den Projekten, die auf eine saubere Ausarbeitung des Konzepts vor Entwicklungsbeginn verzichten, muss die Konzeptarbeit parallel zur Entwicklung stattfinden. Um die Anforderungen sowohl des Business und der Technik als auch der Benutzer und Kunden effizient einzubeziehen, sind User Centered Design-Methoden das wirksamste und am einfachsten zu steuernde Mittel.

Ein ganz konkreter Nutzen

Die Rolle des Entwicklers, des Product Owners und oft auch des Scrum-Masters findet man in den meisten Scrum-Projekten. Die Benutzer sind jedoch meist untervertreten; dies ist nachvollziehbar, ist doch das Scrum-Team auf Services, User Stories, Code, Funktionen, Use Cases und Frameworks fokussiert. Dass mit dem Usability-Experten noch eine Person mehr mitredet, bringt nur Vorteile: Langatmige Diskussionen zu Usability- oder Benutzerthemen kommen so gar nicht erst auf. Es entstehen viel weniger Reibungsverluste (das spart Geld und Nerven!).

Durch Beizug des User Centered Designs in der Konzeptphase und der Usability in der Umsetzungs- und Entwicklungsphase werden die Risiken, dass das fertige Produkt bei den Nutzern wegen mangelhafter Usability, schlecht an die Aufgabenstellung angepasster Prozessabläufe, zu wenig erlebbarem Nutzen und emotionaler Ablehnung scheitert, drastisch reduziert. Investitionen in die gute Vorbereitung lohnen sich somit in einzelnen Projekten sogar schon ab dem ersten Tag (wenn das Produkt schliesslich funktioniert und gekauft/genutzt wird).

(publiziert in der Netzwoche 1/2012)

back