Next: 8.5 Analyse der Anforderungen
Up: 8. Anforderungsbestimmung
Previous: 8.3 Ergebnisse
Die Schwierigkeiten bei der Anforderungsbestimmung rühren im
wesentlichen daher, daß sie ein Prozeß ist, der erstens von Menschen
durchgeführt wird und sich zweitens mit einem beträchtlichen Teil
der Komplexität der von Menschen gestalteten Welt herumplagen
muß. Im Unterschied zum Softwareentwurf oder zur
Softwareimplementation kann diese Komplexität aber hier nur
wesentlich schwieriger mit Mitteln der Formalisierung, Abstraktion und
Automation beherrscht werden, weil die Anforderungsbestimmung ja
gerade diese Abstraktion erst ermitteln soll.
Die meisten der Schwierigkeiten sind oben bereits angesprochen worden,
deshalb hier nur noch einmal kurz und in einer anderen Sichtweise:
Es gibt vier grundsätzliche Bereiche, in denen Schwierigkeiten
auftreten, nämlich das Verständnis des Anwendungsbereichs, die
Kommunikation, das soziale Zusammenwirken der Beteiligten und das
Projektmanagement.
Dies sind die Probleme beim Verstehen des Anwendungsbereichs:
- Die Anwender kennen zwar ihren Arbeitsbereich, können aber die
darin vorhandenen Probleme, die eine DV-Lösung erlauben, nicht erkennen.
- Auch wo Anwender ihre Probleme erkennen, sind sie oft nicht in
der Lage, eine vorgeschlagene DV-Lösung zu beurteilen und konstruktiv
zu kritisieren.
- DV-Lösungen, die sehr anders strukturiert sind als die
bisherige Arbeitsweise, oder die ganz neue Arbeiten einführen,
übersteigen oft das Vorstellungsvermögen der Anwender und eventuell
auch der Entwickler.
- Entwickler verstehen viele der Abstraktionen nicht, die der
Anwender zur Beschreibung von Anforderungen benutzt, weil ihnen
Verständnis für den Anwendungsbereich fehlt.
- Entwickler haben oft ein fast nur technisches Interesse und
versagen dabei, eine nichttechnische Anforderung zu erkennen, zu verstehen
und umzusetzen.
Dies sind die wichtigsten Kommunikationsprobleme:
- Anwender und Entwickler haben völlig verschiedene Begriffswelten
und Erfahrungshintergründe,
oftmals gar mit verschiedenen Begriffen hinter dem gleichen Wort.
- Sie sind verschiedene Beschreibungsmethoden und Notationen
gewöhnt.
- Sie haben Schwierigkeiten, sich auf ein Abstraktionsniveau zu
einigen, weil sie nicht genau verstehen, welches der andere gerade
benutzt oder benutzen will.
Ferner gibt es oft auch soziale Hindernisse:
- Verschiedene Einzelpersonen oder Gruppen unter den Anwendern haben
unterschiedliche, eventuell widersprüchliche Interessen.
In manchen Fällen ist dies das größte Problem bei der
Anforderungsdefinition; vor allem, wenn die Konflikte verwischt statt
gelöst werden.
- Anwender sehen oftmals die Notwendigkeit der
Anforderungsbestimmung nicht ein, weil sie glauben, daß die
Aufgabenstellung klar sei. Sie haben meist kein Interesse an
Details, die aber zur Softwareentwicklung entscheidend wichtig sind.
- Die Entwickler haben oft keine Leistungsanreize, die direkt an
der Kundenzufriedenheit orientiert sind.
- Entwickler haben oft ein hinderliches Überlegenheitsgefühl
gegenüber den Anwendern.
Schließlich gibt es auch technische Probleme bei oder aufgrund der
Anforderungsanalyse, die man im weiteren Sinne einem geschickten
Projektmanagement zuordnen kann:
- Bei Fertigsoftware wird der Erfolg oft nicht von der
Befriedigung der tatsächlichen Anwenderbedürfnisse bestimmt, sondern
von den eventuell davon recht verschiedenen Anforderungen des
Marktes.
Dadurch gewinnen zusätzliche Aspekte wie
Zeit bis zum Markteintritt, werbewirksame Features (ob nützlich oder
nicht), Anpassung an Produktprofil der Firma etc.
eine erhebliche Bedeutung, die bei der Anforderungsbestimmung zu
berücksichtigen ist.
- Ein Entwicklungsprozeß, der mit unvollständigen oder sich
ändernden Anforderungen umgehen muß, ist kompliziert und
teuer. Deshalb muß die Anforderungsanalyse zumindest an den
entscheidenden Stellen diese Schwierigkeiten weitmöglichst reduzieren.
- Die stark kostensenkende Einbindung umfangreicher
Fertigkomponenten in ein
Softwaresystem hat oftmals Rückwirkungen auf die realisierbaren
Anforderungen oder zumindest deren Form. Diese müssen bei der
Anforderungsbestimmung ausdrücklich berücksichtigt werden.
Next: 8.5 Analyse der Anforderungen
Up: 8. Anforderungsbestimmung
Previous: 8.3 Ergebnisse
Lutz Prechelt
1999-04-13