Spiralmodell

Spiralmodell

Copyright ┬ę Shutterstock / Evgenii Iaroshevskii

Was ist ein Spiralmodell?

Mit dem Spiralmodell (engl.: spiral model) wird ein Modell aus dem Bereich der Softwareentwicklung angesprochen. Das Modell folgt einem spezifischen Vorgehen und kann als Gegensatz zum sogenannten Wasserfallmodell erachtet werden. Das Spiralmodell erl├Ąutert, wie der Lebenszyklus einer Software anhand von Spiralen verl├Ąuft. Die Spiralen m├╝ssen nach dem Modell immer wieder durchlaufen werden, sodass letztendlich das fertige Produkt in die Auslieferung gehen kann. Eine andere Bezeichnung f├╝r das Spiralmodell ist inkrementelles Modell, das hei├čt es findet eine permanente Arbeit an dem Produkt statt und dies tendenziell in kleinen Schritten.

Hintergrund zum Spiralmodell

Ein inhaltlicher Fokus des Spiralmodells liegt auf der Minimierung von Risiken hinsichtlich der Softwareentwicklung. Die hierbei vorliegenden Risiken sind vor allem steigende Gesamtkosten, Mehraufwand sowie eine versp├Ątete Einf├╝hrung der Software. Bei dem vorliegenden Modell wird diesen Risiken insofern begegnet, als dass die inkrementelle Vorgehensweise Anwendung findet. Es werden in dieser Weise zun├Ąchst Prototypen entwickelt, die sodann die Zyklen respektive Spiralen der Softwareentwicklung durchlaufen. Dieser Prozess findet mindestens ein Mal statt. Ein wesentliches Charakteristikum des Spiralmodells ist dessen generische Beschaffenheit, wodurch Kombinationsm├Âglichkeiten mit anderen Methoden der Entwicklung gegeben sind. Aus diesem Grund wird das Spiralmodell auch als Modell zweiter Ordnung tituliert.

Der Ursprung des Modells geht auf das Jahr 1986 zur├╝ck, als das Spiralmodell von Barry W. Boehm in einem seiner Aufs├Ątze Beachtung fand. Zu dieser Zeit wurde das Wasserfallmodell mitsamt seinen inh├Ąrenten Nachteilen immer wieder kritisch diskutiert. Ein wesentliches Merkmal des Spiralmodells im Unterschied zum Wasserfallmodell und auch zu “Code and Fix” ist, dass es sich bei dem Spiralmodell um ein risikogetriebenes Verfahren handelt. Mit anderen Worten geht es hier immer wieder darum, Risiken zu identifizieren und zu l├Âsen – und dies innerhalb unterschiedlicher Produktzyklen sowie nach Festlegung der Bedingungen und Ziele. Fokussiert wird beim Spiralmodell auf Faktoren, die f├╝r das Projekt bzw. die Software eine Unsicherheit bedeuten. Die Annahme ist demzufolge, dass eine kosteng├╝nstige Reduktion der Risiken bzw. deren Kontrolle einen erfolgreichen Verlauf des Projektes deutlich beg├╝nstigen. Vorliegende Ans├Ątze, wie die Risiken reduziert und eliminiert werden k├Ânnen, gibt es mehrere, wie zum Beispiel: Simulationen, Interviews mit Anwendern, Prototypen und Benchmarktests. Das gesamte Verfahren kann je nach Risikotyp auch revidiert und auf andere Weise strukturiert werden, wobei das Intervenieren des Managements in jeder der Zyklen m├Âglich ist. Es k├Ânnen demnach auch alternative Ans├Ątze der Entwicklung ├╝bernommen werden.

Funktionalit├Ąt des Spiralmodells

Wie bereits beschrieben geht es bei dem Spiralmodell um das immer wiederkehrende Durchlaufen von Zyklen, die auch als Quadranten bezeichnet werden. Bei den Zyklen, die meist mehrmals durchlaufen werden, handelt es sich um die folgenden vier Quadranten:

  • Zielfestlegung, Beschreibung der Rahmenbedingungen, Identifikation von Alternativen
  • Evaluierung der Alternativen, Risikoerkennung sowie Einordnung und Reduzierung der Risiken (beispielsweise mit Analysen, Prototyping, Simulationen)
  • Anfertigung und Pr├╝fung eines Zwischenprodukts
  • Planung des n├Ąchsten Quadranten zur Fortsetzung des Projekts

Das Modell ist risikogetrieben und in diesem Zusammenhang sind die wichtigsten Faktoren des Modells die Risikoanalyse sowie die Risikobewertung. Es gilt, jedes das Projekt bedrohende Risiko bereits zu einem sehr fr├╝hen Zeitpunkt zu identifizieren. Inwieweit das Projekt voranschreitet, h├Ąngt sodann insbesondere davon ab, wie die spezifischen Risiken verhindert und eliminiert werden. Das Projekt ist in dieser Weise erst dann als erfolgreich zu bezeichnen, wenn keine Risiken mehr feststellbar sind. Das Durchlaufen der Zyklen bzw. Quadranten ist mit der Zielsetzung verbunden, ein kontinuierlich besser werdendes Produkt zu produzieren, wobei die Software bzw. Applikation eine kontinuierliche Verfeinerung erf├Ąhrt. Wichtig ist, dass das Spiralmodell zwar inkrementell beschaffen ist, aber nicht wirklich iterativ. Iterationen kommen nur dann vor, wenn das Projekt durch Konflikte oder Risiken bedroht wird. In einem solchen Fall hat das Produkt einen Zyklus erneut zu durchlaufen, was wiederum als Iteration zu deklarieren ist.

Das Spiralmodell: Vorteile und Nachteile

Mit dem Einsatz des risikogetriebenen Spiralmodells sind spezifische Vorteile und Nachteile verbunden. Das Einsatzfeld des Modells ist meist bei gro├čen Projekten mit bestehenden Risiken zu finden. Hinsichtlich der Vor- und Nachteile ist zu bedenken:

Pro
  • Das Spiralmodell findet besonders in neuartigen technischen Umgebungen Anwendung, da hier ein besonderes Risiko gegeben ist. F├╝r Entwickler und Auftraggeber ist es essenziell, stets Kontrolle ├╝ber das Budget zu haben, da die Risiken monet├Ąre Effekte haben.
  • Mit dem Ansatz der Zyklen k├Ânnen Konflikte vermieden werden. Es werden hiermit vor allem Konflikte zwischen dem Design einer Software sowie den Anforderungen angesprochen, die an die Software gestellt werden. Die Anforderungen k├Ânnen in diesem Kontext stets ├╝berpr├╝ft und im Bedarfsfall auch ver├Ąndert werden.
  • In fr├╝hen Phasen eines Projektes kann Feedback von Auftraggebern, Entwicklern und Anwendern eingeholt werden.
Contra
  • Es kann durchaus zu einem Einschleichen von Fehlern im Gesamtprozess, sowie zu konzeptionellen M├Ąngeln hinsichtlich des Endproduktes kommen. Diesbez├╝glich ist h├Ąufiger festzustellen, dass Prototypen in das Produktivsystem gelangen, obgleich innerhalb der Entwicklungs- und Testphase die Software umfassend getestet wird - so etwa mit einem Acceptance-, Unit- und Integration-Test.
  • Es ist ein Risiko von Schleifen (engl.: Loops) an Stellen vorhanden, an denen Entscheidungen zu den nachfolgenden Quadranten getroffen werden m├╝ssen. In einem solchen Fall , kann das Projekt l├Ąnger andauern, insbesondere wenn die Entscheidungen in eine falsche Richtung gehen. Deshalb ist es essenziell, dass Alternativen mitsamt einer Evaluierung im Prozess gegeben sind.
  • Ein Management das die Quadranten bzw. Zyklen stets konrolliert, sodass es auf Risiken schnell eingegangen werden kann, ist unumg├Ąnglich. Quintessenz ist, dass Projekte mit einer solchen komplexen Beschaffenheit einer fundierten Dokumentation bed├╝rfen, die alle Ver├Ąnderungen aufgreift.

Fazit: das Spiralmodell und die Programmierung

Das gegens├Ątzliche Wasserfallmodell stellt ein sequentielles Modell dar, bei dem eine Anordnung mit aufeinanderfolgenden Phasen gegeben ist. Das Spiralmodell hingegen baut auf Spiralen auf, mit denen der Lebenszyklus einer Software charakterisiert wird. Diese Spiralen m├╝ssen durchlaufen werden, um letztendlich und ohne Risiken zu einem fertigen Endprodukt zu gelangen. Wegen dieser Beschaffenheit ├Ąhnelt das Spiralmodell in einem h├Âheren Ma├če dem Prototyping als dies bei den klassischen Modellen gegeben ist. Kommt das Modell zur Anwendung, sollte darauf Acht gegeben werden, dass seine Vorteile fokussiert und die Nachteile soweit wie m├Âglich vermieden werden. Weil das Spiralmodell sehr stark auf die Risikominimierung und -vermeidung ausgerichtet ist, kann es vor allem f├╝r Entscheider eine gro├če Rolle spielen. Denn es konzentriert sich damit sehr intensiv auf finanzielle Aspekte. Mit dem Spiralmodell k├Ânnen auch gr├Â├čere Projekte umgesetzt werden – mitsamt den wirtschaftlichen Effekten, die diese Projekte ausmachen. Dies ist der Fall, da beim Spiralmodell h├Ąufig Kundengespr├Ąche, Machbarkeitsstudien und stringente Analysen ein wichtiger Bestandteil sind. Grunds├Ątzlich kann hinsichtlich der Programmierung konstatiert werden, dass agile Methoden vor allem dann gefragt sind, wenn ein hohes Ma├č an Flexibilit├Ąt notwendig ist. Dann k├Ânnen auch agile Methoden eine gute Wahl sein – wie etwa Extreme Programming, Scrum oder DevOps.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte