Spiralmodell Geschichte, Eigenschaften, Stadien, Beispiel

5147
Abraham McLaughlin

Das Spiralmuster Es ist ein Archetyp des Anwendungsentwicklungsprozesses. Es basiert auf der Hypothese, dass Softwareentwicklung ein iterativer Zyklus ist, der wiederholt wird, bis die festgelegten Ziele erreicht sind. Es ist in der Lage, die große Anzahl von Risiken zu bewältigen, die bei der Entwicklung von Software auftreten können.

Es ist eines der wichtigsten Modelle zur Unterstützung des Risikomanagements. Wie der Name schon sagt, ist dieses Modell spiralförmig dargestellt, wobei die verschiedenen Stufen des Modells in verschiedenen Zyklen verteilt sind. Die Anzahl der Zyklen im Modell ist nicht festgelegt und kann von Projekt zu Projekt variieren.

Analyse, Bewertung, Planung und Entwicklung. Softwareentwicklungsspirale Quelle: Beao [Public Domain] commons.wikimedia.org

Artikelverzeichnis

  • 1 Geschichte
    • 1.1 Schöpfung
    • 1.2 Alternative zum Wasserfallmodell
  • 2 Eigenschaften des Spiralmodells
    • 2.1 Risikokontrolle
    • 2.2 Beschreibung der Spirale
    • 2.3 Allgemein
    • 2.4 Flexibel
    • 2.5 Metamodell
  • 3 Stufen
    • 3.1 Ziele, Alternativen und Einschränkungen festlegen
    • 3.2 Risikobewertung
    • 3.3 Entwicklung und Erprobung
    • 3.4 Planung des nächsten Zyklus
  • 4 Beispiel
  • 5 Vorteile
    • 5.1 Zyklische Struktur
    • 5.2 Risikomanagement
    • 5.3 Kundenbeteiligung und Feedback
    • 5.4 Ideal für große Projekte
  • 6 Nachteile
    • 6.1 Teuer
    • 6.2 Ziemlich komplex
    • 6.3 Zeitmanagement
    • 6.4 Viele Schritte
  • 7 Referenzen

Geschichte

Schaffung

Das Spiralmodell wurde vom amerikanischen Mathematiker und Softwareentwicklungsprofessor Barry Boehm definiert. Nachdem er 1986 sein Konzept für die Entwicklung komplexer Anwendungen vorgestellt hatte, veröffentlichte er sein Modell 1988 in einem umfassenderen Rahmen in seinem Artikel „Ein Spiralmodell der Softwareentwicklung und -verbesserung"".

Ein Teil dieser Veröffentlichung von 1988 stellte das Spiralmodell grafisch dar und zeigte vollständig, wie der Softwareentwicklungsprozess spiralförmig aussieht und von Zyklen unterstützt wird..

Böhm ist bekannt für seine zahlreichen Beiträge zur Softwareentwicklung, wie das konstruktive Kostenmodell (COCOMO), das Spiralmodell des Softwareprozesses, den G-Theory-Ansatz (Win-Win) zur Anforderungsermittlung und -verwaltung der Software.

Alternative zum Wasserfallmodell

In seiner Publikation beschrieb Böhm das Spiralmodell als mögliche Alternative zum bisher etablierten Wasserfallmodell, das auch als Grundlage für seine Praxis diente..

Das Spiralmodell war nicht das erste, das die zyklische Entwicklung diskutierte, aber es war das erste, das erklärte, warum Iteration wichtig ist. Wie ursprünglich vorgesehen, war es auf große, komplexe Projekte ausgerichtet, deren Iterationen normalerweise zwischen 6 Monaten und 2 Jahren liegen..

Dieses Modell geht nicht davon aus, dass Softwareentwicklungsaufgaben im Gegensatz zum Wasserfallmodell linear gestaltet sind, sondern betrachtet sie als iterative Aufgaben.

Dieses zyklische Modell beeinflusste die modellbasierte Software-Engineering-Architektur (MBASE) und die extreme Programmierung.

Merkmale des Spiralmodells

Risikokontrolle

Was dieses Modell stark von anderen Softwareprozessmodellen unterscheidet, ist, dass es Risiken explizit erkennt. Auf diese Weise wird der Ausfall großer Softwareprojekte erheblich reduziert, indem die Risiken wiederholt bewertet und das in der Entwicklung befindliche Produkt jedes Mal überprüft werden..

Dieses Computermodell enthält Komponenten fast aller anderen Modelle des Software-Lebenszyklus, z. B. das Wasserfallmodell, das Prototyping-Modell, das iterative Modell, das Evolutionsmodell usw..

Aus diesem Grund ist es in der Lage, nahezu jede Art von Risiko zu bewältigen, die andere Modelle im Allgemeinen nicht eingehen. Aufgrund der vielen Komponenten ist dieses Modell jedoch viel komplexer als die anderen Softwareentwicklungsmodelle..

Beschreibung der Spirale

Jede Umdrehung der Spirale stellt einen vollständigen Zyklus dar, durch den immer die vier Quadranten verlaufen und die vier Stufen des Modells darstellen..

Mit zunehmender Größe der Spirale steigen auch die erzielten Fortschritte. Daher werden die Stufen nicht nur einmal, sondern mehrmals in Form einer Spirale ausgeführt..

Obwohl diese zyklische Wiederholung das Projekt langsam dazu bringt, sich den festgelegten Zielen zu nähern, wird das Risiko, dass der Entwicklungsprozess fehlschlägt, stark minimiert..

Generisch

Die vier Stufen implementieren nur die grundlegenden Ziele eines Zyklus, müssen sich jedoch nicht in jedem Zyklus manifestieren.

Die Reihenfolge jedes Zyklus ist ebenfalls nicht streng bestimmt. Daher kann das Modell jederzeit mit anderen Modellen kombiniert werden.

Flexibel

Es ist sehr flexibel, da die Prozesse der Zieldefinition, Risikoanalyse, Entwicklung und Planung für jede Projektphase separat durchgeführt werden..

Metamodell

Es wird als Metamodell betrachtet, da es die anderen Modelle enthält. Wenn die Spirale beispielsweise aus einem einzigen Zyklus besteht, würde sie das Wasserfallmodell darstellen, da sie den schrittweisen Ansatz dieses klassischen Modells beinhaltet.

Außerdem wird der Ansatz des Prototyping-Modells verwendet, da zu Beginn jedes Zyklus ein Prototyp zum Risikomanagement zusammengestellt wird..

Darüber hinaus ist es mit dem Evolutionsmodell kompatibel, da die Iterationen der Spirale als Evolutionsstufen betrachtet werden können, durch die das endgültige System aufgebaut wird..

Stufen

Bestimmen Sie Ziele, Alternativen und Einschränkungen

Die Systemanforderungen werden so detailliert wie möglich definiert, einschließlich Leistung, Hardware- / Software-Schnittstellen, Schlüsselindikatoren für den Erfolg usw. und überlegen Sie, welche Ziele mit dem aktuellen Entwicklungszyklus verbunden sein sollten.

Darüber hinaus werden verschiedene Alternativen für die Implementierung untersucht, z. B. Build vs. vorhandene Komponenten kaufen, wiederverwenden oder auslagern usw..

Ebenso werden Einschränkungen wie Kosten, Zeitplan und Schnittstellen, Zeitverbrauch usw. festgelegt..

Risikobewertung

Alle vorgeschlagenen Alternativen werden bewertet. Die Ziele und Einschränkungen dienen als Referenz für die Auswahl der besten Lösung.

Darüber hinaus werden die Risiken identifiziert, die den Erfolg des Projekts beeinträchtigen können, z. B. mangelnde Erfahrung, neue Technologien, enge Zeitpläne, fehlerhafte Prozesse usw., um die rentabelsten Strategien mit dem geringsten Risiko umzusetzen..

Schließlich werden Methoden wie Prototyping, Simulationen, analytische Modelle und Benutzerumfragen verwendet..

Entwicklung und Erprobung

Alle notwendigen Entwicklungen werden unter Verwendung der ausgewählten Technologie und Lösung durchgeführt. Mit jeder Iteration wird eine bessere Version der Anwendung erstellt.

Der eigentliche Code wird mehrmals geschrieben und getestet, bis das gewünschte Ergebnis erreicht ist, das dann als Grundlage für zukünftige Entwicklungsschritte dient.

Planen Sie den nächsten Zyklus

Nach Abschluss eines Zyklus beginnt die Planung für den nächsten. Diese Planung könnte darin bestehen, das Projekt normal fortzusetzen, wenn das Ziel des Zyklus unter Berücksichtigung der Definition des nächsten Ziels erreicht wurde.

Es könnte auch sein, andere Lösungen zu finden, wenn sich die vorherige Entwicklungsstufe als fehlerhaft herausstellte. Die bestehende Strategie könnte durch eine der zuvor definierten oder eine neue Alternative ersetzt werden. Damit würde ein neuer Versuch gestartet, das vorgegebene Ziel zu erreichen..

Beispiel

Die US-Armee hat das Spiralmodell für die Entwicklung und Aktualisierung des Modernisierungsprogramms Future Fighting Systems (SCF) übernommen..

SCFs wurden 2003 offiziell gestartet und sollten Truppen mit Fahrzeugen ausstatten, die in Echtzeit mit einem außerordentlich schnellen und flexiblen Netzwerk von Schlachtfeldern verbunden sind..

Das Projekt war in vier Entwicklungsspiralen von jeweils etwa zwei Jahren unterteilt. Spiral 1 sollte 2008 starten und Prototypen zur Verwendung und Bewertung liefern..

Nach Abschluss von Spiral 1 sollte Spiral 2 im Jahr 2010 beginnen. Die endgültige Produktentwicklung sollte im Jahr 2015 ausgeliefert werden..

Im August 2005 gab Boeing den Abschluss des ersten wichtigen Meilensteins des Projekts bekannt, nämlich die funktionale Überholung der Systeme. Boeing und Science Applications International Corporation waren die Co-Leiter des Projekts.

Für Oktober 2005 empfahl das Pentagon jedoch, das Projekt aufgrund der hohen Auswirkungen des Irak-Krieges auf die Kosten und der Hilfe des Hurrikans Katrina zu verschieben..

Das Projekt wurde 2009 nach Budgetkürzungen abgebrochen, ohne die Vorteile des Spiralmodells in dieser Mission nachweisen zu können.

Vorteil

Zyklische Struktur

Aufgrund dieser Art von Struktur werden Probleme zwischen dem Design und den technischen Anforderungen der Software dank regelmäßiger Überprüfungen stillschweigend beseitigt..

Risikomanagement

Die Risiken werden in jeder Phase des Produkts analysiert, bevor Sie fortfahren. Dies hilft, potenzielle Risiken zu überwinden oder zu mindern.

Alle Mitarbeiter profitieren von der großen Bedeutung der Risikoanalyse in diesem Modell, die möglicherweise ihren größten Vorteil gegenüber anderen Prozessmodellen darstellt.

Regelmäßige Risikobewertungen gewinnen an Wert, wenn neuartige technische Umgebungen verwendet werden, die aufgrund fehlender empirischer Werte im Allgemeinen mit einem bestimmten Risikopotenzial verbunden sind.

Kundenbeteiligung und Feedback

Kunden sind in jede Phase des Projekts involviert, bis das Projekt abgeschlossen ist. Daher können unterschiedliche Rückmeldungen gesammelt werden, um die nächste Version des Projekts zu verbessern..

Zusätzlich kann aufgrund des Spiralvorschubs jederzeit eine Rückmeldung erhalten werden. So können Kunden und Anwender von Anfang an in den Entwicklungsprozess integriert werden.

Ideal für große Projekte

Es ist besonders beliebt und bekannt für große und komplexe Projekte, bei denen die Budgetkontrolle für Kunden und Entwickler Priorität hat. Sie haben maximale Kontrolle über Kosten, Ressourcen und Qualität des Softwareprojekts.

Nachteile

Teuer

Dies kann sehr teuer sein, da für die Risikoanalyse ein hohes Maß an Fachwissen erforderlich ist. Darüber hinaus nimmt die Entwicklung von Projekten viel Zeit in Anspruch, was den Overhead erhöhen kann.

Ziemlich komplex

Eine sehr aktive und komplexe vorherige Verwaltung des Projekts ist erforderlich, wobei jeder Zyklus kontinuierlich und sorgfältig kontrolliert und dokumentiert wird.

Es ist vergleichsweise komplexer als andere Modelle, da es viele Zyklen gibt, die jeweils unterschiedliche Phasen durchlaufen, wodurch sich der Aufwand für den Dokumentationsprozess erhöht..

Kenntnisse über Risikoanalyse und -management, die häufig nicht verfügbar sind, sind unerlässlich.

Zeiteinteilung

Zeitmanagement ist schwierig, da die Anzahl der Zyklen unbekannt ist. Darüber hinaus kann der Entwicklungsprozess jederzeit verzögert werden, wenn wichtige Entscheidungen innerhalb eines Zyklus getroffen werden müssen, oder durch zusätzliche Maßnahmen bei der Planung des nächsten Zyklus..

Viele Schritte

Es ist nicht immer günstig, viele Schritte in der Softwareentwicklung durchzuführen, da trotz der Vielseitigkeit der Tests unfertige Teile des Programms das fertige System erreichen können..

Infolgedessen besteht immer die Gefahr, dass Fehler oder konzeptionelle Inkonsistenzen das Endprodukt beeinträchtigen..

Verweise

  1. Victor Font Jr. (2019). Das Spiralmodell. Der ultimative Leitfaden für den SDLC. Entnommen aus: Ultimatesdlc.com.
  2. Ionos (2019). Spiralmodell: Das risikogesteuerte Modell des Softwareentwicklungsprozesses. Entnommen aus: ionos.com.
  3. Techuz (2018). Was ist ein Spiralmodell? Eine einfache Erklärung des Spiral Software Development Life Cycle (SDLC). Entnommen aus: techuz.com.
  4. One-Stop-Test (2020). Spiralmodell. Entnommen aus: onestoptesting.com.
  5. Geeks for Geeks (2020). Software Engineering - Spiralmodell. Entnommen aus: geeksforgeeks.org.
  6. Chandu (2019). Spiralmodell in der Softwareentwicklung. Entnommen aus: medium.com.

Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.