Phasen der Produktentwicklung: ein passendes Modell für Ihr Projekt auswählen
Jedes Projekt in der Softwareentwicklung stellt einen komplexen Prozess dar. Um diese Komplexität zu beherrschen und mit Herausforderungen richtig umzugehen, stehen unterschiedliche Vorgehensmodelle zur Verfügung. Ein Vorgehensmodell bietet eine Beschreibung von einzelnen Schritten und Mechanismen für derer Durchführung zur Modellierung von Aufgaben im Projektablauf an. Damit verspricht das Modell, die Planbarkeit und die Prozesssteuerung zu steigern und damit die Qualität des Produktes zu verbessern.
Aber aus einer Vielzahl von existierenden Vorgehensmodellen ergab sich ein neues Problem: nach welchen Kriterien kann man bestimmen, welches Modell für ihr Projekt am besten geeignet ist? Na klar, kann ein Unternehmen, das individuelle digitale Produktentwicklung anbietet, ein Modell selbst auswählen. Aber wie kann es sichergestellt werden, dass dieses Modell Ihre Bedürfnisse und Erwartungen abdeckt?
Damit Sie sich besser in der Vielzahl von Vorgehensmodellen zurechtfinden können, erklären wir in unserem Beitrag, aus welchen Phasen der Entwicklungsprozess bei der Produktentwicklung besteht und welche Aspekte in jeder einzelnen Phase der Produktentwicklung bei der Auswahl eines Entwicklungsmodells berücksichtigt werden müssen.
6 Phasen der Produktentwicklung
Wir beschreiben kurz 6 Phasen, die ein Softwareprodukt im Rahmen der Produktentwicklung durchläuft. Unabhängig davon, welches Vorgehensmodell ausgewählt wird, muss es sichergestellt werden, dass alle Prozesse in jeder Phase transparent gestaltet sind, um das Projekt sowie seine Fortschritte immer im Blick zu behalten.
1. Planung
Wenn es um die Produktentwicklung geht, wird die Planung als ein wichtiger Teil im Vorbereitungsprozess bezeichnet, der die Marktforschung und die Business Analyse umfasst. Gerade zu diesem Zeitpunkt wenden Sie sich an einen Anbieter für Produktentwicklung, besprechen das Produktkonzept und überlegen, welches Modell für Ihr Projekt voraussichtlich besser passen könnte.
2. Anforderungsanalyse
Nachdem das Produktkonzept geplant wurde, lassen sich Anforderungen an das Produkt in enger Zusammenarbeit mit Business Analysten seitens Ihres Anbieters festlegen. Es werden alle Funktionen, die Sie implementieren möchten, aufgelistet und beschrieben.
In Abhängigkeit davon, wie klar oderunklar, stabil oder instabil Ihre Anforderungen sind, wird jenes oder anderes Vorgehensmodell für die Produktentwicklung eingesetzt, weil:
- Bei manchen Modellen alle Anforderungen von Anfang an genau definiert werden und unverändert bleiben müssen.
- Andere Vorgehensmodelle mehr Flexibilität bei der Änderung von Anforderungen bieten.
- Die Hinzufügung neuer Anforderungen während des Produktentwicklungsprozesses für bestimmte Modelle fast zu einem Standardverfahren wurde.
Je sicherer Sie sind, dass Sie Ihre bestehende Anforderungsliste während der Implementierung ändern oder erweitern werden, desto mehr Flexibilität benötigen Sie.
3. Entwurf
Während dieser Phase der Produktentwicklung werden Architektur, Schnittstellen, Programmiersprachen, Hardware- und Softwareplattformen und andere Eigenschaften des zu entwickelnden Produktes (oder seiner Komponente) auf der Basis von Anforderungen sowie derer Zusammenhänge definiert.
Zu diesem Zeitpunkt muss der Anbieter Sie über die Einschränkungen Ihres zukünftigen Produktes, Möglichkeiten beim Hosting in der Cloud (wenn es um die Entwicklung einer SaaS-Lösung geht), die Hardwareoptionen (wenn Ihr Softwareprodukt Teil eines Geräts oder einer Anlage wird) informieren. User Experience und Design der Benutzerschnittstelle gehören ebenfalls dazu.
4. Entwicklung
Nachdem Sie als Product Owner jede Entscheidung in der Entwurfsphase genehmigt haben, beginnt die nächste Phasen der Produktentwicklung - die Implementierungsphase. In dieser Phase werden Ihre vordefinierten Anforderungen technisch umgesetzt. Je nach ausgewähltem Vorgehensmodell können Sie in dieser Phase entweder das fertige Endprodukt oder nur einen Teil davon erhalten.
5. Qualitätssicherung
Die Qualitätssicherung (QS) sollte immer im Einklang mit der Implementierungsphase stehen. Durch Tests wird sichergestellt, dass alle vordefinierten Anforderungen an einzelne Bestandteile und das gesamte Produkt erfüllt werden. Wann und wie oft Tests durchgeführt werden, kommt es darauf an, welches Modell eingesetzt wird.
6. Auslieferung und Wartung
Je nach verwendetem Vorgehensmodell werden in dieser Phase der Produktentwicklung Ihr fertiggestelltes Softwareprodukt oder seine lauffähige Version, oder einzelne Funktionen auf bestimmten Geräten installiert oder in ein bestimmtes System integriert und damit zum Gebrauch freigegeben.
Gerade nach der Auslieferung beginnt die längste Phase im Produktlebenszyklus – Wartung und Support. Während dieser Phase werden in den frühen Phasen nicht gefundene Fehler behoben, Verbesserungen vorgenommen sowie jede mögliche Unterstützung angeboten.
Es ist gängige Praxis, dass Ihr Anbieter Sie weiter betreut und unterstützt. Sie können auch ein internes Support-Team bilden oder sich an einen anderen Anbieter wenden, um Support- und Wartung zu erhalten.
Ein passendes Modell auswählen: Ihre Anforderungen stehen im Vordergrund
Nachdem wir nun alle typischen Phasen der Produktentwicklung abgedeckt haben, konzentrieren wir uns auf gängige Vorgehensmodelle, welche Dauer, Prioritäten und Wiederholbarkeit für die Organisation des Entwicklungsprozesses vorgeben.
Es gibt eine Reihe von Kennzahlen, die bei der Auswahl eines geeigneten Vorgehensmodells wesentlich unterstützen können. Wir betrachten näher drei Parameter, die Ihre Anforderungen beschreiben: Häufigkeit von Releases, Flexibilität von Anforderungen und Ansatz zur Zusammenarbeit. Jeder dieser Parameter kann auf eine Skala gebracht werden, wo jedes Modell nach diesen Parametern bewertet wird.
-
Starre Anforderungen ↔ Flexible Anforderungen
Das Vorgehensmodell legt fest, wie flexibel Anforderungen an Ihr Softwareprodukt sein dürfen – wann (wenn überhaupt) Änderungen möglich sind. Bei den Modellen wie Wasserfall und V-Modell müssen alle Anforderungen zu Beginn des Projektes klar definiert sein. Änderungen im Projektablauf sind nicht vorgesehen. RUP, Spiralmodell und Iteratives Modell bieten eine höhere Flexibilität bei der Anpassung an Änderungen. Mit Scrum, Extreme Programming (XP) und Kanban – alle sind Vertreter der Agilen Methoden – sind kontinuierliche Änderungen während der Projektlaufzeit möglich.
-
Ein großes Release ↔ Kontinuierliche Auslieferung
Zunächst eine Frage: Möchten Sie das fertige Endprodukt nach der endgültigen und einmaligen Veröffentlichung sehen? Dann haben Sie die Wahl zwischen zwei sequentiellen Modellen wie Wasserfall oder V-Modell. Aber es gilt zu beachten, dass sich beide Modelle vor allem für kleine Projekte eignen. Ansonsten entsteht ein Risiko, dass das endgültige Produkt eine größere Anzahl von Fehlern hat, weil Tests nur unmittelbar vor der Veröffentlichung durchgeführt werden. Des Weiteren ist es viel teurer, Fehler zu diesem Zeitpunkt zu korrigieren. Bei alle anderen Modellen, einschließlich Iteratives Modell, Scrum, RUP und Kanban, werden regelmäßig kürzere und häufige Releases eingesetzt. Das ermöglicht ein lauffähiges Produkt am Ende jedes Release-Zyklus zu erhalten und von Iteration zu Iteration es weiter zu entwickeln.
-
Dokumentation ↔ Kommunikation
Ein Vorgehensmodell definiert, wie intensiv alle Beteiligten des Projektes involviert werden und wie eng die Zusammenarbeit mit einem Anbieter erfolgt. Viele Modelle – Spiralmodell, V-Modell und Wasserfallmodell – erfordern, eine detaillierte Dokumentation am Ende jeder Phase zu erstellen. Aber dabei legt man wenig Wert auf die Kommunikation. RUP und Iterative Modelle versuchen, Dokumentation und Kommunikation in Einklang zu bringen. In den Modellen aus der agilen Gruppe – Scrum, EX, Kanban – gilt die Kommunikation als einer der Schlüsselfunktionen.
Zusammengefasst
Es ist eine echte Herausforderung, unter zahlreichen Vorgehensmodellen für den Projektablauf nicht verloren zu gehen. Bei der Auswahl des am besten geeigneten Modells sollten Sie ein klares Verständnis haben, welche Aspekte in welchen Phasen der Produktentwicklung berücksichtigt werden müssen. Außerdem gibt´s eine Reihe von Kriterien, die Sie bei der Auswahl unterstützen können. In Abhängigkeit davon, welche Ziele Sie haben, wie Sie Prioritäten setzen, wie lange Ihr Projekt dauern kann oder wie intensiv Sie ins Projekt involviert werden möchten, können Sie ein passendes Model auswählen oder sogar einige Modelle und derer Vorteile kombinieren. Die richtige Auswahl hilft, das Projekt erfolgreich umzusetzen.