Die Anforderungsanalyse in der Software-Entwicklung
Bei der Entwicklung komplexer Software-Systeme und auch bei größeren Internet-Auftritten und Web-Anwendungen sollte die Anforderungsanalyse den ersten Schritt auf dem Weg zum Endprodukt darstellen.
Meistens hat der Kunde bereits eine gewisse Vorstellung von der Site bzw. der Anwendung, die ihm sein Auftragnehmer erstellen soll. Manchmal werden bereits Pflichtenhefte zur Verfügung gestellt, wenn Angebote eingeholt werden. Das ist sicher sinnvoll, denn wenn man nicht weiß, was man bauen soll, kann man ja weder sagen, was das kostet noch wie lange die Realisierung dauert. Aber auch wenn der Kunden seinen Auftragnehmer ausgewählt hat, sollte sie zusammen eine ausführliche Anforderungsanalyse erstellen. Was passiert nun während dieser Anforderungsanalyse? Was ist ihr Ziel und wer hat welche Aufgaben?
Zunächst das Ziel in Kurzform: Die Anforderungsanalyse ermittelt, was das fertige System können muss. Die Ergebnisse werden im Pflichtenheft festgehalten.
Der Auftragnehmer muss genau wissen, was der Kunde benötigt und erwartet. Denn nur in diesem Fall kann eine Anwendung gebaut werden, die die Erwartungen des Kunden auch tatsächlich erfüllt.
Zunächst müssen sich die Auftragnehmer in die Fachlichkeit des Kunden einarbeiten. Vielleicht kann der Kunde die erste Orientierung durch Firmenbroschüren und Produktbeschreibungen ermöglichen. Danach werden die Auftragnehmer dem Kunden etliche fachliche Fragen zu seiner Branche, seinen Aufgaben, Angeboten und zu den fachlichen Hintergründen des Projekts stellen. Diese Fragen der Fachfremden werden sicher auch dem Kunden helfen können, sein eigenes Geschäft einmal aus einem anderen Blickwinkel und ohne eine gewisse, normale „Betriebsblindheit“ zu sehen. Sobald der Auftragnehmer das Geschäft des Kunden verstanden hat, kann es Vorschläge für Funktionalitäten des Systems machen und abschätzen, ob sich die Anforderungen, die der Kunde bereits formuliert hat, realisieren lassen.
Anforderungen für das neue System können sich aus aus dem bisherigen System ergeben – sofern es ein solches gibt. Manche Inhalte der bisherigen Web-Site sollen möglicherweise übernommen werden, und manche Funktionalitäten der aktuellen Anwendung muss auch das neue System besitzen. Ein gewisser Blick auf die Mitbewerber des Kunden kann auch nicht schaden, denn hier kann man durchaus ein paar Anregungen für Dos und Don’ts bekommen.
In manchen Branchen gibt es Gesetze oder Regelungen, die bei der Realisierung der Anwendung berücksichtigt werden müssen.
Eine ganz wichtige Rollen spielen natürlich die späteren Anwender des Systems. Handelt es sich um eine interne Anwendung, so besteht sicher die Möglichkeit, die späteren Benutzer direkt zu befragen. Bei einer Internet-Anwendung oder einem Internet-Auftritt könnten ebenfalls einige mögliche Nutzer nach ihren Erwartungen befragt werden. Und das Team des Auftragnehmers kann sich natürlich auch selber fragen, wie es in der Rolle des Nutzers agieren würde und wie die Anwendung insgesamt einen möglichst hohen Nutzen stiften kann.
Hat man alle Anforderungen gesammelt, ist es mitunter nötig, diese zu priorisieren, weil sich einfach nicht alle davon im ersten Schritt realisieren lassen. Es gilt dann zu ermitteln, welche Anforderungen vom Kunden als selbstverständlich vorausgesetzt werden. Daneben wird es weitere Anforderungen geben, die der Kunde explizit fordert. Möglicherweise bleiben dann noch weitere Anforderungen übrig. Für diese gilt zu ermitteln, wie stark die Zufriedenheit des Kunden steigen wird, wenn sie erfüllt werden. Je größer die Zufriedenheit, desto wahrscheinlicher die Realisierung.
Die Anforderungen fließen in die Spezifikation ein und bilden nach Abschluss der Realisierungsphase die Eckpunkte für die Testphase und die Abnahme.
Die Anforderungsanalyse sollte sehr sorgfältig durchgeführt werden, auch wenn teilweise der Eindruck entstehen sollte, dass dafür nicht genug Zeit oder Geld vorhanden ist. Denn wenn man erst während der Realisierung feststellt, dass Anforderungen fehlen oder falsch definiert wurden, entsteht meist ein erheblich höherer Aufwand.
Abonnieren Sie jetzt unseren RSS-Feed und bleiben Sie so immer auf dem Laufenden!
Diese Artikel dürften Sie auch interessieren
- Anforderungsanalyse für beste Usability
- Web-Entwicklung und Software-Engineering
- Outsourcing und Near-Shoring in der Software-Entwicklung
- Suchmaschinen-Optimierung bei der Web-Seiten-Entwicklung
- Sportler fragen, Sportler antworten

