Visure-Lösungen


Unterstützung
Registrieren
Login
Kostenlos testen

Wie lange dauern Anforderungen?

Wie lange dauern Anforderungen?

Inhaltsverzeichnis

Haben Sie sich jemals gefragt, wie viel Zeit es dauern würde, die Anforderungen für Ihr bevorstehendes Projekt zu erstellen? Diese Frage stellen sich Business Analysten und Manager oft.

Für die meisten Probleme im Zusammenhang mit der Software- und Produktentwicklung gibt es keine allgemeingültige Antwort; Die Antwort hängt wirklich von Ihren individuellen Umständen ab.

Mehrere Variablen tragen zu diesem Problem bei, wobei führende Branchendurchschnittswerte darauf hindeuten, welcher Prozentsatz des Aufwands eines Projekts der Anforderungsentwicklung wie dem Sammeln und Erheben gewidmet werden sollte.

Wie können Sie den angemessenen Zeit- und Arbeitsaufwand für Aktivitäten wie das Sammeln von Anforderungen bestimmen? Es überrascht nicht, dass Daten aus verschiedenen Benchmarks nicht immer miteinander harmonieren. Es ist auch fraglich, ob diese „normalen“ Projekte mit Ihren eigenen verwandt sind. Um Ihnen bei der Lösung dieses Problems zu helfen, habe ich einige Ideen aus meinem Buch „Mehr über Softwareanforderungen“ in diesem Artikel angepasst – sehen Sie es sich an!

Branchen-Benchmarks

Um ein Beispiel für die potenzielle Nützlichkeit von Benchmarks zu geben, siehe Tabelle 1. Die dargestellten Daten zeigen Branchendurchschnitte für verschiedene Anforderungserhebungs- und Prototyping-Bemühungen für Projekte mit einer Größe von 10,000 Funktionspunkten (ungefähr eine Million Codezeilen), die aus Quellen stammen Capers Jones' „Software-Assessments, Benchmarks und Best Practices“. Wie relevant sind diese Zahlen für Ihr eigenes Projekt?

Die Verwendung von Industrie-Benchmarks wie diesen ist nicht ohne Nachteile. Ob die Projekte wirklich erfolgreich waren oder ob es einen Zusammenhang zwischen Erfolg und Aufwand zur Anforderungserhebung gab, können die Daten nicht sagen. Diese Informationen geben uns nur einen Durchschnitt der geleisteten Arbeit, was es schwierig macht, den Erfolg jedes einzelnen Projekts genau zu beschreiben.

ALM-Anforderungsmanagement-Tool

Es kann sich als vorteilhaft erweisen, 10 % oder weniger der Teamarbeit auf Aufgaben wie das Sammeln von Anforderungen zu verwenden, vorausgesetzt, dass sie nicht in einer Analyseparalyse stecken bleiben. Entgegen der landläufigen Meinung wird die Investition von mehr Aufwand in die Verbesserung Ihres Anforderungsentwicklungsprozesses die Produktion tatsächlich beschleunigen. Die Nutzung dieses Konzepts bietet eine massive Kapitalrendite für jedes Projekt!

Da ich bei Kodak an kleineren Projekten gearbeitet habe, hat unser Team oft 15 % bis 18 % des Gesamtaufwands für Anforderungsaktivitäten aufgewendet. Wir haben festgestellt, dass diese Investition die Anzahl der erforderlichen Änderungen nach der Lieferung verringert hat. Es ist schwierig, Ursachen und Wirkungen mit Gewissheit zu verbinden, aber es ist wahrscheinlich, dass unsere niedrige Wartungsrate größtenteils auf die Kultivierung einer erheblichen Benutzerbeteiligung zurückzuführen ist.

Der Versuch, genau herauszufinden, wie viel Zeit die Erfassung der Anforderungen für Ihr nächstes Projekt in Anspruch nehmen wird, ist eine knifflige Frage und kann schwierig genau abzuschätzen sein. Doch glücklicherweise gibt uns Abbildung 1 einen Einblick in die Variablen, die diesen Prozess verkürzen oder verlängern können; hilft Ihnen bei der Erstellung dieser erforderlichen Anforderungen effektiver zu schätzen.

Ihre eigene Erfahrung

Zu Beginn kann es hilfreich sein, die Daten aus früheren Projekten zu überprüfen, um festzustellen, welche Art von Aufwand speziell für die Anforderungserfassung aufgewendet wurde. Auf diese Weise können Sie beurteilen, wie erfolgreich Ihr Entwicklungsprozess in der Vergangenheit war, und diese Informationen verwenden, um die Kosten für zukünftige Bemühungen abzuschätzen. Passen Sie als zusätzlichen Faktor Ihre anfänglichen Schätzungen an, indem Sie sich auf Abbildung 1 beziehen, in der die Unterschiede zwischen anstehenden Projekten und Benchmark-Projekten dargestellt sind, und berücksichtigen Sie alle anderen relevanten Überlegungen zu Ihrem aktuellen Projekt. Durch die Bewertung jedes der in Abbildung 1 aufgeführten Elemente auf einer Skala von 0 (kein Einfluss) bis 5 (große Auswirkung) kann diese Bewertung Ihnen helfen, Risikofaktoren zu erkennen, die Ihren Anforderungsentwicklungsprozess verlängern könnten.

Anforderungsmanagementsystem

Neben anderen Elementen ist es wichtig, den Lebenszyklus des Projekts zu berücksichtigen. Gehen Sie nicht davon aus, dass alle Anforderungen wie bei einem sequentiellen oder Wasserfall-Ansatz (dargestellt durch die gepunktete Linie in Abbildung 2) zu Beginn akkumuliert werden sollten. Anstatt eine ausgeprägte „Anforderungsphase“ zu haben, denken Sie an eine Reihe von Anforderungen, die jede Entwicklungsphase durchlaufen. Während sich unsere System Requirements Specification (SRS) weiterentwickelt und Änderungsanforderungen entstehen, müssen wir die Anforderungs-Baselines gewissenhaft aktiv verwalten. Dies ist ein fortlaufender Prozess, der konsequente Aufmerksamkeit erfordert.

Iterative und inkrementelle Ansätze

Agile Entwicklungsansätze wie Scrum gehen einen progressiven Weg. Auf diese Weise können Benutzer die potenziell nützlichen Funktionen des Produkts schnell in die Hände bekommen und ihre Anforderungen bei Bedarf einfach ändern. So können Entwickler mühelos mit den sich ständig ändernden Geschäftsanforderungen Schritt halten. Bei agilen Projekten sind aufgrund kleiner, aber regelmäßiger Erhebungsbemühungen selten große Anforderungsinitiativen erforderlich (durchgezogene Linie in Abbildung 2).

Anforderungsgrundlinie

Anstatt sich auf den Beginn des Projekts zu konzentrieren, wird der Anforderungsaufwand in einem agilen Projekt auf verschiedene Phasen verteilt. Anfängliche Erkundungen führen zu einem Rückstand, in dem die Funktionalität basierend auf ihrer Prioritätsstufe detailliert beschrieben wird. Wenn es Zeit für Entwicklung und Tests ist, verfeinern die Teams die Anforderungen, damit sie genügend Details haben, um mit jeder Iteration sicher fortzufahren.

Vor Jahren war ich Teil eines Softwareentwicklungsteams, das einen inkrementellen Ansatz nutzte, um den Erfolg sicherzustellen. In jedem Zyklus wurde unser Projekt in dreiwöchigen Phasen veröffentlicht, wobei der erste Teil der Planung der Anforderungen und der Entwicklung für dieses spezifische Inkrement gewidmet war. Wir haben mit dieser Methode großartige Ergebnisse erzielt, da sie der Unternehmensbenutzerbasis alle paar Wochen nützliche Funktionen brachte. Das Team arbeitete fleißig daran, neue Funktionen schnell und schrittweise bereitzustellen und den Benutzern häufige Updates bereitzustellen. Diese Benutzereinblicke waren von unschätzbarem Wert, um das Projekt zu leiten und sicherzustellen, dass bis zum Abschluss der maximale Wert erreicht wurde.

Nicht alle Initiativen eignen sich für die Bereitstellung in kleinen Stücken. Beim Neuaufbau einer bestehenden Anwendung muss das neue System über ein beträchtliches Maß an Funktionalität verfügen, bevor Benutzer darauf umsteigen können. Unabhängig davon, wie viel Ihr Team in jedem Projektzyklus fertigstellt, muss es die Anforderungen für diese bestimmte Sequenz verstehen, um langwierige Wiederholungen und Umschreibungen von Designs, Code oder Tests zu vermeiden.

Erhebung von Planungsanforderungen

Es ist oft komplizierter, als es den Anschein hat, wenn man beginnt, die Anforderungen für ein neues Projekt zusammenzustellen. Denken Sie beim Brainstorming von Aktivitäten, die Ihre Analysten durchführen müssen, daran, ob sie Aufgaben wie die folgenden ausführen müssen:

  • Aufbau von Beziehungen zu Produktchampions durch Verhandlungen.
  • Sammeln von Erkenntnissen durch interaktive Workshops und Tiefeninterviews.
  • Untersuchen vorhandener Aufzeichnungen und Produkte, um potenzielle Verbesserungen aufzudecken.
  • Erstellung, Verbreitung und Entschlüsselung von Umfragen.
  • Entwerfen und Bewerten von Prototypen, Studieren von Modellen und anderen Anforderungsperspektiven für den Erfolg.
  • Erzielen von Erfolg durch Risikobewertung, Sicherstellen, dass Sicherheitsprotokolle eingehalten werden, Analysieren potenzieller Fehler und Durchführen von Gefahrenuntersuchungen.
  • Protokollieren Sie die Details Ihrer Anforderungen in einem Datenrepository.
  • Sorgfältige Prüfung der in Lastenheften aufgeführten Anforderungen.
  • Erstellung von Testfällen aus den aufgelisteten Anforderungen und sorgfältige Bewertung ihrer Leistung.
  • Passen Sie die Anforderungsspezifikationen nach einer gründlichen Überprüfung oder Prüfung an, um die Genauigkeit sicherzustellen.

Um den Aufwand für zukünftige Projekte besser einschätzen zu können, ist es wichtig, sich über die verschiedenen Aufgaben zu informieren, die Ihr Team im Rahmen der Anforderungserhebung, -analyse, -spezifikation und -validierung möglicherweise übernehmen muss. Dieses Wissen hilft Ihnen außerdem zu verstehen, wie viel Zeit jede Aufgabe in Anspruch nimmt, und hilft Ihnen, die Leistung Ihres Projekts zu verbessern. Es bedeutet nicht unbedingt, dass alle Aktivitäten bei jedem Unternehmen durchgeführt werden müssen, sondern vielmehr zu verstehen, was getan werden muss, führt zu einem erfolgreichen Ergebnis.

Vergiss nicht, diesen Beitrag zu teilen!

Top

Die hohen Kosten eines schlechten Anforderungsmanagements

June 06th, 2024

11 Uhr EST | 5:8 Uhr MEZ | XNUMX Uhr PST

Louis Arduin

Hauptlautsprecher

Auswirkungen und Lösungen für ineffizientes Anforderungsmanagement

Entdecken Sie die erheblichen Auswirkungen, die ineffiziente Anforderungsmanagementpraktiken auf Projektkosten und Zeitpläne haben können.