Die aufgeschnappte Zahl erstaunt mich: Gemäss einer Studie der Standish Group werden 80% der Softwarefunktionalitäten selten oder gar nie genutzt. Wenn ich jedoch überlege, wie ich die Apps auf meinem iPhone nutze, erscheint mir diese Statistik durchaus plausibel. Ich habe kein Bedürfnis, dass die App meiner Sportuhr die Lebensdauer meiner Laufschuhe trackt. Weshalb also werden so viele Funktionalitäten auf den Markt gebracht, welche Nutzer schlussendlich nicht oder kaum verwenden?
Es scheint, dass es für viele Softwareanbieter Usus ist, laufend neue Lösungen oder zusätzliche Funktionalitäten auf den Markt zu bringen. Doch welches Anwenderproblem wird damit gelöst, welches Bedürfnis befriedigt und welcher Nutzen gestiftet?
Zu den 9 Prinzipien des Requirements Engineerings gemäss IREB (International Requirements Engineering Board) gehört das Stakeholder-Prinzip. Es besagt, dass das letztendliche Ziel des Aufbaus eines Systems darin besteht, dass das System, wenn es benutzt wird, Probleme löst, die seine Benutzer lösen müssen. Mittels Requirements Engineering wird also sichergestellt, dass das System einem Bedürfnis der Nutzenden entspricht und für sie ein Problem löst. Im Umkehrschluss beinhalten die Probleme der Anwender essenzielle Informationen zur Spezifikation von Anforderungen an ein System.
Innovation vor Nutzenorientierung?
Die Schlussfolgerung liegt nahe, dass viel Entwicklungsbudget eingespart werden könnte, wenn jedem Umsetzungsentscheid für eine neue Funktionalität ein konkretes Anwenderbedürfnis zugrunde liegen würde. Weshalb also werden trotzdem so viele wertlose Funktionalitäten implementiert, die keine Probleme lösen und daher begrenzt Nutzen stiften?
Einerseits habe ich den Eindruck, dass unter Wettbewerbern ein gewisser Leistungsdruck besteht, in hohem Tempo neue Funktionalitäten auf den Markt zu bringen. Man will ja innovativ sein. Andererseits vermute ich dahinter auch kulturelle Gründe: Probleme sind negativ behaftet. Es gilt, lösungsorientiert zu sein. Dass für eine Lösungsentwicklung vorab eine saubere Problemanalyse notwendig ist, wird oft vernachlässigt. Jedoch darf es ohne Problem gar keine Lösung geben. Denn ein weiteres der 9 Prinzipien des Requirements Engineerings besagt, dass Probleme, ihre Lösungen und Anforderungen eng und unausweichlich miteinander verflochten sind.
Den Informationsgehalt von Problemen nutzen
Mittels einer gründlichen Analyse des zugrunde liegenden Problems für die Anwender lassen sich folglich konkrete Anforderungen an die Systementwicklung formulieren. Werden Anforderungen aus Problemen abgeleitet, wird der Nutzen für die Anwender maximiert und Ressourcen werden effizient eingesetzt. Ich empfehle also, sich ausgiebiger mit Problemen auseinanderzusetzen, und zwar gemeinsam mit den betroffenen Stakeholdern. So kann der Informationsgehalt von Problemen genutzt werden als Quelle zur Spezifikation von Systemanforderungen.
Tipps für die Problemanalyse:
- Nicht zu rasch in Lösungen denken, Problem und Lösung so weit wie möglich trennen.
- Mit den betroffenen Stakeholdern sprechen und so ein gemeinsames Verständnis dafür schaffen, wie das Problem sie beeinträchtigt und was ihr Bedürfnis ist.
- Ursachen auf den Grund gehen: Warum tritt das Problem auf? Wodurch wird es ausgelöst? Welches sind die ersichtlichen Symptome des Problems, und welche Ursachen führen dazu?
Probleme als lohnenswerte Herausforderung
Mir persönlich können Probleme Spass machen. Natürlich nicht auf den ersten Blick, oftmals stellen sie mich vor Zusatzaufwand und erscheinen mühsam. Doch wenn ich mich wie eine Detektivin an die Ursachensuche mache, empfinde ich dies stets als zufriedenstellend. Die Identifikation der Ursache eines Problems gemeinsam mit den betroffenen Stakeholdern schafft eine Vertrauensbasis in der Zusammenarbeit und ermöglicht es mir, ihnen anschliessend eine massgeschneiderte Lösungsoption aufzuzeigen. So identifiziere ich zum Beispiel in einem gemeinsamen Austausch mit der Administration, welche manuellen Arbeitsschritte digitalisiert werden müssen, um durch Behebung von Doppelspurigkeiten eine bestehende Fehlerquelle zu eliminieren. Darüber hinaus wird mir bewusst, dass Probleme auch in meiner Freizeit eine wichtige Rolle spielen. Ich geniesse die Herausforderung der Problemlösung zum Beispiel beim Klettern oder Sudoku. Sich auf Probleme einzulassen, ist also in mehrfacher Hinsicht eine wertvolle Zeitinvestition.