Die Kano-Methode zur Priorisierung funktionaler Anforderungen

Anhand von Daten der Anwenderbefragung zu KGet zeigen wir, wie die Kano-Methode in Massively Multi-user Online Surveys eingesetzt werden kann.

KGet ist der Download-Manager von KDE. Für die aktuelle Portierung auf die KF5 Frameworks  wurden auch die Funktionen einer Prüfung unterzogen. In einem Online-Test wurden Anwender zu ihrer Meinung gefragt und sollten außerdem angeben, welche Anforderungen und Wünsche sie an das Programm stellen. Die Auswertung zum aktuellen Programm gibt es unter „What people think about KGet„, die Ergebnisse der Anforderungsanalyse folgen in diesem Beitrag.

Einführung

Die Analyse von Kundenwünschen ist ein entscheidender Bestandteil der Softwareentwicklung. Anforderungen müssen nicht nur vollständig erfasst, sondern auch priorisiert werden. So gibt es eine Reihe von Funktionen, die selbstverständlich sind und kaum als eine Produktanforderung aufgelistet werden, wie zum Beispiel das Speichern von geänderten Daten. Andere Anforderungen sind wiederum spezifisch und durch den tatsächlichen Workflow des Benutzers determiniert. Und manche Funktionen können auch unerwünscht sein, wie zum Beispiel ein implizite Speichern von Dokumenten, das die bisherige explizite Aktion überflüssig macht.

Kano-Methode

Die Kano-Methode adressiert diese Thematik, indem zu jeder Funktion die Relevanz erfragt wird:

  • Das würde mich sehr freuen (I like it that way)
  • Das setze ich voraus (I expect it that way)
  • Das ist mir egal (I am neutral)
  • Das nehme ich gerade noch hin (I can live with it that way)
  • Das würde mich sehr stören (I dislike it that way)

Diese Prozedur wird sowohl für die positiv, funktionale Frage („Wie würde es Ihnen gefallen, wenn bei einer Änderung sofort automatisch gespeichert wird?“) als auch in der invertierten, dysfunktionalen Form („Wie würde es Ihnen gefallen, wenn bei einer Änderung NICHT sofort automatisch gespeichert wird?“) gestellt.

Die Unterscheidung in eine funktionale und dysfunktionale Dimension basiert auf der „Motivator-Hygiene-Theorie“ (Herzberg, 1966). Der Kerngedanke ist, dass die Arbeitszufriedenheit durch „Hygienefaktoren“ nicht gesteigert werden kann, sondern sinkt, wenn diese nicht vorhanden sind. „Motivatoren“ hingegen steigern die Arbeitszufriedenheit. Auf Software bezogen wäre ein Hygienefaktor, dass die Konsistenz der Daten jederzeit gewährleistet ist. Ein Motivator könnte sein, dass Änderungen implizit und automatisch gespeichert werden. Hier zeigt sich die Notwendigkeit für eine quantitative Bewertung: einige Anwender werden das implizite Speichern als bequem empfinden, andere hingegen den Kontrollverlust als unangenehm und störend.

Ebenen

Das Kano-Modell beschreibt die Anforderungen auf fünf Ebenen:

  • grundlegende und selbstverständliche Basis-Merkmale, deren Nichterfüllung Unzufriedenheit bewirken („show stopper“)
  • zusätzliche Leistungs-Merkmale, die ebenfalls Unzufriedenheit reduzieren oder bei Perfektionierung auch Zufriedenheit verursachen
  • vom Kunden eher nicht erwartete Begeisterungs-Merkmale („killer feature“)
  • unerhebliche Merkmale, die ohne großen Belang sind
  • Rückweisungs-Merkmale, die zu einer Ablehnung führen, wenn sie implementiert sind.

Der Grundgedanke des Modells wird häufig in einem Diagramm dargestellt, dessen x-Achse die Erfüllung beschreibt und die y-Achse die Anwenderzufriedenheit. Leistungsmerkmale tragen in einer solchen Darstellung linear zur Zufriedenheit bei, Basismerkmale verringern nicht-linear die Unzufriedenheit und Begeisterungsmerkmale steigern sie nicht-linear.

Analyse

Als erster Schritt werden die zwei-dimensionalen Antworten der Teilnehmer in die fünf Ebenen transponiert.

Tabelle 1: Kano Kategorisierung.

Dysfunctional form of the question
Like itMust-beNeutralLive withDislike
Like itQAAAO
Must-beRIIIM
NeutralRIIIM
Live withRIIIM
Functional form of the question
DislikeRRRRQ
A=attractive, O=one-dimensional, M=must-be, I=indifferent, Q=questionable

Häufig werden die Daten normalisiert und die dysfunktionalen Antworten invertiert (Berger et al., 1993). Da die genutzte Testplattform jedoch nur aggregierte Daten zur Verfügung stellt, musste hier darauf verzichtet werden.

Im nächsten Schritt wird der Anteil Zufriedenheits- und Unzufriedenheitsmerkmale bestimmt als:

x=(O+M)/(A+O+M+I) #Unzufriedenheit-1
y=(A+O)/(A+O+M+I) #Zufriedenheit

Diese Werte können in einem Scatterplot dargestellt werden. Die Entfernung eines Punktes zum Ursprung kann als Relevanz (KI) interpretiert werden und der Winkel zur x-Achse als Zufriedenheitsindex (KS).

KI = sqrt(x²+y²)
KS = atan(y/x)

KGet

Die Anforderungen an KGet scheinen auf den ersten Blick eindeutig zu sein: ein Download-Manager soll das Herunterladen von Ressourcen aus dem Internet unterstützen. Während vor einigen Jahren der Nutzen dabei klar auf dem Management der Bandbreite lag, ist dies heutzutage weniger relevant. Durch die Verbreitung von Firefox und Chrome kommen außerdem Browser eigene Lösungen verstärkt zum Einsatz. Daher muss das gesamte Konzept von KGet geprüft werden.

Anforderungen

Bei einem neuen Produkt würden die Anforderungen durch Interviews mit potentiellen Anwendern erfasst werden. Da KGet und ähnliche Programme jedoch einen ausreichend bekannt sind, kann von den vorhandenen Funktionen und Lösungen in Konkurrenzprodukten ausgegangen werden. Zur Verbesserung der Übersichtlichkeit wurde die Themes (einzelne Anforderung) in übergeordnete Epics (Gruppen) unterteilt:

  • #1: KGet’s core feature is to download resources.
  • #2: KGet contains supportive functions to manage downloads.
  • #3: KGet is well integrated into KDE.
  • #4: KGet offers a plenty of settings for individual configuration.

Diese Kategorisierung ist arbiträr und subjektiv. Auch die Zuordnung der KDE-Personas zu den Anforderungen ist nicht durch Daten verifiziert. Mehr Information zur Nutzung des aktuellen Programms gibt es unter „What people think about KGet„.

Die folgende Tabelle listet die Anforderungen auf und enthält die Kano-Indizes für die Bedeutung eines Items (KI) zwischen 0 und 2 sowie den Einfluss auf die Zufriedenheit (KS) zwischen 0 und π/2. Je höher der Index desto besser.

Tabelle 2: Liste der Anforderungen.

#RequirementKIKS
1.1Susan wants to download from FTP and HTTP sources to store a local copy of files.1.090.57
1.2Matt wants to download via torrent protocol to make installation of KTorrent unnecessary. 0.530.96
1.3Berna wants to upload and synchronize data in order to have the all-in-one comfort.0.381.26
1.4Matt wants to use metalinks to verify the download and to retrieve data from multiple sources.0.400.96
1.5Susan wants to store complete websites to read it offline including formatting and images.0.311.38
1.6Susan wants to save video and audio streams to watch and see it offline.0.731.16
2.1Susan wants to download multiple files at once to have freedom in her workflow.1.120.65
2.2Susan wants to (re)start/stop a download or a group of downloads to shut down her computer over night.
1.080.65
2.3Susan wants to pause/resume a download or a group of downloads to get the full bandwidth for a video call.
1.100.66
2.4Susan wants to drag and drop URLs onto the KGet UI to start the download immediately.
0.600.85
2.5Susan wants to get her clipboard monitored in order to confirm if a downloadable ressource can be accessed by KGet.
0.361.23
2.6Berna wants to import/export tasks to keep the local copy of files up-to-date.0.231.09
2.7Berna wants to schedule actions to run bandwidth consuming tasks over night.
0.301.18
2.8Susan wants to organize downloads in groups to run default actions in respect to the predefined group.0.271.16
3.1Matt wants to run integrity and sanity checks on downloaded files for safety purpose.0.840.86
3.2Susan wants the organization of files to be done automatically to store all music at one folder and all pictures in another.
0.471.26
3.3Berna wants to prioritize downloads to adopt the process to her workflow.0.731.02
3.4Susan wants to get notified when a download is finished to make monitoring useless.
0.800.70
3.5Susan wants to have KGet well integrated into KDE’s activity concept to separate her private downloads from business.
0.391.00
3.6Berna wants to log all activities for documentation purpose.0.420.83
4.1Configuration of bandwidth limitation0.650.79
4.2Configuration of maximum download size per month/day
0.201.37
4.3Configurable action(s) on start (e.g. minimize)
0.450.94
4.4Configurable action(s) in case of interruption (e.g.run a script)
0.301.22
4.5Configurable action(s) when finished (e.g. remove from list, start program…)0.421.09
KI = Kano index of importance for users, KS = Kano index of user satisfaction

Kano-Ergebnisse

Wir folgen mit unserer Auswertung dem analytischen Ansatz von Xu et al. (2009), die den Antwortraum nicht in vier gleich große Quandranten unterteilen sondern über Segmente beschreiben. Dabei sind die Grenzen nicht durch einen bestimmten Wert definiert.

Die äquivalenten Parameter Relevanz (KI = importance; Distanz eines Punktes zum Ursprung) und Zufriedenheit (KS = satisfaction; Winkel zur x-Achse) sind in Tabelle 2 angegeben. Die folgende Graphik zeigt die entsprechenden Werte für Hygienefaktoren (Dissatisfaction) vs. Motivatoren (Satisfaction).

Abbildung 1: Kano-Darstellung der einzelnen Anforderungen.

Quellen

  • Herzberg, F.I. (1966). Work and the Nature of Man. Cleveland: World Publishing.
  • Berger, C. et al. (1993): Kano’s method for understanding customer-defined quality, Center for Quality of Management Journal, 2(4), 3-35.
  • Xu, Q., Jiao, R. J., Yang, X., Helander, M., Khalid, H. M., & Opperud, A. (2009): An analytical Kano model for customer need analysis, Design Studies, 30(1), 87-110. [link]

Zur Reanalyse der Daten stehen sowohl Rohdaten als auch R-Skripte zur Verfügung: KGet-Kano.tar.gz

Diskussion

Die Kano-Methode wird seit vielen Jahren erfolgreich eingesetzt, allerdings nicht als „Massively Multi-user Online Survey“ (MMOS). Die vorliegende Studie stellt eine Annäherung dar, lässt jedoch noch einige Wünsche an die Methodik offen. So liefert die genutzte Plattform keine Rohdaten sondern nur aggregierte Werte, und auch die zusätzliche (explizite) Frage nach der Relevanz einer jeden Anforderung ist nicht verfügbar.

Hinsichtlich KGet gibt es ein relativ hohes Maß an Indifferenz. Das heißt, dass ein Großteil der Teilnehmer keine eindeutige Position zu Programmeigenschaften bezieht und zum Beispiel das Vorhandensein als „ganz nett“ empfindet, aber auch ohne leben kann. Auffällig sind die Werte für den klassischen Download per ftp/http und die Möglichkeit zur zeitlichen Steuerung (Pausieren, Unterbrechen). Die schon bekannten Funktionen zur Priorisierung und automatischen Organisation von Downloads sowie der in Plasma Next integrierten Benachrichtigung erhalten mittlere Werte im Bereich von Leistungskriterien. Die Erwartungshaltung der Anwender ist offensichtlich, dass auch weiterhin ein hoher Funktionsumfang abgebildet wird. Klare Begeisterungsmerkmale gibt es nicht. Am ehesten werden aus anderen Tools bekannte Funktionen, wie das Herunterladen kompletter Webseiten und das Speichern von Audio-/Videostreams als ein Gewinn betrachtet werden. Ebenfalls zu bedenken ist die Integration von KGet in das Aktivitätenkonzept von KDE und die Fähigkeit zum Upload bzw. der Synchronisation von Ressourcen.

Dies deckt sich mit den Ergebnissen der Parallelstudie, bei der sich ebenfalls nur wenige Features als bedeutsam herausgestellt haben. Allerdings ist dies möglicherweise auch darauf zurückzuführen, dass die Funktion „Gruppierung“ oder „Metalink“ nur wenigen Anwendern bekannt ist – und offensichtlich kaum vermisst wird. Wer allerdings die Möglichkeiten von KGet nutzt, liebt das Programm dafür, wie sich in den Kommentaren zeigt.

Zwei Möglichkeiten der Weiterentwicklung bieten sich an: die Konzentration auf wenige Kernfunktionen und Vereinfachung der Benutzerschnittstelle oder die bessere Präsentation der coolen Features und Erweiterung des Programms zu einer zentralen Verwaltung von Ressourcen.

Was meint ihr zur Kano-Methode? Welche Schlussfolgerung würdest du aus den Ergebnissen für KGet ziehen? Wir freuen uns auf die Diskussion.