|
Das
Anforderungsmanagement gehört zu den entscheidenden
Erfolgsfaktoren im IT - Projektmanagement. Die
Anforderungen des Kunden müssen vollständig, widerspruchsfrei
und prüfbar festgehalten werden. Das klingt einfach, ist jedoch
gerade bei komplexen Projekten eine Herausforderung. Oft weiß der
Auftraggeber nicht genau, was er da eigentlich beauftragen
möchte und/oder die Anforderungen sind dynamisch und ändern sich
über die Zeit. In dieser Phase muss ihn der Auftragnehmer aktiv
unterstützen und unter Beweis stellen, dass er seine Hausaufgaben
auf dem Gebiet der Softwareentwicklung gemacht hat. Tools und
Vorgehensweisen gibt es dafür einige: Standardprozesse, Use Cases,
Interviews, Workshops sowie Prototypen zur ersten Klärung. Alle
am Projekt beteiligten Zielgruppen (Stakeholder) sollten daran
beteiligt sein. Leider sieht das in der Realität oft ganz anders
aus. Das Anforderungsmanagement wird vernachlässigt und nach der
Devise verfahren „Wir fangen erst einmal an“ J.
Das Resultat ist für alle Seiten unbefriedigend. Der Kunde
bekommt nicht das Produkt, das er im Sinn hat, Budget und
Zeitrahmen werden überzogen und die Spannungen im Team steigen.
Aus Sicht der Softwareentwicklung lässt sich ohne eine konkrete
Auflistung der Anforderung kein Qualitätsmanagement etablieren,
da man nicht validieren kann, ob die implementierten Features auch
so gewollt wurden. Daraus ergibt sich dann die Situation, dass
nicht validierte Features auch nicht auf die softwaretechnische
Umsetzung hin verifiziert werden können (à
Qualität / Testen: Validierung und Verfikation). Im Idealfall
sollte man aus einer professionell geführten Anforderungsanalyse
die Testfälle für die angestrebte Abnahme des Produkts
generieren können. Man sieht daran leicht, wie das
Anforderungsmanagement alle Zyklen der Softwareentwicklung
beeinflusst und über Erfolg oder Misserfolg eines Projekts
entscheidet. Natürlich wirft diese Darstellung eine Schlüsselfrage
auf. Ist es bei grossen und komplexen Programmen überhaupt möglich
alle Anforderungen gemäß den Kriterien vollständig,
widerspruchsfrei und prüfbar aufzunehmen? Die Antwort fällt bei
realistischer Betrachtung negativ aus. Wie kann man diesen
Widerspruch (Anforderungen sind ein kritischer Erfolgsfaktor,
lassen sich jedoch nicht den Kriterien entsprechend zu 100 Prozent
ermitteln) auflösen? Aus meiner Erfahrung bieten sich dafür
agile Verfahren der Softwareentwicklung an. Bei diesen Verfahren
konzentriert sich das Anforderungsmanagement nicht auf den
Projektanfang, sondern ist über die gesamte Projektlaufzeit
verteilt.
|