27.10.2005, 18:06 Uhr
Mit HCI über Stolpersteine
Die Softwareentwicklung steht und fällt mit der Beherrschung der Anforderungen. Die Erfahrung zeigt, dass in der Analyse der Benutzer und deren Arbeitsumfeld noch viel Potenzial für Verbesserungen liegt.
Sara ist diplomierte Wirtschaftsinformatikerin. Als Businessanalystin bei einer Bank soll sie ein Supportsystem für Kundenberater spezifizieren. Ziel ist, die Qualität der Beratung zu verbessern. Wie geht sie am besten vor? Für Sara ist klar: Das Supportsystem erzielt den grössten Effekt, wenn es sich optimal in die Arbeitsabläufe des Beraters integriert. Sie entscheidet sich deshalb, Techniken aus der Human Computer Interaction (HCI) anzuwenden. HCI stellt den Anwender und sein Umfeld ins Zentrum. Dabei werden neben der Informatik auch Erkenntnisse aus der Psychologie, den Arbeitswissenschaften und der Soziologie herangezogen.
In der Phase vor der eigentlichen Realisierung widmet sich Sara der Problemstellung. Sie analysiert zum Beispiel, wie sich Qualität in einem Beratungsgespräch äussert und wo tatsächlich Verbesserungspotenzial existiert. Aus diesen Erkenntnissen erarbeitet sie die Rahmenbedingungen und die notwendige Funktionalität, um das Verbesserungspotenzial auszuschöpfen. Sara konkretisiert Ideen, wägt Nutzen, Beschränkungen, Risiken und Kosten ab und fokussiert zusammen mit den Entscheidungsträgern auf die wesentlichen Aspekte. In diesem Prozess überprüft Sara immer wieder die erarbeiteten Resultate. Es entsteht die Anforderungsspezifikation, die beschreibt, welche Funktionalität mit welcher Priorität zu liefern ist.
In der Phase vor der eigentlichen Realisierung widmet sich Sara der Problemstellung. Sie analysiert zum Beispiel, wie sich Qualität in einem Beratungsgespräch äussert und wo tatsächlich Verbesserungspotenzial existiert. Aus diesen Erkenntnissen erarbeitet sie die Rahmenbedingungen und die notwendige Funktionalität, um das Verbesserungspotenzial auszuschöpfen. Sara konkretisiert Ideen, wägt Nutzen, Beschränkungen, Risiken und Kosten ab und fokussiert zusammen mit den Entscheidungsträgern auf die wesentlichen Aspekte. In diesem Prozess überprüft Sara immer wieder die erarbeiteten Resultate. Es entsteht die Anforderungsspezifikation, die beschreibt, welche Funktionalität mit welcher Priorität zu liefern ist.
Projektbeispiel: Stolpersteine im Arbeitsumfeld
Die Versicherung AG erneuert ihre Offertsoftware für Broker. Die Applikation wird auf einem Computer installiert und Anträge müssen vollständig an einem Arbeitsplatz behandelt werden. Einige grössere Partnerfirmen (etwa 22 Prozent der Anträge) weisen ihren Brokern die Arbeitsplätze nicht fest zu. Beim Wechsel des Arbeitsplatzes verlieren die Broker die Antragsdaten. Ein weiteres Problem ist die Vertraulichkeit: Die Software zeigt Hinweise, die nicht für den Versicherungsnehmer bestimmt sind. Trotzdem füllen etwa 12 Prozent der Broker die Formulare vor den Augen der Versicherungsnehmer direkt am Computer aus.
Das Projektbeispiel zeigt Gegebenheiten im Arbeitsumfeld, welche Eckpfeiler der Software selber in Frage stellen. Klassische Methoden des Software Engineering entdecken solche Fälle nicht zuverlässig, da sie die Arbeitsumgebung nicht gezielt untersuchen.
Sara arbeitet deshalb zusätzlich mit Techniken der HCI, zum Beispiel mit Contextual Design. Damit erstellt sie aufgrund von Interviews und Beobachtungen aussagekräftige Modelle des Arbeitsumfeldes und Skizzen der Benutzerschnittstelle, so genannte User Interface Mock-ups. Die gewonnenen Erkenntnisse verankert sie mit Personas im Entwicklungsteam. Eine Persona bezeichnet eine archetypische Person und charakterisiert die Schlüsseleigenschaften von Benutzern. Sara überprüft die Resultate regelmässig mit speziellen Techniken, wie Usability Walkthroughs und dokumentiert die Entscheide mit Storyboards.
Sara arbeitet deshalb zusätzlich mit Techniken der HCI, zum Beispiel mit Contextual Design. Damit erstellt sie aufgrund von Interviews und Beobachtungen aussagekräftige Modelle des Arbeitsumfeldes und Skizzen der Benutzerschnittstelle, so genannte User Interface Mock-ups. Die gewonnenen Erkenntnisse verankert sie mit Personas im Entwicklungsteam. Eine Persona bezeichnet eine archetypische Person und charakterisiert die Schlüsseleigenschaften von Benutzern. Sara überprüft die Resultate regelmässig mit speziellen Techniken, wie Usability Walkthroughs und dokumentiert die Entscheide mit Storyboards.
Projektbeispiel: Personas und Geschichten
Auf Papier entsteht der erste Wurf der Benutzerschnittstelle einer neuen Produktionsanlage. Die Benutzer sind über die ganze Welt verstreut. Sie werden als Personas modelliert und agieren in Geschichten der Benutzung. Anhand dieser Storyboards erarbeiten Experten aus Produktion und Verkauf in zwei Workshops die benötigte Funktionalität. Das Resultat sind detaillierte Skizzen des Bedienterminals. Daraus leitet ein erfahrener Softwareentwickler die funktionale Spezifikation mit Use Cases ab.
Die HCI-Methodik widerspricht der vertrauten Arbeitsweise vieler Softwareentwickler. Diese konzentrieren sich vor allem auf die technische Umsetzung und erwarten, dass ihre Stakeholder das Problem verstehen und die passende Lösung in Form von benötigter Funktionen formulieren. HCI hingegen geht davon aus, dass wichtige Stolpersteine im Arbeitsumfeld nicht bekannt sind und vorgeschlagene Funktionen wesentliche Bedürfnisse der Benutzer nicht berücksichtigen.
Sara spricht deshalb gezielt mit Kundenberatern und weiteren Beteiligten. Dabei modelliert sie die Stärken und Schwächen einer Lösung im Arbeitsumfeld. Als Grundlage in den Gesprächen verwendet Sara Skizzen der Benutzerschnittstelle.
Sara spricht deshalb gezielt mit Kundenberatern und weiteren Beteiligten. Dabei modelliert sie die Stärken und Schwächen einer Lösung im Arbeitsumfeld. Als Grundlage in den Gesprächen verwendet Sara Skizzen der Benutzerschnittstelle.
Projektbeispiel: Prototyping und Usability Testing
Ein interaktives Gerät in der Garderobe eines Kleidergeschäfts vereinfacht die Anprobe. Der Kunde kann mit dem Verkäufer Kontakt aufnehmen, ohne die Kabine zu verlassen. Die ersten Skizzen entstehen auf Papier und werden mit Verkäufern und Käufern im Kleidergeschäft durchgespielt. Das Feedback verbessert die Funktionalität, die Strukturierung und die Gestaltung. Interaktive Prototypen werden Schritt für Schritt aufgebaut und in der simulierten Garderobe im Usability Labor getestet.
Ein interaktives Gerät in der Garderobe eines Kleidergeschäfts vereinfacht die Anprobe. Der Kunde kann mit dem Verkäufer Kontakt aufnehmen, ohne die Kabine zu verlassen. Die ersten Skizzen entstehen auf Papier und werden mit Verkäufern und Käufern im Kleidergeschäft durchgespielt. Das Feedback verbessert die Funktionalität, die Strukturierung und die Gestaltung. Interaktive Prototypen werden Schritt für Schritt aufgebaut und in der simulierten Garderobe im Usability Labor getestet.
Auch Sara testet gleich von Beginn an konkrete Ideen in realitätsnahen Situationen. Damit erhält sie laufend das Feedback der Kundenberater. Diese holen Sara auf den Boden der Realität zurück und öffnen sich dabei selber für neue Ideen. So erhöht Sara die Akzeptanz der Lösung markant.
Dies ist ein deutlicher Unterschied zur heute praktizierten Modellierung mit Use Cases: Auch wenn sie gut geschrieben sind, bleiben Use Cases für den Benutzer abstrakt. Die Auswirkungen auf die tägliche Arbeit lassen sich nur schwer abschätzen und entsprechend äussern sich Benutzer im Wesentlichen über den beschriebenen, fachlichen Inhalt. Auf Use Cases, die nur grob beschrieben sind, erhält der Softwareentwickler nur vages Feedback. Beim angewandten Top-down-Vorgehen sind Details aber erst dann vorhanden, wenn die Eckpfeiler eines neuen Systems festgelegt sind und Offerten von Herstellern eingeholt werden. Die Benutzerseite muss Korrekturen über ein aufwändiges und restriktives Änderungsverfahren einbringen.
Dies ist ein deutlicher Unterschied zur heute praktizierten Modellierung mit Use Cases: Auch wenn sie gut geschrieben sind, bleiben Use Cases für den Benutzer abstrakt. Die Auswirkungen auf die tägliche Arbeit lassen sich nur schwer abschätzen und entsprechend äussern sich Benutzer im Wesentlichen über den beschriebenen, fachlichen Inhalt. Auf Use Cases, die nur grob beschrieben sind, erhält der Softwareentwickler nur vages Feedback. Beim angewandten Top-down-Vorgehen sind Details aber erst dann vorhanden, wenn die Eckpfeiler eines neuen Systems festgelegt sind und Offerten von Herstellern eingeholt werden. Die Benutzerseite muss Korrekturen über ein aufwändiges und restriktives Änderungsverfahren einbringen.
Projektbeispiel: Problemanalyse vor der Spezifikation
Die Ereignismanager eines Transportunternehmens sind für die Behandlung von Ausfällen zuständig. Kern der Lösungsidee ist die teilautomatisierte Anpassung der operationellen Daten. Videoanalysen, Designworkshops und Interviews mit Ereignismanagern zeigen, dass nicht die Umsetzung der Massnahmen (etwa 20 Prozent des Aufwandes), sondern die Abstimmung mit den externen Partnern (etwa 50 Prozent des Aufwandes) eine Verbesserung verspricht. Während der Analyse entsteht der Prototyp eines User Interface, das die notwendige Funktionalität bietet, um die Abstimmung zu verbessern. Ausgehend von diesem Prototyp detailliert der Software Hersteller die Use Cases.
Die Ereignismanager eines Transportunternehmens sind für die Behandlung von Ausfällen zuständig. Kern der Lösungsidee ist die teilautomatisierte Anpassung der operationellen Daten. Videoanalysen, Designworkshops und Interviews mit Ereignismanagern zeigen, dass nicht die Umsetzung der Massnahmen (etwa 20 Prozent des Aufwandes), sondern die Abstimmung mit den externen Partnern (etwa 50 Prozent des Aufwandes) eine Verbesserung verspricht. Während der Analyse entsteht der Prototyp eines User Interface, das die notwendige Funktionalität bietet, um die Abstimmung zu verbessern. Ausgehend von diesem Prototyp detailliert der Software Hersteller die Use Cases.
Die Erfahrung zeigt, dass die enge Zusammenarbeit des Softwareprojektteams mit den Benutzern entscheidend ist. Heute werden gerne Benutzer aufgeboten, die Geschäftsprozesse zu beschreiben und daraus Use Cases abzuleiten. Doch Use Cases beschreiben die Problemlösung. Der Ersteller benötigt technisches Wissen. Use Cases sollten von erfahrenen Personen aus der Softwareentwicklung erstellt werden, die ein Verständnis für das Geschäftsumfeld mitbringen.
Menschen berichten am zuverlässigsten über selbst Erlebtes. Sara holt die Kundenberater genau da ab: Sie findet die Lösung in der Auseinandersetzung mit der täglichen Arbeit der Berater in Interviews. In Workshops werden Fallbeispiele diskutiert und passende Arbeitsmittel entworfen. Storyboards illustrieren die kritischen Entscheide und erklären die Konsequenzen der gewählten Lösung realitätsnah und verständlich. Die Ideen überprüft Sara mit Kundenberatern durch Usability Walkthroughs in realistischen Situationen. Parallel dazu spezifiziert sie die Lösung mit Use Cases für die Software Entwickler.
Menschen berichten am zuverlässigsten über selbst Erlebtes. Sara holt die Kundenberater genau da ab: Sie findet die Lösung in der Auseinandersetzung mit der täglichen Arbeit der Berater in Interviews. In Workshops werden Fallbeispiele diskutiert und passende Arbeitsmittel entworfen. Storyboards illustrieren die kritischen Entscheide und erklären die Konsequenzen der gewählten Lösung realitätsnah und verständlich. Die Ideen überprüft Sara mit Kundenberatern durch Usability Walkthroughs in realistischen Situationen. Parallel dazu spezifiziert sie die Lösung mit Use Cases für die Software Entwickler.
Fazit
HCI-Techniken erlauben es, die Herausforderungen im Arbeitsumfeld zu entdecken und auszunutzen. Sie binden die Benutzer konstruktiv und geführt in den Lösungsprozess ein und ergänzen die klassischen Methoden des Software Engineerings: Use-Case-Übersicht und Risikoanalyse lenken die HCI-Techniken, sodass die erarbeitete Lösung mit qualitativ hohen Use Cases spezifiziert werden kann. Das Potenzial der Benutzer kann so effektiv genutzt werden.
HCI-Techniken erlauben es, die Herausforderungen im Arbeitsumfeld zu entdecken und auszunutzen. Sie binden die Benutzer konstruktiv und geführt in den Lösungsprozess ein und ergänzen die klassischen Methoden des Software Engineerings: Use-Case-Übersicht und Risikoanalyse lenken die HCI-Techniken, sodass die erarbeitete Lösung mit qualitativ hohen Use Cases spezifiziert werden kann. Das Potenzial der Benutzer kann so effektiv genutzt werden.
Zum Autor: Markus Flückiger ist Software-Engeneering-Berater bei Zühlke Engineering.
Markus Flückiger