Wie abstrakt dürfen Anforderungen sein?

Formale Spezifikationen sind häufig nicht nachvollziehbar und verfehlen ihren Zweck. Der Mensch orientiert sich an Beispielen - ein hilfreiches Konzept zur Erarbeitung aussagekräftiger Spezifikationen.

  

weitere Artikel

» Von Michael Richter, 15.07.2009 06:00.

Michael Richter ist Berater für Usability und Requirements Engineering bei Zühlke und Lehrbeauftragter an der Hochschule für Technik Rapperswil

Spezifikationen beschreiben die Anforderungen und Rahmenbedingungen für die Entwicklung einer neuen Software oder eines neuen Produkts. Sie bilden die Basis für die Implementierung einer neuen Lösung. Zudem sind sie ein wichtiges Kontrollinstrument: Anhand der Spezifikationen können Beteiligte und Auftraggeber überprüfen, ob alle benötigten Funktionen und Anforderungen enthalten und korrekt beschrieben sind.

Oft sind die Beschreibungen und Modelle aber dermassen abstrakt, dass ihre Bedeutung für die Praxis kaum mehr vorstellbar ist. Dies birgt die Gefahr, dass falsche oder fehlerhafte Anforderungen erst spät im Entwicklungsprozess aufgedeckt werden; Mängel werden erst erkannt, wenn die Anwendung implementiert und damit sichtbar ist. Nachträgliche teure Änderungen sind die Folge. Zudem besteht ein grosses Risiko, dass sich die entwickelte Lösung schliesslich nicht in die Geschäftsprozesse integriert und die Benutzer ihre Aufgaben nicht wie geplant oder gar nicht erfüllen können.

Es ist und bleibt Wunschdenken, dass eine detaillierte Auflistung von Anforderungen ausreicht, um eine Software-Anwendung vollständig zu definieren. Die Verantwortlichen für die Entwicklung müssen in jedem Fall Entscheidungen treffen. Im besseren Fall stützen sie sich dabei auf ihr gutes Verständnis der Benutzerbedürfnisse, im schlechteren Fall basieren die Entscheide auf falschen Annahmen. Eine gute Spezifikation sollte deshalb nicht nur formale Anforderungen enthalten, sondern auch ein Verständnis für die Anwendung im Einsatz vermitteln.

Selbstverständlich ist es nicht möglich, alle erdenklichen Fälle der täglichen Arbeit auszuformulieren, welche durch das neue System unterstützt werden sollen. Es ist auch nicht sinnvoll, technische Details der vorgesehenen Lösung vorwegzunehmen. Generalisierungen und Abstraktionen in einer Spezifikation sind deshalb durchaus notwendig.

Spezifikation am Beispiel

Szenarien beschreiben einen typischen Ablauf mit der vorgesehenen neuen Lösung
Szenarien beschreiben einen typischen Ablauf mit der vorgesehenen neuen Lösung
Abstrakt und dennoch konkret und verständlich - ein Widerspruch? Nicht unbedingt. Dazu eine Betrachtung des menschlichen Denkens: Konzepte, Abläufe, Funktionen - diese Konstrukte kann unser Gehirn nur mithilfe von Beispielen verarbeiten. Wir gewinnen ein Verständnis für einen Sachverhalt anhand von Einzelfällen. Erst damit wird in einem zweiten Schritt die Abstraktion möglich. Genauso geht ein Analyst vor, der eine Spezifikation für ein neues System schreibt: Er untersucht verschiedene einzelne Situationen und generalisiert die erhaltenen Informationen zu einem abstrakten Modell. Hat der Leser der Spezifikation allerdings nur dieses abstrakte Modell zur Verfügung, kann er die konkreten Einzelfälle nicht herleiten. Denn diese Informationen sind in der Abstraktion nicht mehr enthalten. Umgekehrt gelingt es dem Menschen jedoch gut, aus Beispielen Regeln und Zusammenhänge abzuleiten. Diese Fähigkeit kann bei der Erarbeitung von Spezifikationen genutzt werden. Beispiele sind hervorragende Instrumente, um Zusammenhänge oder Abläufe aufzuzeigen. In den meisten Fällen genügt es, wenige stellvertretende Beispiele - etwa den typischen Arbeitsablauf eines typischen Benutzers - möglichst realitätsnah wiederzugeben.^

Wie aber können Beispiele zu diesem Zweck effizient erarbeitet und eingesetzt werden? Was zeichnet ein gutes Beispiel aus? Aus dem Usability Engineering sind einige praktische Methoden bekannt, die ein beispielorientiertes Vorgehen in der Software- und Produktentwicklung unterstützen und Antworten auf diese Fragen liefern können.

Werbung

KOMMENTARE

Keine Kommentare

KOMMENTAR SCHREIBEN

*
*
*
*

Alles Pflichfelder, E-Mail-Adresse wird nicht angezeigt.

Die Redaktion hält sich vor, unangebrachte, rassistische oder ehrverletzende Kommentare zu löschen.
Die Verfasser von Leserkommentaren gewähren der IDG Communications AG das unentgeltliche, zeitlich und räumlich unbegrenzte Recht, ihre Leserkommentare ganz oder teilweise auf dem Portal zu verwenden. Eingeschlossen ist zusätzlich das Recht, die Texte in andere Publikationsorgane, Medien oder Bücher zu übernehmen und zur Archivierung abzuspeichern.