Online Themenspecial
Online Themenspecial
Artikel

Kreativität im Requirements Engineering

von Andrea Herrmann
 

Requirements Engineering bedeutet nicht nur, den Stakeholdern gut zuzuhören, um ihre wahren Bedürfnisse zu erheben. Manchmal muss der Requirements Engineer die Stakeholder dazu anleiten, Begeisterungsfaktoren zu (er)finden, oder er muss selbst kreativ Probleme lösen.

Die Rolle der Kreativität im Requirements Engineering

Kreativität ist „the ability to produce work that is both novel (i.e. original, unexpected) and appropriate (i.e. useful, adaptive to task constraints)“ [1].

Requirements Engineering ganz ohne Kreativität findet nur unter sehr schlichten Bedingungen statt: Wenn eine existierende Software inkrementell erweitert wird um zusätzliche Funktionalitäten, die zur Unterstützung der existierenden Geschäftsprozesse nötig sind, oder wenn die Software an Änderungen in Gesetzen und Geschäftsprozessen angepasst wird. Und selbst dann hilft die Kreativität bei der Umsetzung technisch schwieriger Anforderungen. Workarounds, Notlösungen und die Zweckentfremdung vorhandener Softwaremodule müssen auch erst gefunden oder neu erfunden werden.

In allen anderen Fällen kann oder muss das Requirements Engineering kreativ sein und ist es normalerweise auch. Kreativität findet ja nicht nur in speziell aufgerufenen Workshops und mithilfe einschlägiger Techniken statt. Jedes Problem, dessen Lösung nicht zwangsläufig auf der Hand liegt, verlangt nach Kreativität.

Schade ist es auch, wenn ein IT-System vollständig neu entwickelt wird, man aber einfach das Altsystem mitsamt seinen Fehlern und Notlösungen kopiert. Hier wird die Chance vertan, einen Qualitätssprung nach vorne zu tun und die Arbeitsabläufe oder zumindest deren IT-Unterstützung neu zu erfinden.

Nehmen wir an, wir betreiben ein Portal, auf dem Menschen Waren handeln. Wie auf einem virtuellen Flohmarkt verkaufen hier Privatpersonen alles das, was sie nicht mehr brauchen. Man sollte meinen, eine solche Anwendung bekäme man auch ohne Kreativität zustande. Schließlich gibt es den guten alten Flohmarkt aus der realen Offline-Welt und diverse Online-Shop-Systeme als Vorbild. Da nehmen wir doch einfach das Beste aus allen diesen Welten zusammen … und fertig. Aber wollen oder können wir wirklich mit einem Produkt auf den Markt gehen, das es so ähnlich schon gibt? Nachahmung gilt zwar als gültige Wettbewerbsstrategie, aber eben nicht als eine kreative. Um Kunden von gut besuchten Portalen abzuziehen, muss man schon etwas Besonderes bieten, gerade auf einem Markt, wo eine Dienstleistung nur ab einer kritischen Masse an Kunden überhaupt funktioniert. Es nutzt ja niemandem, wenn auf einem Online-Flohmarkt nur 20 Waren insgesamt angeboten werden. Neue Ideen müssen her!

Requirements Engineering versus Kunst: Was ist bei der Kreativität im Requirements Engineering speziell?

Künstler werden für ihre Kreativität gelobt, wenn sie etwas erschaffen, das so noch nie dagewesen ist, etwas, das verblüfft, vielleicht auch erstmal nicht leicht zu verstehen ist. Der Betrachter steht dann vor dem Kunstwerk und muss es interpretieren. Die gängigen Auslegungsregeln funktionieren nicht. Das fordert den Kunstkenner intellektuell heraus und das erfreut ihn. Er wird gerne überrascht.

Im Requirements Engineering ist gerade dies nicht das Ziel. Laut der EN ISO 9241-110 („Grundsätze der Dialoggestaltung“) trägt die Erwartungskonformität entscheidend zur Benutzerfreundlichkeit bei. Das heißt, die Funktionalität ist in der Software so umgesetzt, wie der Benutzer dies für diese Art der Software aufgrund seiner Erfahrungen und Vorkenntnisse erwartet. Diese Umsetzung ist auch konsistent mit dem Rest der Anwendung in Terminologie und Layout, und sie hält sich an gängige Konventionen. Außerdem muss sie aufgabenangemessen sein und den Benutzer dabei unterstützen, seine Arbeit möglichst effektiv und effizient auszuführen.

Die zu unterstützenden Funktionalitäten und die zu verwaltenden Daten werden durch die vielleicht bereits vorhandenen Arbeitsprozesse vorgegeben. Natürlich definieren die bisherigen Möglichkeiten des Flohmarkt- und Online-Handels die Erwartungen der Kunden. Diese Vorgaben scheinen kaum Raum für Kreativität zu lassen. Dieser Eindruck trügt jedoch! Es bleibt noch Luft nach oben! Zusätzliche Funktionalitäten könnten die Arbeit der Benutzer noch besser unterstützen. Im Kano-Modell heißen diese „Begeisterungsfaktoren“ [2]. Solche Anforderungen werden von den Stakeholdern nur selten während der Erhebung genannt. Wenn eine solche Begeisterungsanforderung nicht umgesetzt wird, vermisst sie auch niemand. Doch wenn sie vorhanden ist, dann sind die Benutzer begeistert. Dies kann eine zusätzliche Unterstützungsfunktion sein, eine besonders hohe Qualität (z. B. Performanz) oder auch die Art, wie etwas umgesetzt wird.

Oft soll die Kreativität gar nicht unbedingt Ideen für zusätzliche Funktionen liefern. Für deren Umsetzung fehlt vielleicht ohnehin das Budget. Gefragt sind jedoch ständig kreative Antworten auf ganz konkrete Fragen im Lösungsraum:

  • Wie setzen wir diese Funktionalität am besten/billigsten/sichersten um?
  • Wenn es so nicht geht, wie dann? Welche technische Lösung oder welches Plug-in erfüllt die Anforderungen?
  • Die Stakeholder können sich nicht einigen. Welche für uns günstigste Kompromisslösung schlagen wir vor?

Welche Kreativitätstechnik wofür im Requirements Engineering?

Ideen, die sowohl innovativ als auch nützlich sind, fallen nicht vom Himmel. Eine solch zielgerichtete Kreativität kann und muss gesteuert werden. Auch Künstler, wenn sie von ihrer Kunst leben wollen, müssen sehr diszipliniert arbeiten und Randbedingungen einhalten wie Termine und die Erwartungen der Zielgruppe.

Für die Ermittlung von Begeisterungsfaktoren werden (u. a. vom International Requirements Engineering Board IREB) Kreativitätstechniken empfohlen. Tatsächlich lassen sich die meisten Kreativitätstechniken für die Anforderungsermittlung verwenden und führen auch zu innovativen Ideen. Ich möchte hier unterscheiden zwischen den Methoden, die radikal neue Ideen erzeugen, und solchen, die eher für die inkrementelle Weiterentwicklung eines Produkts nützlich sind. Man will ja gar nicht immer wirklich ganz neue, unerwartete, innovative Ideen, deren Umsetzung dann teuer wird.

Im Innovationsmanagement unterscheidet man zwischen inkrementeller und radikaler Innovation. Die inkrementelle Innovation entwickelt ein Produkt nur um wenig weiter, ergänzt beispielsweise eine Funktion oder variiert wenige Eigenschaften. Im Wesentlichen bleibt es aber dasselbe Produkt. Solche inkrementellen Innovationen kosten wenig und bringen einen vorhersehbaren Nutzen. Die radikale Innovation dagegen macht einen großen Entwicklungssprung nach vorne bis zur Neuerfindung. Entsprechend des angestrebten Innovationsgrades brauchen wir eine andere Methode!

Meine Lieblingstechnik für die Erzeugung radikal neuer Ideen ist die 635-Methode, die vollständig ohne Vorbereitung und ohne spezielles Material (nur mit Papier und Stiften) durchgeführt werden kann und doch innerhalb einer halben Stunde zu Dutzenden guter Ideen führt. Jeder Teilnehmer erhält ein Din A4 Blatt Papier und einen Stift. In die oberste Zeile schreibt jeder in fünf Minuten drei Ideen. Dann reicht er seine Ergebnisse weiter an seinen Nachbarn. Dieser ergänzt in fünf Minuten drei weitere Ideen. Nach sechs Runden und 30 Minuten können so sechs Personen 108 Ideen erzeugen mit erfreulich wenig Dubletten. Die Ergebnisse werden nach unten hin immer besser, weil nach spätestens drei Runden die offensichtlichen Ideen ausgehen.

Bei Konfrontationstechniken wird die vorliegende Fragestellung konfrontiert mit Reizworten (z. B. spontan und willkürlich aus einem Wörterbuch herausgefischt) oder mit ganz anderen Anwendungsdomänen, in denen ein ähnliches Thema bereits behandelt wurde (Analogie-Technik). Durch die unerwarteten und ungewöhnlichen Kombinationen wird das Denken „out of the box“ angestoßen. Hierbei nutzen wir die Fähigkeit unseres Gehirns, auch beliebigen Kombinationen einen Sinn verleihen zu können.

Um inkrementelle Ideen zu entwickeln, benötigt es oft überhaupt keine spezielle Technik. Viele übliche Frageweisen des Requirements Engineerings triggern bereits Ideen an, ausgehend von einem ersten Entwurf oder dem Altsystem:

  • Man analysiert Benutzungsszenarien anhand von Use Cases, Storyboards oder Prototypen und sucht gezielt nach ungünstigen Umsetzungen und Verbesserungsmöglichkeiten..
  • Man wechselt die Perspektive: vom Käufer zum Verkäufer, vom Benutzer zum Administrator, vom Benutzer zum Hacker oder Betrüger, vom Privatkunden zum Händler. Man kann auch mehrere Personas erschaffen für dieselbe Rolle und jeweils mit deren Augen auf das System blicken.
  • Man fragt sich bezüglich einer bestimmten Lösung, welches Problem sie lösen soll, und sucht für dasselbe Problem eine noch bessere Lösung. Beispielsweise will kein Benutzer wirklich gerne ein Passwort eingeben. Er tut das aber, damit niemand in seinem Namen Einkäufe tätigt. Könnten wir die Authentisierung vereinfachen ohne an Sicherheit einzubüßen, wäre das willkommen.
  • Oder man geht eine Abstraktionsebene nach oben und rekonstruiert zu der vorhandenen Lösung die Ziele und Visionen, die dahinterstecken. Könnten wir diese auch erreichen durch eine andere Lösung? Beispielsweise sind Menschen eigentlich gar nicht so erpicht darauf, ihre alten Sachen Stück für Stück im Internet zu beschreiben, einzeln zu verpacken und zum Postamt zu bringen. Sie wollen ihr Eigentum nur nicht wegwerfen und vielleicht ein wenig Geld dafür bekommen, gerade für die neuwertigen Teile. Wenn sie den ganzen „Flohmarktstand“ in eine einzige Kiste packen und sofort loswerden können, ohne sich die Arbeit mit dem Verkaufen machen zu müssen, ist ihnen das auch recht.

Die folgenden Kreativitätstechniken eignen sich ebenfalls dafür, für ein existierendes Produkt inkrementelle Verbesserungen zu entwickeln: Konfigurationstechniken rekombinieren Eigenschaften des Produkts systematisch neu. Dazu geeignet sind der Morphologische Kasten, die Osborn- oder SCAMMPERR-Checkliste, die Fragen stellt wie „Kann man es größer machen?“ oder „Kann man es für etwas anderes verwenden?“ Auch Perspektiven-Wechsel-Methoden wie die sechs Hüte von de Bono oder das Einnehmen der Standpunkte verschiedener Stakeholdergruppen helfen dabei, ein Thema aus verschiedenen Richtungen zu beleuchten. Mit diesen Kreativitätstechniken kann man natürlich auch radikal neue Ideen finden. Worauf es hinausläuft, steuert man über die Formulierung der Arbeitsaufgabe. Je konkreter die Frage, umso geringer der Innovationsgrad der Antworten.

Für eine ergebnisorientierte, zielgerichtete Kreativität im Requirements Engineering (und auch in anderen Bereichen) empfehle ich zusätzlich folgende Zutaten:

  • Klare Fragestellung: Während eine Aufgabenstellung im Stil von „Denkt euch irgendetwas aus“ tatsächlich dann auch zu irgendetwas führt, lenken klar formulierte Fragen die Kreativität in eine bestimmte Richtung, was in einem IT-Projekt meist erwünscht ist. Die Fragestellung könnte lauten: „Welche Funktion würde dem Verkäufer zusätzlichen Nutzen bringen?“ Oder auch umgekehrt: „Wie hindern wir den Verkäufer daran, seine Ware los zu werden?“ Die Fragestellung kann aber auch lösungsorientiert lauten: „Wie setzen wir diese Anforderung um, obwohl es technisch nicht einfach ist?“
  • Vorbereitung: Kerkow et al. [3] empfehlen, vor dem Workshop die Anwendungsdomäne, den Markt, das Problem und die Anforderungen zu analysieren. Auch sich schon existierende Lösungen und deren Vor- und Nachteile anzusehen behindert nicht die Kreativität.
  • Die richtigen Teilnehmer: Nicht Träumer sind gefragt, sondern Experten. Um eine gute Lösung für ein Problem zu finden, muss man sich – je nach Fragestellung –  mit den Bedürfnissen der Anwendungsdomäne oder den technischen Möglichkeiten sehr gut auskennen. Wir suchen ja nicht beliebige, sondern v. a. machbare Ideen. Adam und Trapp [4] definieren sechs nötige Rollen: „First, an idea generator with a domain (not technical) perspective is needed to generate unusual ideas in the workshop. As a kind of pendant, we need as second role an idea evaluator with a technical perspective in order to estimate feasibility and needed effort for the evaluation phase. Third, we need an idea generator with a technical perspective to produce innovative ideas based on technical innovation potential. As a pendant for this person, we need as fourth role the idea evaluator with a domain perspective that can judge whether a technology-driven idea would be accepted by the domain and what would be the impact. The fifth and sixth role are the moderators of the workshop.“ Natürlich soll man bei einer kreativen Aufgabe die Ideen nicht zu früh werten, sondern einfach sammeln, weil auch eine zunächst unrealistische Idee durch Variieren noch in eine realisierbare umgewandelt werden kann. Aber trotzdem führt die Kenntnis des Machbaren zu besseren Ergebnissen. Die Teilnehmer müssen natürlich auch kreativ sein, also ihre Gedanken fließen lassen können, offen sein für neue Ideen, aber auch dazu bereit, ihre eigenen Ideen kritisch zu hinterfragen.
  • Eine gute Moderation: Der Moderator kann sich an den Schritten und Richtlinien einer Kreativitätstechnik orientieren. Allerdings haben wir auch schon Techniken spontan angepasst. Die Hauptaufgabe der Moderation besteht darin, eine entspannte, konstruktive Atmosphäre zu schaffen, in der die Gedankenströme der Teilnehmer störungsfrei fließen können. Konkurrenzkämpfe gehören nicht hierher und jegliche unsachliche oder persönliche Kritik muss der Moderator sofort unterbinden. Die ganze Gruppe muss in dem gemeinsamen Ziel vereint sein, eine gute Antwort auf die gestellte Frage zu finden. Alles andere muss draußen vor der Tür bleiben.
  • Protokollierung: Nichts darf verloren gehen. Während die 635-Methode schriftlich durchgeführt wird, erfolgen andere Methoden mündlich und in der Gruppe, so dass der Protokollant schnell schreiben können muss. Er sollte keine Idee übersehen, weil sich sonst auch ihr Schöpfer übersehen fühlt. Idealerweise ist der Protokollant nicht der Moderator, weil es so gut wie unmöglich ist, alles mitzuschreiben und gleichzeitig den Gesprächsfluss zu steuern.
  • Nächste Schritte: Die Ergebnisse sollen weiterverwendet werden. Dafür sind die folgenden Schritte festzulegen. Oft ist hier noch nicht klar, welche der Ideen umgesetzt wird, weil noch die eine oder andere Machbarkeitsprüfung oder Budgetbeantragung nötig ist, doch muss festgelegt sein, wer diese Klärungen bis wann durchführen wird.
  • Zeit: Die besten Ideen entstehen nicht unbedingt im Kreativitätsworkshop. Dieser ist vielleicht nur der Anstoß für weiter gehende Überlegungen und Recherchen. Ideen müssen reifen.

Ausblick: Probieren geht über Studieren

Probieren Sie es aus! Wenn Sie das nächste Mal an einer schwer zu lösenden Frage tüfteln, dann …

  1. … formulieren Sie die Frage aus.
  2. … sammeln Sie Informationen.
  3. … setzen Sie sich mit den richtigen Experten zusammen.
  4. … wenden Sie eine Requirements-Engineering- oder Kreativitätstechnik an.
  5. … protokollieren Sie die Ergebnisse – und verfolgen diese weiter.

Die Ergebnisse einer solchen Kreativitätsübung könnten Sie positiv überraschen bzw. das sollten sie. Auf jeden Fall macht eine Ideensitzung Spaß und kann auch teambildend wirken, wenn man gemeinsam eine Idee ausbrütet.

Literatur & Links

[1] R. J. Sternberg (Ed.): Handbook of creativity. New York, Cambridge University Press, 1999
[2] N. Kano: Attractive Quality and Must-be Quality. Journal of the Japanese Sociaty for Quality Control, Nr. 4, S. 39-48, 1984
[3] Daniel Kerkow, Sebastian Adam, Norman Riegel, Özgür Ünalan: A Creativity Method for Business Information Systems. CreaRE: First International Workshop on Creativity in Requirements Engineering 2010, at REFSQ, Essen, 2010
[4] Sebastian Adam, Marcus Trapp: Success Factors for Creativity Workshops in RE. CreaRE: Fifth International Workshop on Creativity in Requirements Engineering 2015, at REFSQ, Essen, 2015


Andrea Herrmann

Ist freiberufliche Trainerin und Beraterin für Software Engineering seit 2012 mit mehr als 20 Berufsjahren in Praxis und Forschung. Sie berät Firmen bei der leichtgewichtigen Verbesserung ihrer Softwareentwicklung, insbesondere im Bereich des Requirements Engineering. Mehr als 100 Fachpublikationen, regelmäßige Konferenzvorträge, offizielle Supporterin des IREB-Board.

Bildnachweise:

Andrea Herrmann